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

renommer mon classeur actif et l'archiver dans le répertoire ini ti

9 réponses
Avatar
jean-Paul
-- Bonjour à tous,

A la fin d' une macro qui effectue un récapitulatif général sur ma feuille
de travail, j'ai résolu de renommer mon classeur actif et de l'archiver dans
le répertoire de travail initial ( en cours ) ( qui change à chaque fois )

Sheets("Bon").Select
num = [f7].Value
ActiveWorkbook.SaveAs Filename:="Bon n°" & num

Pb : ça a marché une fois et maintenant il n'archive pas dans le répertoire
de travail du fichier d'origine mais dans C/mesdocument

Comment faire pôur remédier à ce Pb.

merci d'avance pour vos réponses ...


jps

9 réponses

Avatar
FL
Bonjour,
fait un Chdir (ton chemin) avant ta ligne ActiveWorkbook.SaveAs
Filename:="Bon n°" & num
à+
FL

"jean-Paul" a écrit dans le message de
news:

-- Bonjour à tous,

A la fin d' une macro qui effectue un récapitulatif général sur ma feuille
de travail, j'ai résolu de renommer mon classeur actif et de l'archiver
dans
le répertoire de travail initial ( en cours ) ( qui change à chaque fois )

Sheets("Bon").Select
num = [f7].Value
ActiveWorkbook.SaveAs Filename:="Bon n°" & num

Pb : ça a marché une fois et maintenant il n'archive pas dans le
répertoire
de travail du fichier d'origine mais dans C/mesdocument

Comment faire pôur remédier à ce Pb.

merci d'avance pour vos réponses ...


jps


Avatar
FL
ChDir "C:TonRépertoireInitial"
Cordialement
FL
"FL" a écrit dans le message de news:
44ef05fa$0$27391$
Bonjour,
fait un Chdir (ton chemin) avant ta ligne ActiveWorkbook.SaveAs
Filename:="Bon n°" & num
à+
FL

"jean-Paul" a écrit dans le message
de news:

-- Bonjour à tous,

A la fin d' une macro qui effectue un récapitulatif général sur ma
feuille
de travail, j'ai résolu de renommer mon classeur actif et de l'archiver
dans
le répertoire de travail initial ( en cours ) ( qui change à chaque
fois )

Sheets("Bon").Select
num = [f7].Value
ActiveWorkbook.SaveAs Filename:="Bon n°" & num

Pb : ça a marché une fois et maintenant il n'archive pas dans le
répertoire
de travail du fichier d'origine mais dans C/mesdocument

Comment faire pôur remédier à ce Pb.

merci d'avance pour vos réponses ...


jps






Avatar
JLuc
ActiveWorkbook.SaveAs Filename:=Thisworkbook.Path & "Bon n°" & num

--
JLuc
Avatar
jean-Paul
Merci c'est exactement le code que j'espérait ! ça marche bien dans le
répertoire actif

Peux tu encore m'aider ? chaque fichier est un fichier mensuel, et au départ
je dois en créer 13 (12 + 1 si le mois est commencé à partir du modèle
configuré ( tarif catalogue fixe sur une année )
demande-d'achat-2006-01
demande-d'achat-2006-02
demande-d'achat-2006-03
etc...

Dans un premier temps, j'ai essayé cela, mais quelque chose doit m'échapper !!

For i = 1 To 13
Sheets("BON").Select
Range("F7").Select
ActiveCell.FormulaR1C1 = i
num = i
ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "demande-achat
2006" & num
Next i
End Sub

A moins qu'il existe un moyen pour extraire les treize mois suivants
incluant le mois en cours à partir de la date système ?

--
jps




ActiveWorkbook.SaveAs Filename:=Thisworkbook.Path & "Bon n°" & num

--
JLuc





Avatar
JLuc
jean-Paul avait soumis l'idée :
Merci c'est exactement le code que j'espérait ! ça marche bien dans le
répertoire actif

Peux tu encore m'aider ? chaque fichier est un fichier mensuel, et au départ
je dois en créer 13 (12 + 1 si le mois est commencé à partir du modèle
configuré ( tarif catalogue fixe sur une année )
demande-d'achat-2006-01
demande-d'achat-2006-02
demande-d'achat-2006-03
etc...

Dans un premier temps, j'ai essayé cela, mais quelque chose doit m'échapper
!!

For i = 1 To 13
Sheets("BON").Select
Range("F7").Select
ActiveCell.FormulaR1C1 = i
num = i
ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "demande-achat
2006" & num
Next i
End Sub

A moins qu'il existe un moyen pour extraire les treize mois suivants
incluant le mois en cours à partir de la date système ?


For i = Month(Now) To Month(Now) + 13
If i < Month(Now) And i < Month(Now) + 13 Then
annee = Year(Now)
Else
annee = Year(Now) + 1
End If
Sheets("BON").Range("F7") = i
ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & _
"demande-achat " & annee & "-" & Format(i,"00")
Next i
Ca devrait convenir, j'ai pas tester, dis nous ;-)

--
JLuc

Avatar
jean-Paul
Merci tout de meme mais ça ne marche pas, tout ce que j'ai c'est la cellule
E7 qui se met à la valeur 8 ( du mois en cours) aucune archive n'est créée..

j'ai essayé de simplifier ça ne marche pas non plus...

Il faudrait peut être trouver un format date qui inclu seulement le mois et
l'année
Par ailleurs il semble que la boucle for next n'a pas l'air de fonctionner
avec save ?--
jps
Avatar
JLuc
jean-Paul avait soumis l'idée :
Merci tout de meme mais ça ne marche pas, tout ce que j'ai c'est la cellule
E7 qui se met à la valeur 8 ( du mois en cours) aucune archive n'est créée..

j'ai essayé de simplifier ça ne marche pas non plus...

Il faudrait peut être trouver un format date qui inclu seulement le mois et
l'année
Par ailleurs il semble que la boucle for next n'a pas l'air de fonctionner
avec save ?--
jps


C'est vrai, comme j'avais pas tester, je m'etais rendu compte du
probleme. Je regarde ca ce soir et te tiens au courrant :/

--
JLuc

Avatar
jean-Paul
-- J’ai testé mois aussi de mon coté il semble que ce soit la fonction save
qui ne soit compatible avec le fait de changer la valeur d’une cellule à
chaque sauvegarde…..

Exemple :

ça ne marche pas queleque soit la position de Sheets("BON").Range("F7")

For num = 1 To 3
ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "Demande d'achat
n°2006-" & num
Sheets("BON").Range("F7") = num
Next num

End Sub


Par contre Ça ca marche


For num = 1 To 7

ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "Demande d'achat
n°2007-" & num
Next num

jps



C'est vrai, comme j'avais pas tester, je m'etais rendu compte du
probleme. Je regarde ca ce soir et te tiens au courrant :/

--
JLuc


Avatar
JLuc
*Bonjour jean-Paul*,
Ca y est, j'ai modifié la macro et tout marche comme tu le souhaite (du
moins, je pense :oÞ)
Par contre, pour ne pas perdre ton classeur d'origine, j'en crée à
chaque fois un nouveau et je ne garde que la feuille "BON". De cette
facon, seules les macros de la feuille seront intégrées au nouveau
classeur mais pas les macros des différents modules :

Sub test()
For i = Month(Now) To Month(Now) + 12
If i > 12 Then
annee = Year(Now) + 1
num = i - 12
Else
annee = Year(Now)
num = i
End If
Workbooks.Add
ThisWorkbook.Sheets("BON").Copy Before:¬tiveWorkbook.Sheets(1)

Application.DisplayAlerts = False
For x = 2 To Sheets.Count
Sheets(x).Delete
Next
Application.DisplayAlerts = False

ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & _
"demande-achat " & annee & "-" & Format(num, "00")
Sheets("BON").Range("F7") = num
ActiveWorkbook.Close True
Next i

End Sub

Dis nous si ca te convient ;-)

-- J’ai testé mois aussi de mon coté il semble que ce soit la fonction save
qui ne soit compatible avec le fait de changer la valeur d’une cellule à
chaque sauvegarde…..

Exemple :

ça ne marche pas queleque soit la position de Sheets("BON").Range("F7")

For num = 1 To 3
ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "Demande d'achat
n°2006-" & num
Sheets("BON").Range("F7") = num
Next num

End Sub


Par contre Ça ca marche


For num = 1 To 7

ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "Demande d'achat
n°2007-" & num
Next num

jps



C'est vrai, comme j'avais pas tester, je m'etais rendu compte du
probleme. Je regarde ca ce soir et te tiens au courrant :/

--
JLuc



--
____
( O | O )
--
_oooO_ JLuc _Oooo_

O-O