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

[Excelabo] - Astuce "Tester l'existence d'un répertoire et le cr ée

6 réponses
Avatar
chewi
Bonjour à tous,

Je ne sais pas si c'est moi qui n'arrive pas à adapter le code mais je crois
qu'il existe une erreur dans l'astuce citée dans le titre ci-dessus.

Citation de l'astuce:
"Je voudrais sauver par VBA un fichier dans un dossier. Mais j'aimerais
avant tester si le dossier dans lequel je voudrais enregistrer mon fichier
existe déjà. Si ce n'est pas le cas je voudrais créer ce dossier. Quelle
méthode employer ? "

Astuce:
Sub SaveInMyFolder()
Dim x As String, strPath As String
On Error Resume Next
strPath = "c:my documentsfinancial toolkit"
x = GetAttr(strPath) And 0
If Err <> 0 Then
MkDir strPath
End If

ActiveWorkbook.SaveAs FileName:=strPath & "" & ActiveWorkbook.Name
End Sub

Problème:
Chez moi, lorsque je remplace "c:my documentsfinancial toolkit" par mon
dossier à vérifier, lorsque j'exécute la macro, il me crée bien le dossier
s'il n'existe pas mais me sauve le fichier à côté du dossier et non dedans.
De plus, il renomme mon fichier avec le nom du dossier souhaité comme
"préfixe"

N'est-il pas plus judicieux de remplacer la dernière ligne par:

ActiveWorkbook.SaveAs strPath & "\" & ActiveWorkbook.Name

?

Cordialement,

Chewi

6 réponses

Avatar
lSteph
Bonjour,

A partit d'ici changer:

'....
MkDir strPath
End If
ChDir strPath
with ActiveWorkbook
.SaveAs FileName:= .Name
end with
End Sub

'Cordialement
'lSteph

On 24 avr, 11:38, chewi wrote:
Bonjour à tous,

Je ne sais pas si c'est moi qui n'arrive pas à adapter le code mais je crois
qu'il existe une erreur dans l'astuce citée dans le titre ci-dessus.

Citation de l'astuce:
"Je voudrais sauver par VBA un fichier dans un dossier. Mais j'aimerais
avant tester si le dossier dans lequel je voudrais enregistrer mon fichier
existe déjà. Si ce n'est pas le cas je voudrais créer ce dossier. Q uelle
méthode employer ? "

Astuce:
Sub SaveInMyFolder()
Dim x As String, strPath As String
On Error Resume Next
strPath = "c:my documentsfinancial toolkit"
x = GetAttr(strPath) And 0
If Err <> 0 Then
MkDir strPath
End If

ActiveWorkbook.SaveAs FileName:=strPath & "" & ActiveWorkbook.Name
End Sub

Problème:
Chez moi, lorsque je remplace "c:my documentsfinancial toolkit" par mon
dossier à vérifier, lorsque j'exécute la macro, il me crée bien l e dossier
s'il n'existe pas mais me sauve le fichier à côté du dossier et non dedans.
De plus, il renomme mon fichier avec le nom du dossier souhaité comme
"préfixe"

N'est-il pas plus judicieux de remplacer la dernière ligne par:

ActiveWorkbook.SaveAs strPath & "" & ActiveWorkbook.Name

?

Cordialement,

Chewi


Avatar
FFO
salut à toi
Tu peux et celà fonctionne
J'ai essayé

Bonjour à tous,

Je ne sais pas si c'est moi qui n'arrive pas à adapter le code mais je crois
qu'il existe une erreur dans l'astuce citée dans le titre ci-dessus.

Citation de l'astuce:
"Je voudrais sauver par VBA un fichier dans un dossier. Mais j'aimerais
avant tester si le dossier dans lequel je voudrais enregistrer mon fichier
existe déjà. Si ce n'est pas le cas je voudrais créer ce dossier. Quelle
méthode employer ? "

Astuce:
Sub SaveInMyFolder()
Dim x As String, strPath As String
On Error Resume Next
strPath = "c:my documentsfinancial toolkit"
x = GetAttr(strPath) And 0
If Err <> 0 Then
MkDir strPath
End If

ActiveWorkbook.SaveAs FileName:=strPath & "" & ActiveWorkbook.Name
End Sub

Problème:
Chez moi, lorsque je remplace "c:my documentsfinancial toolkit" par mon
dossier à vérifier, lorsque j'exécute la macro, il me crée bien le dossier
s'il n'existe pas mais me sauve le fichier à côté du dossier et non dedans.
De plus, il renomme mon fichier avec le nom du dossier souhaité comme
"préfixe"

N'est-il pas plus judicieux de remplacer la dernière ligne par:

ActiveWorkbook.SaveAs strPath & "" & ActiveWorkbook.Name

?

Cordialement,

Chewi


Avatar
Misange
bonsoir
comme dit par FFO: tu peux
Il y a eu sur excelabo il y a deux ou trois ans un pb qui a fait que des
ont disparu !
impossible de retrouver automatiquement où l'erreur s'est produite mais
lorsque ce genre de pb se prduit il est judicieux de tester ce point :-)
je corrigerai cette astuce (qui en plus a une superber fôte
d'aurthôgraffe dans le titre !)

Misange migrateuse
XlWiki : Participez à un travail collaboratif sur excel !
http://xlwiki.free.fr/wiki
http://www.excelabo.net

Bonjour à tous,

Je ne sais pas si c'est moi qui n'arrive pas à adapter le code mais je crois
qu'il existe une erreur dans l'astuce citée dans le titre ci-dessus.

Citation de l'astuce:
"Je voudrais sauver par VBA un fichier dans un dossier. Mais j'aimerais
avant tester si le dossier dans lequel je voudrais enregistrer mon fichier
existe déjà. Si ce n'est pas le cas je voudrais créer ce dossier. Quelle
méthode employer ? "

Astuce:
Sub SaveInMyFolder()
Dim x As String, strPath As String
On Error Resume Next
strPath = "c:my documentsfinancial toolkit"
x = GetAttr(strPath) And 0
If Err <> 0 Then
MkDir strPath
End If

ActiveWorkbook.SaveAs FileName:=strPath & "" & ActiveWorkbook.Name
End Sub

Problème:
Chez moi, lorsque je remplace "c:my documentsfinancial toolkit" par mon
dossier à vérifier, lorsque j'exécute la macro, il me crée bien le dossier
s'il n'existe pas mais me sauve le fichier à côté du dossier et non dedans.
De plus, il renomme mon fichier avec le nom du dossier souhaité comme
"préfixe"

N'est-il pas plus judicieux de remplacer la dernière ligne par:

ActiveWorkbook.SaveAs strPath & "" & ActiveWorkbook.Name

?

Cordialement,

Chewi


Avatar
LSteph
...
:-)
ce que je suggèrais "face au mystère"
(dans la mesure où je n'avais pas repèré une petite absence)
te place sur le répertoire
pour y enregistrer le fichier, cela dit
en rajoutant l'antislash manquant au strpath
cela doit effectivement fonctionner normalement.

lSteph

Bonjour,

A partit d'ici changer:

'....
MkDir strPath
End If
ChDir strPath
with ActiveWorkbook
.SaveAs FileName:= .Name
end with
End Sub

'Cordialement
'lSteph

On 24 avr, 11:38, chewi wrote:
Bonjour à tous,

Je ne sais pas si c'est moi qui n'arrive pas à adapter le code mais je crois
qu'il existe une erreur dans l'astuce citée dans le titre ci-dessus.

Citation de l'astuce:
"Je voudrais sauver par VBA un fichier dans un dossier. Mais j'aimerais
avant tester si le dossier dans lequel je voudrais enregistrer mon fichier
existe déjà. Si ce n'est pas le cas je voudrais créer ce dossier. Quelle
méthode employer ? "

Astuce:
Sub SaveInMyFolder()
Dim x As String, strPath As String
On Error Resume Next
strPath = "c:my documentsfinancial toolkit"
x = GetAttr(strPath) And 0
If Err <> 0 Then
MkDir strPath
End If

ActiveWorkbook.SaveAs FileName:=strPath & "" & ActiveWorkbook.Name
End Sub

Problème:
Chez moi, lorsque je remplace "c:my documentsfinancial toolkit" par mon
dossier à vérifier, lorsque j'exécute la macro, il me crée bien le dossier
s'il n'existe pas mais me sauve le fichier à côté du dossier et non dedans.
De plus, il renomme mon fichier avec le nom du dossier souhaité comme
"préfixe"

N'est-il pas plus judicieux de remplacer la dernière ligne par:

ActiveWorkbook.SaveAs strPath & "" & ActiveWorkbook.Name

?

Cordialement,

Chewi






Avatar
J
Bonjour Misange
les phlotes d'aurtrograffesb ne gênent pas ceux qui en ont peu et sont
stimulantes pour ceux qui en ont, leur épargnant un vieillissement trop rapide
(dont il devient impossible -hélas ?- d'accuser le tabac ;-).
C'est presque aussi efficace que de mâcher de la gomme, chez les personnes d'un
grand âge(communication personnelle du Dr Hiroshi Nakajima il y a qq années)
Amicalement
J@@

Misange wrote:
bonsoir
comme dit par FFO: tu peux
Il y a eu sur excelabo il y a deux ou trois ans un pb qui a fait que des
ont disparu !
impossible de retrouver automatiquement où l'erreur s'est produite mais
lorsque ce genre de pb se prduit il est judicieux de tester ce point :-)
je corrigerai cette astuce (qui en plus a une superber fôte
d'aurthôgraffe dans le titre !)

Misange migrateuse
XlWiki : Participez à un travail collaboratif sur excel !
http://xlwiki.free.fr/wiki
http://www.excelabo.net

Bonjour à tous,

Je ne sais pas si c'est moi qui n'arrive pas à adapter le code mais je
crois qu'il existe une erreur dans l'astuce citée dans le titre
ci-dessus.

Citation de l'astuce:
"Je voudrais sauver par VBA un fichier dans un dossier. Mais
j'aimerais avant tester si le dossier dans lequel je voudrais
enregistrer mon fichier existe déjà. Si ce n'est pas le cas je
voudrais créer ce dossier. Quelle méthode employer ? "

Astuce:
Sub SaveInMyFolder()
Dim x As String, strPath As String
On Error Resume Next
strPath = "c:my documentsfinancial toolkit"
x = GetAttr(strPath) And 0
If Err <> 0 Then
MkDir strPath
End If

ActiveWorkbook.SaveAs FileName:=strPath & "" & ActiveWorkbook.Name
End Sub

Problème:
Chez moi, lorsque je remplace "c:my documentsfinancial toolkit" par
mon dossier à vérifier, lorsque j'exécute la macro, il me crée bien le
dossier s'il n'existe pas mais me sauve le fichier à côté du dossier
et non dedans. De plus, il renomme mon fichier avec le nom du dossier
souhaité comme "préfixe"

N'est-il pas plus judicieux de remplacer la dernière ligne par:

ActiveWorkbook.SaveAs strPath & "" & ActiveWorkbook.Name

?

Cordialement,

Chewi




Avatar
Misange
;-)
fais gaffe ça donne de l'aérophagie !

Misange migrateuse
XlWiki : Participez à un travail collaboratif sur excel !
http://xlwiki.free.fr/wiki
http://www.excelabo.net

Bonjour Misange
les phlotes d'aurtrograffesb ne gênent pas ceux qui en ont peu et sont
stimulantes pour ceux qui en ont, leur épargnant un vieillissement trop
rapide (dont il devient impossible -hélas ?- d'accuser le tabac ;-).
C'est presque aussi efficace que de mâcher de la gomme, chez les
personnes d'un grand âge(communication personnelle du Dr Hiroshi
Nakajima il y a qq années)
Amicalement
J@@

Misange wrote:
bonsoir
comme dit par FFO: tu peux
Il y a eu sur excelabo il y a deux ou trois ans un pb qui a fait que
des ont disparu !
impossible de retrouver automatiquement où l'erreur s'est produite
mais lorsque ce genre de pb se prduit il est judicieux de tester ce
point :-)
je corrigerai cette astuce (qui en plus a une superber fôte
d'aurthôgraffe dans le titre !)

Misange migrateuse
XlWiki : Participez à un travail collaboratif sur excel !
http://xlwiki.free.fr/wiki
http://www.excelabo.net

Bonjour à tous,

Je ne sais pas si c'est moi qui n'arrive pas à adapter le code mais
je crois qu'il existe une erreur dans l'astuce citée dans le titre
ci-dessus.

Citation de l'astuce:
"Je voudrais sauver par VBA un fichier dans un dossier. Mais
j'aimerais avant tester si le dossier dans lequel je voudrais
enregistrer mon fichier existe déjà. Si ce n'est pas le cas je
voudrais créer ce dossier. Quelle méthode employer ? "

Astuce:
Sub SaveInMyFolder()
Dim x As String, strPath As String
On Error Resume Next
strPath = "c:my documentsfinancial toolkit"
x = GetAttr(strPath) And 0
If Err <> 0 Then
MkDir strPath
End If

ActiveWorkbook.SaveAs FileName:=strPath & "" & ActiveWorkbook.Name
End Sub

Problème:
Chez moi, lorsque je remplace "c:my documentsfinancial toolkit" par
mon dossier à vérifier, lorsque j'exécute la macro, il me crée bien
le dossier s'il n'existe pas mais me sauve le fichier à côté du
dossier et non dedans. De plus, il renomme mon fichier avec le nom du
dossier souhaité comme "préfixe"

N'est-il pas plus judicieux de remplacer la dernière ligne par:

ActiveWorkbook.SaveAs strPath & "" & ActiveWorkbook.Name

?

Cordialement,

Chewi