sythaxe emplacement sauvegarde

Darnel

XLDnaute Impliqué
Bonjour

J'essaye par macro de créer une copie sans liaison d'un onglet uniquement (que les valeurs et le format), et je veux définir l'emplacement de cette copie comme suit :

voilà ce que j'ai fait comme macro, mais en rouge ce que je n'arrive pas à ecrire :
Code:
Sub Macro1()
    Dim Nouveaufichier As String
    Dim Nomuser As String
    Nouveaufichier = Range("B5").Value
    Nomuser = Application.UserName
    Sheets("Fichesynthèse").Select
    Sheets("Fichesynthèse").Copy
    ActiveSheet.Shapes("Button 6").Delete
    ActiveSheet.Shapes("Button 8").Delete
    ActiveSheet.Shapes("Button 4").Select
    ActiveSheet.Shapes("Button 4").Delete
    ActiveSheet.Shapes("Button 2").Delete
    ActiveSheet.Shapes("Button 5").Delete
    ActiveSheet.Shapes("Button 9").Delete
    ActiveSheet.Shapes("Button 1").Delete
    ActiveSheet.Shapes("Button 3").Delete
    Range("A1:H55").Select
    Selection.Copy
    Range("A1:H1").Select
    Selection.PasteSpecial Paste:=xlPasteValuesAndNumberFormats
    ChDir "D:\Documents and Settings\[COLOR=red]Nomuser[/COLOR]\Desktop\[COLOR=red]Nouveaufichier[/COLOR].xls", FileFormat:= _
        xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
        , CreateBackup:=False
    ActiveWorkbook.RunAutoMacros Which:=xlAutoClose
    Nouveaufichier.Workbook.Close
    Windows("Fiche de synthèse V3.0.xls").Activate
    Range("B2").Select
End Sub

si vous pouviez 'aider sur la manière dont je doit proceder pour qu'il me l'enregistre automatiquement comme indiqué dans macro ( qui ne fonctionne pas lol ) ce serait sympa
Merci à vous.
 

Darnel

XLDnaute Impliqué
Re : sythaxe emplacement sauvegarde

Re

euh, petit correctif de ma macro, car j'y ai mis des bouts de codes qui ne valent rien ...
:p

voilà ou j'en suis après petite corrections
J'arrive a enregistrer le fichier sous le nom voulu, mais pas à l'emplacement voulu.
Donc un ptit coup de main serai pas de refu
Code:
Sub Macro1()
    Dim Nouveaufichier As String
    Dim utilisateur As String
    Nouveaufichier = Range("B5").Value
    utilisateur = Application.UserName
    ActiveSheet.Unprotect
    Sheets("Fichesynthèse").Select
    Sheets("Fichesynthèse").Copy
    ActiveSheet.Shapes("Button 6").Delete
    ActiveSheet.Shapes("Button 8").Delete
    ActiveSheet.Shapes("Button 4").Select
    ActiveSheet.Shapes("Button 4").Delete
    ActiveSheet.Shapes("Button 2").Delete
    ActiveSheet.Shapes("Button 5").Delete
    ActiveSheet.Shapes("Button 9").Delete
    ActiveSheet.Shapes("Button 1").Delete
    ActiveSheet.Shapes("Button 3").Delete
    ActiveSheet.Shapes("Button 10").Delete
    Range("A1:H55").Select
    Selection.Copy
    Range("A1:H1").Select
    Selection.PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
        xlNone, SkipBlanks:=False, Transpose:=False
    Application.CutCopyMode = False
    ChDir "D:\Documents and Settings\[COLOR=red]utilisateur[/COLOR]\Desktop"
    ActiveWorkbook.SaveAs Nouveaufichier
    ActiveWorkbook.RunAutoMacros Which:=xlAutoClose
    ActiveWorkbook.Close
    Windows("Fiche de synthèse V3.1.xls").Activate
    Range("B2").Select
End Sub

EDITION : J'ai retravailler la macro pour qu'elle soit plus sucseptible de fonctionner.
Mon probleme reste celui du chemin dans lequel je veux enregistrer le fichier.
Le fichier de base est sur un serveur, et je veux que l'enregistrement se fasse sur le bureau de l'utilisateur .
Merci de votre aide
 
Dernière édition:

Darnel

XLDnaute Impliqué
Re : sythaxe emplacement sauvegarde

Bonjour à tous

bon à ce que je vois, mon probleme ne semble pas passionner les foules...
Mais c'est pas grave,
poour les quelques uns qui ont lus le fil et veulent une reponse, j'ai fini par trouver la solution à mon problème, et pour une fois c'est une vrai solution et pas un truc à l'arrache


voilà mon code final :

Code:
Sub Macro1()
    Dim Nouveaufichier As String
    Dim utilisateur As String
    Nouveaufichier = Range("B5").Value
    utilisateur = Application.UserName
    ActiveSheet.Unprotect
    Sheets("Fichesynthèse").Select
    Sheets("Fichesynthèse").Copy
    ActiveSheet.Shapes("Button 6").Delete
    ActiveSheet.Shapes("Button 8").Delete
    ActiveSheet.Shapes("Button 4").Select
    ActiveSheet.Shapes("Button 4").Delete
    ActiveSheet.Shapes("Button 2").Delete
    ActiveSheet.Shapes("Button 5").Delete
    ActiveSheet.Shapes("Button 9").Delete
    ActiveSheet.Shapes("Button 1").Delete
    ActiveSheet.Shapes("Button 3").Delete
    ActiveSheet.Shapes("Button 10").Delete
    Range("A1:H55").Select
    Selection.Copy
    Range("A1:H1").Select
    Selection.PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
        xlNone, SkipBlanks:=False, Transpose:=False
    Application.CutCopyMode = False
    Range("A1").Select
    ChDir "D:\Documents and Settings\[COLOR=red]" & utilisateur & "[/COLOR]\Desktop"
    ActiveWorkbook.SaveAs Nouveaufichier
    ActiveWorkbook.RunAutoMacros Which:=xlAutoClose
    ActiveWorkbook.Close
    Windows("Fiche de synthèse V3.1.xls").Activate
    Range("B2").Select
    ActiveSheet.Protect
    MsgBox "la fiche " & Nouveaufichier & " est enregistrée sur votre bureau"
End Sub

Donc voila, en traduction, le fichier est créer et enregistrer sur le bureau de l'utilisateur, quelque soit le nom d'utilisateur.

merci à ceux qui ont essayer, mais aussi au forum en générale, y a quelque mois, j'aurai jamais reussi à trouver ca tout seul et maintenant j'y arrive.
tout n'est pas parfait, mais je fais de plus en plus de trucs tout seul.
bonne journée
 

Discussions similaires

Statistiques des forums

Discussions
312 514
Messages
2 089 220
Membres
104 065
dernier inscrit
il matador