Enregistrement (nom fichier = nom onglet)

Bonjour,

J'utilise le code ci-dessous pour mettre en forme un tableau (une extraction d'un logiciel comptable).
Après l'excitation, le nom du classeur est le p0000000.xlsx

Ce classeur contient plusieurs onglets.
Lorsque j'enregistre le classeur dans mon répertoire (disque Z dans ce cas), je dois lui donner un certain nom et ce nom doit être le même que celui du premier onglet du fichier.

Ex: Le premier onglet du classeur est intitulé "Honoraires Durand".
Lorsque j'enregistre le classeur, la boîte de dialogue s'ouvre et le "Nom du fichier: " est p00000.xlsx.
Est-il possible qu'à la place de "p00000.xlsx", la boite de dialogue affiche automatiquement le nom du premier onglet à savoir "Honoraires Durand.xlsx" ?
Je n'aurais qu'a cliquer sur modifier au lieu de devoir changer son nom à la main.

Je vous remercie d'avance pour votre aide.

Sub mise_en_page_cabinets()

Dim bFileSaveAs As Boolean

Sheets(1).Select
Sheets(1).Copy
Columns("D:I").EntireColumn.Delete
Columns("E:I").EntireColumn.Delete

Range("A4:G5").AutoFilter
Range("A4:G5").Select
With Selection.Interior
        .Color = 65535
End With

ChDrive "Z"            
ChDir "Z:\HONORAIRES\HONORAIRES A PAYER\CABINETS DIVERS\INT DIVERS CAB"

'Sheets(1).Range("A" & Rows.Count).End(xlUp).EntireRow.Activate
Sheets(1).Range("A" & Rows.Count).End(xlUp).Activate

bFileSaveAs = Application.Dialogs(xlDialogSaveAs).Show
If Not bFileSaveAs Then MsgBox "User cancelled", vbCritical

End Sub

bonjour,

essaie ceci (non testé)

bFileSaveAs = Application.Dialogs(xlDialogSaveAs).Show(activeworkbook.sheets(1).name & ".xlsx")

Bonjour

Essayez comme ceci :

Sub mise_en_page_cabinets()
Dim Fichier As String, Chemin As String

With Sheets(1)
    Fichier = ThisWorkbook.Sheets(1).Name
    .Copy
    .Columns("D:I").EntireColumn.Delete
    .Columns("E:I").EntireColumn.Delete
    With .Range("A4:G5")
        .AutoFilter
        .Interior.Color = 65535
    End With
End With

Chemin = "Z:\HONORAIRES\HONORAIRES A PAYER\CABINETS DIVERS\INT DIVERS CAB\"

With ActiveWorkbook 'avec ce nouveau classeur
    .SaveAs Filename:=Chemin & Fichier & ".xlsx" 'enregistrer le fichier sous le chemin
    .Close 'Fermeture du nouveau fichier
End With

End Sub

Cordialement

Edit : Salut H2SO4... déso je n'avais pas vu ton post...

Un immense merci pour cette rapidité messieurs !

@h2so4 : ça marche très bien !

@Dan : Ca m'enregistre bien le fichier mail il desormais toujours le nom de "Feuile1" et non pas l'onglet du classeur.

C'est possible qu'il m'enregistre le fichier directement sans le boite de dialogue ?
Au lieu de faire un show, qu'il l'enregistre sans rien montrer.

C'est possible qu'il m'enregistre le fichier directement sans le boite de dialogue ?

C'est ce que fait le code

Ca m'enregistre bien le fichier mail il desormais toujours le nom de "Feuile1" et non pas l'onglet du classeur.

C'est que votre feuille en première position du fichier est nommée feuille1.

C'est que votre feuille en première position du fichier est nommée feuille1.

Non pas du tout. C'est pour ça que je ne comprends pas.
Une fois cette code lancé, j'ai bien la création d'un nouveau fichier "Feuil1".

Ca viendrait pas du fait que tout mon code VBA (le votre et les autres que j'ai) est stocké dans un fichier a part(PERSONAL.XLSB) ?
Du coup quand je lance le code il enregistre bien le fichier mais lui donne le nom de la feuille du classeur PERSONAL.XLSB.

Ca viendrait pas du fait que tout mon code VBA (le votre et les autres que j'ai) est stocké dans un fichier a part(PERSONAL.XLSB) ?

Du coup quand je lance le code il enregistre bien le fichier mais lui donne le nom de la feuille du classeur PERSONAL.XLSB.

Ah ben oui, si vous ne le dites pas ... Le code doit être placé dans la fichier qui possède l'onglet à copier dans le nouveau fichier. ou alors on doit connaitre le nom du fichier Source.

Pourquoi un fichier Personnal.xlsb ??

Possible de voir votre fichier ? (sans données confidentielles)

Edit : sinon changez déjà cette ligne -->

Fichier = ThisWorkbook.Sheets(1).Name

par

Fichier = .Name
Rechercher des sujets similaires à "enregistrement nom fichier onglet"