Créer un répertoire

Bonjour à tous

Je cherche a améliorer mon fichier excel, pour l'instant j'ai un bouton qui permet de créer un pdf de ma feuille et donne au PDF le nom de la cellule A1.

Maintenant je voudrais quand je clique sur le bouton :

1 - il ouvre une boite de dialogue pour me demander le répertoire principale

2 - Vérifie si le répertoire existe déjà avant de le créé, si il existe alors crée uniquement le PDF

3 - puis me crée un sous-répertoire avec le no dans la cellule A2

4 - Crée le pdf avec le nom de A1 qu'il place dans le répertoire crée juste avant

voici le code qui me permet de créé le PDF

Private Sub CommandButton1_Click()
 Dim chemin As String, NomFichier As String

  NomFichier = Range("A1").Value & "-" & "ENTETE" & ".pdf"

  With Application.FileDialog(msoFileDialogFolderPicker)
    If .Show = -1 Then    ' Clic sur Ok
     chemin = .SelectedItems(1)
    Else
      ' Clic sur Annuler
     Exit Sub
    End If
  End With

  ENTETE_FT.ExportAsFixedFormat Type:=xlTypePDF, Filename:=chemin & "\" & NomFichier, _
                                          Quality:=xlQualityStandard, IncludeDocProperties:=True, _
                                          IgnorePrintAreas:=False, OpenAfterPublish:=True

End Sub

Merci d'avance et bon week-end à tous

Bonjour,

Testes ce code pour voir :

Private Sub CommandButton1_Click()

    Dim SousDossier As String
    Dim chemin As String
    Dim NomFichier As String

    NomFichier = Range("A1").Value & "-" & "ENTETE" & ".pdf"

    With Application.FileDialog(msoFileDialogFolderPicker)
        If .Show = -1 Then    ' Clic sur Ok
            chemin = .SelectedItems(1)
        Else
        ' Clic sur Annuler
            Exit Sub
        End If
    End With

    SousDossier = chemin & "\" & Range("A2").Value

    If Dir(SousDossier, vbDirectory) = "" Then MkDir SousDossier

  ENTETE_FT.ExportAsFixedFormat Type:=xlTypePDF, Filename:=SousDossier & "\" & NomFichier, _
                                          Quality:=xlQualityStandard, IncludeDocProperties:=True, _
                                          IgnorePrintAreas:=False, OpenAfterPublish:=True

End Sub

Bonjour Theze

Un super grand merci c'est tip top je que je cherchais.

Bonne journée

Content de t'avoir aidé

Re-bonjour

un autre idée me trotte,

mes valeurs A1 et A2 sont générée via un rechercheV si maintenant j'utilise un userform avec dans celui-ci un listbox pour afficher mes données est-il possible de faire une sélection multiple dans la listbox et suivant la sélection sortir un pdf pour chaque sélection et leur répertoire associé.

Merci d'avance

Re,

Un truc dans le genre peut être ?

Je n'ai absolument rien testé :

Private Sub UserForm_Initialize()

    With ListBox1

        .ColumnCount = 2
        .MultiSelect = fmMultiSelectMulti

        'pour le test, les noms des fichiers sont dans la colonne A et les chemins en colonne B
        .RowSource = Range("A1:B10").Address

    End With

End Sub

Private Sub CommandButton1_Click()

    Dim SousDossier As String
    Dim chemin As String
    Dim NomFichier As String
    Dim I As Integer

    With Application.FileDialog(msoFileDialogFolderPicker)
        If .Show = -1 Then    ' Clic sur Ok
            chemin = .SelectedItems(1)
        Else
        ' Clic sur Annuler
            Exit Sub
        End If
    End With

    For I = 0 To ListBox1.ListCount - 1

        If ListBox1.Selected(I) = True Then

            'la 1ère colonne de la ListBox contient les noms des fichiers (sans extansion)
            NomFichier = ListBox1.List(I) & "-" & "ENTETE" & ".pdf"

            'la 2ème colonne contient les chemins
            SousDossier = chemin & "\" & ListBox1.Column(1, I)
            If Dir(SousDossier, vbDirectory) = "" Then MkDir SousDossier

            ENTETE_FT.ExportAsFixedFormat xlTypePDF, SousDossier & "\" & NomFichier, xlQualityStandard, rue, False, True

        End If

    Next I

End Sub

Bonsoir Theze

c'est super, je n'ai plus qu'a l'adapter a mon fichier.

Merci

bonne soirée

Bonjour Theze

J'ai essayé ton fichier qui fonctionne.

Mais je rencontre un soucis, il fonctionne si les données sont dans le tableau.

pour mon cas, j'utilise une 2ème feuille pour affiche mes choix avec un rechercheV et la ça ne fonctionne pas.

aurais-tu une idée.

Merci

bonne journée

Bonjour,

Postes un classeur que je puisse voir comment il est construit et donne des explications précises !

Bonsoir Theze

J'ai parlé trop vite

tout marche nickel

Encore merci

Bonne soirée

Dans ce cas, parfait

Rechercher des sujets similaires à "creer repertoire"