Changement critère liste déroulante

Bonjour,

J'ai un onglet avec une liste déroulante permettant de choisir 90 sites. J'ai une macro pour dupliquer cet onglet dans un autre fichier en faisant des copier coller et en renommant le fichier avec le nom du site choisit.

Est-il possible de faire en sorte que la macro génère à la suite les 90 fichiers et donc de lui dire dans la liste déroulante tu prends tel site, tu dupliques tu créés le fichier, tu le fermes, tu retourne sur celui de base et tu prends le site suivant, tu dupliques, .... ?

Ma méthode pour le moment est de définir ma variable du site en dur dans la macro donc je dois dupliquer 90 fois mon code en changeant a chaque fois le nom du site!!

J'ai bien sur la liste de mes sites sur un onglet à part.

Merci beaucoup.

bonjour,

a priori c'est possible. mets-nous un fichier exemple pour pouvoir t'aider plus concrètement.

Mon fichier est super lourd mais voici mon code écrémé:

Sub Région()

'

Dim Celluletrouvee As Range

Dim Mag As String

'

Mag = "THOLON"

NomFichier = "Frais Généraux 2018 - " & Mag

'

Sheets("Cdr").Range("B2") = Mag

Sheets("Cdr").Select

Sheets("Cdr").Copy

ActiveWorkbook.SaveAs Filename:="R:\Envoi\" & NomFichier

ActiveWorkbook.Save

ActiveSheet.Range("$b$2:$q$265").Select

Selection.Copy

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

ActiveSheet.Range("$s$6:$s$13").Select

Selection.Copy

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

ActiveSheet.Range("$w$6:$w$13").Select

Selection.Copy

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

ActiveSheet.Range("$s$270:$w$271").Select

Selection.ClearContents

ActiveWorkbook.Save

ActiveWorkbook.Close

Mag = "SEINE"

NomFichier = "Frais Généraux 2018 - " & Mag

End Sub

bonjour,

proposition de correction, que je n'ai pas pu tester

Sub Région()
'
    Dim Celluletrouvee As Range
    Dim Mag
    '
    For Each Mag In Sheets("feuil1").Range("A1:A100")    'mettre la plage dans laquelle se trouve la liste des mag
        NomFichier = "Frais Généraux 2018 - " & Mag.Value
        '
        Sheets("Cdr").Range("B2") = Mag.Value
        Sheets("Cdr").Copy
        ActiveWorkbook.SaveAs Filename:="R:\Envoi\" & NomFichier
        ActiveWorkbook.Save
        With ActiveSheet.Range("$b$2:$q$265")
            .PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
                                                                   :=False, Transpose:=False
        End With
        With ActiveSheet.Range("$s$6:$s$13")
            .Copy
            .PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
                                                                   :=False, Transpose:=False
        End With
        With ActiveSheet.Range("$w$6:$w$13")
            .Copy
            .PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
                                                                   :=False, Transpose:=False
        End With
        ActiveSheet.Range("$s$270:$w$271").ClearContents
        ActiveWorkbook.Save
        ActiveWorkbook.Close
    Next Mag
End Sub

ca marche, merci beaucoup!!!!

Rechercher des sujets similaires à "changement critere liste deroulante"