Portée variable vba excel
RésoluRV71 Messages postés 653 Date d'inscription Statut Membre Dernière intervention - 12 sept. 2024 à 14:00
- Portée variable vba excel
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Déplacer colonne excel - Guide
- Si et excel - Guide
- Excel compter cellule couleur sans vba - Guide
8 réponses
j'ai déclaré du coup dans le module du userform, d'ailleur je ne sais pas pourquoi j'ai voulu déclarer en glogal, question d'habitude.
Mais là j'ai soit de la peau de soce soit faut que j'arrête, mais j'ai un problème dans le code de mon userForm
-> le code user form sur un bouton, avec 2 listes
Public Sub btn_creer_fichier_Click() 'On met dans une variable le nom sans l'extension nom_fichier = Split(ThisWorkbook.Name, ".")(0) 'on vérifie que les 2 listes ont été choisies If IsNull(list_mois) Or IsNull(list_annee) Or Val(list_annee) = 0 Then 's'il manque un choix on avertit et on sort MsgBox "choisir un mois ET une année" Exit Sub End If ' si on est là on peut procèder à la création du nouveau fichier 'On récupère le dossier courrant repertoire = CurDir 'on cacatene le tout Dim fichier As String fichier = repertoire & "\" & nom_fichier & list_annee & list_mois & ".xlsm" MsgBox ("le nom du fichier à comparer est : " & fichier) 'là je vois bien le chemin complet et le fichier avec extension xlsm If Dir(fichier) <> "" Then MsgBox "Le fichier '" & fichier & "' existe" Else MsgBox "Le fichier n'a pas été trouvé" End If
A chaque fois j'ai le msgbox "le fichier n'a pas été trouvé"
pourtant je peux certifier que le fichier "Sxxxxxxx20241.xlsm" (avec le répertoire dans le msgbox) existe dans le répertoire courant.
Je pense que je passe à coté d'un détail mais je sèche...
Merci
voici le code entier qui est dans un bouton d'un user form
Le fichier que je selectionne via les 2 listes et bien retourné par la msgbox (chemin et extension) et existe dans le répertoire.
Ca m'échappe...
Public Sub btn_creer_fichier_Click() 'On met dans une variable le nom sans l'extension nom_fichier = Split(ThisWorkbook.Name, ".")(0) 'on vérifie que les 2 listes ont été choisies If IsNull(list_mois) Or IsNull(list_annee) Or Val(list_annee) = 0 Then 's'il manque un choix on avertit et on sort MsgBox "choisir un mois ET une année" Exit Sub End If ' si on est là on peut procèder à la création du nouveau fichier 'On récupère le dossier courrant repertoire = CurDir 'on cacatene le tout Dim fichier As String fichier = repertoire & "\" & nom_fichier & list_annee & list_mois & ".xlsm" MsgBox ("le nom du fichier à comparer est : " & fichier) ' là j'ai la msgb qui me semble OK, voir plus bas If Dir(fichier) <> "" Then MsgBox "Le fichier '" & fichier & "' existe" Else MsgBox "Le fichier n'a pas été trouvé" End If End Sub
Voici le msgbox de la ligne
MsgBox ("le nom du fichier à comparer est : " & fichier)
Sincèrement je ne vois pas
Merci
Voici une capture du fichier qui n'est pas détecté dans l'explorateur, meme dossier que le fichier excel
ce forum est vraiment merdique, je ne peux pas mettre une autre image
voici un lien cjoint
https://www.cjoint.com/c/NIls2L85o36
Serieux entre les commentaires et les réponses, cetains en plusieurs pasges, faudrait que Jeff se réveille, c'est impossible ce truc.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionRe-,
Je pense avoir répondu à la question initiale...
(et n'ai aucune envie de prolonger sur ta pelote de fils, sur ton sujet parent)
Bon courage
Mon dernier msgbox
MsgBox ("le nom du fichier à comparer est : " & fichier) If Dir(fichier) <> "" Then MsgBox "Le fichier '" & fichier & "' existe" Else MsgBox "Le fichier n'a pas été trouvé" End If
m'affiche bien le chemin et le fichier donc j'imagine que cela fonctionne à ce niveau
bonjour,
au lieu de curdir, utilise:
ThisWorkbook.Path
"je passe à coté d'un détail"
"existe dans le répertoire courant"
"meme dossier que le fichier excel"
Et tu évites soigneusement d'indiquer le nom de ce répertoire.
Le nom finit par apparaitre dans les images que tu partages.
Apparement, tu les partages sans les regarder.
Regarde bien les "détails" des images partagées le 11 sept. 2024 à 20:43 et le 11 sept. 2024 à 20:56.