Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Reinitialiser la valeur d'une variable

2 réponses
Avatar
tictok
Grace a Pascal, j'ai pu ameliorer mon code. Mais maintenant, quelque chose
ne marche plus
Dans le code suivant, je voudrais que la valeur de CheminEtNom se
reinitialise au debut de la boucle For, c'est a dire qu'elle renvoie False
comme pour le cas i=1.
Car dans le cas i=2 , sachant que CheminEtNom a une valeur (grace a la
boucle Do dans le cas i=1), la boucle Do n'est pas faite !

For i = 1 To 2
Do Until CheminEtNom <> False
MsgBox Messages(i)
CheminEtNom = Application.GetOpenFilename
If VarType(CheminEtNom) = vbBoolean Then _
MsgBox ("Vous n'avez pas sélectionné de fichier ! Recommencez ...")
_
Else MsgBox ("Ouverture du fichier sélectionné : " & CheminEtNom)
Loop
Workbooks.Open (CheminEtNom)
Fichier = ActiveWorkbook.Name
Nom(i) = Fichier
ActiveWorkbook.SaveAs Filename:=(Fichier)
Next i

En gros, la boucle For me sauvegarde deux fois le meme fichier alors qu'elle
devrait sauvegarder une seule fois deux fichiers differents.
Je ne sais pas s'il existe un "Reinit Var" ou dans le meme genre.

2 réponses

Avatar
Pascal Engelmajer
Salut,
For i = 1 To 2
CheminEtNom= False
Do Until CheminEtNom <> False
MsgBox Messages(i)
CheminEtNom = Application.GetOpenFilename
If VarType(CheminEtNom) = vbBoolean Then _
MsgBox ("Vous n'avez pas sélectionné de fichier ! Recommencez ...")
_
Else MsgBox ("Ouverture du fichier sélectionné : " & CheminEtNom)
Loop
Workbooks.Open (CheminEtNom)
Fichier = ActiveWorkbook.Name
Nom(i) = Fichier
ActiveWorkbook.SaveAs Filename:=(Fichier)
Next i


--
Amicalement.
Pascal
"il n'y a pas de vent favorable pour celui qui ne sait pas ou il va."
Sénèque.
http://www.ilyapa.net/excel
http://www.ilyapa.net/baseExcel
"tictok" a écrit dans le message de news:
#
Grace a Pascal, j'ai pu ameliorer mon code. Mais maintenant, quelque chose
ne marche plus
Dans le code suivant, je voudrais que la valeur de CheminEtNom se
reinitialise au debut de la boucle For, c'est a dire qu'elle renvoie False
comme pour le cas i=1.
Car dans le cas i=2 , sachant que CheminEtNom a une valeur (grace a la
boucle Do dans le cas i=1), la boucle Do n'est pas faite !

For i = 1 To 2
Do Until CheminEtNom <> False
MsgBox Messages(i)
CheminEtNom = Application.GetOpenFilename
If VarType(CheminEtNom) = vbBoolean Then _
MsgBox ("Vous n'avez pas sélectionné de fichier ! Recommencez
...")

_
Else MsgBox ("Ouverture du fichier sélectionné : " & CheminEtNom)
Loop
Workbooks.Open (CheminEtNom)
Fichier = ActiveWorkbook.Name
Nom(i) = Fichier
ActiveWorkbook.SaveAs Filename:=(Fichier)
Next i

En gros, la boucle For me sauvegarde deux fois le meme fichier alors
qu'elle

devrait sauvegarder une seule fois deux fichiers differents.
Je ne sais pas s'il existe un "Reinit Var" ou dans le meme genre.




Avatar
tictok
Ah le soir je n'ai plus beaucoup de neurones :oD.
Merci pour cette reponse logique, elementaire, ... c'est simple !

"Pascal Engelmajer" escreveu na mensagem
news:
Salut,
For i = 1 To 2
CheminEtNom= False
Do Until CheminEtNom <> False
MsgBox Messages(i)
CheminEtNom = Application.GetOpenFilename
If VarType(CheminEtNom) = vbBoolean Then _
MsgBox ("Vous n'avez pas sélectionné de fichier ! Recommencez
...")

_
Else MsgBox ("Ouverture du fichier sélectionné : " & CheminEtNom)
Loop
Workbooks.Open (CheminEtNom)
Fichier = ActiveWorkbook.Name
Nom(i) = Fichier
ActiveWorkbook.SaveAs Filename:=(Fichier)
Next i


--
Amicalement.
Pascal
"il n'y a pas de vent favorable pour celui qui ne sait pas ou il va."
Sénèque.
http://www.ilyapa.net/excel
http://www.ilyapa.net/baseExcel
"tictok" a écrit dans le message de news:
#
Grace a Pascal, j'ai pu ameliorer mon code. Mais maintenant, quelque
chose


ne marche plus
Dans le code suivant, je voudrais que la valeur de CheminEtNom se
reinitialise au debut de la boucle For, c'est a dire qu'elle renvoie
False


comme pour le cas i=1.
Car dans le cas i=2 , sachant que CheminEtNom a une valeur (grace a la
boucle Do dans le cas i=1), la boucle Do n'est pas faite !

For i = 1 To 2
Do Until CheminEtNom <> False
MsgBox Messages(i)
CheminEtNom = Application.GetOpenFilename
If VarType(CheminEtNom) = vbBoolean Then _
MsgBox ("Vous n'avez pas sélectionné de fichier ! Recommencez
...")

_
Else MsgBox ("Ouverture du fichier sélectionné : " &
CheminEtNom)


Loop
Workbooks.Open (CheminEtNom)
Fichier = ActiveWorkbook.Name
Nom(i) = Fichier
ActiveWorkbook.SaveAs Filename:=(Fichier)
Next i

En gros, la boucle For me sauvegarde deux fois le meme fichier alors
qu'elle

devrait sauvegarder une seule fois deux fichiers differents.
Je ne sais pas s'il existe un "Reinit Var" ou dans le meme genre.