Astuce: Les autres langues sont Google-Traduction. Vous pouvez visiter le English version de ce lien.
Se connecter
x
or
x
x
S'enregistrer
x

or

Comment créer plusieurs feuilles de calcul à partir d'une liste de valeurs de cellule?

Existe-t-il des méthodes simples ou rapides pour créer plusieurs feuilles de calcul en fonction d'une liste de valeurs de cellules dans Excel? Dans cet article, je vais parler de quelques astuces pour résoudre ce problème.

Créer plusieurs feuilles de calcul à partir d'une liste de valeurs de cellule avec du code VBA

Créer plusieurs feuilles de calcul à partir d'une liste de valeurs de cellule avec Kutools for Excel


flèche bleue droite bulle Créer plusieurs feuilles de calcul à partir d'une liste de valeurs de cellule avec du code VBA

Pour créer rapidement plusieurs nouvelles feuilles de calcul nommées avec une liste de valeurs de cellule, le code VBA suivant peut vous aider.

1. Maintenez le ALT + F11 clés pour ouvrir le Microsoft Visual Basic pour applications fenêtre.

2. Cliquez insérer > Moduleet collez le code suivant dans le Module Fenêtre.

Code VBA: créez plusieurs feuilles de calcul à partir d'une liste de cellules:

Sub AddSheets()
'Updateby Extendoffice 20161215
    Dim xRg As Excel.Range
    Dim wSh As Excel.Worksheet
    Dim wBk As Excel.Workbook
    Set wSh = ActiveSheet
    Set wBk = ActiveWorkbook
    Application.ScreenUpdating = False
    For Each xRg In wSh.Range("A1:A7")
        With wBk
            .Sheets.Add after:=.Sheets(.Sheets.Count)
            On Error Resume Next
            ActiveSheet.Name = xRg.Value
            If Err.Number = 1004 Then
              Debug.Print xRg.Value & " already used as a sheet name"
            End If
            On Error GoTo 0
        End With
    Next xRg
    Application.ScreenUpdating = True
End Sub

Note: Dans le code ci-dessus, A1: A7 est la plage de cellules sur laquelle vous souhaitez créer des feuilles, veuillez la modifier selon vos besoins.

3. Puis appuyez F5 clé pour exécuter ce code, et les nouvelles feuilles ont été créées après toutes les feuilles dans le classeur en cours, voir capture d'écran:

doc créer plusieurs feuilles 1


flèche bleue droite bulle Créer plusieurs feuilles de calcul à partir d'une liste de valeurs de cellule avec Kutools for Excel

Si vous n'êtes pas qualifié avec le code ci-dessus, voici un outil pratiqueKutools for Excel, Avec son Créer des feuilles de travail de séquence fonction, les feuilles de calcul seront créées en fonction des valeurs de cellule dans un nouveau classeur.

Kutools for Excel : avec plus de 300 compléments Excel pratiques, libre d'essayer sans limitation dans 60 jours.

Après l'installation de Kutools for Excel, faites comme ceci:

1. Cliquez Entreprise > Feuille > Créer des feuilles de travail de séquence, voir capture d'écran:

doc créer plusieurs feuilles 2

2. Dans le Créer des feuilles de travail de séquence boite de dialogue:

(1.) Sélectionnez une feuille de calcul sur laquelle vous souhaitez créer des feuilles de calcul de séquence;

(2.) Puis sélectionnez Données dans une gamme d'option de la Noms de feuille basés sur zone de liste, et cliquez sur doc créer plusieurs feuilles 4 bouton pour sélectionner les valeurs de cellule que vous souhaitez utiliser.

doc créer plusieurs feuilles 3

3. Et puis cliquez Ok bouton, les feuilles de calcul ont été créées avec les noms des valeurs de cellule dans un nouveau classeur, voir capture d'écran:

doc créer plusieurs feuilles 5

Cliquez sur Télécharger et tester gratuitement Kutools for Excel Now!



Outils de productivité recommandés

Office Tab

étoile d'or1 Apportez des onglets pratiques à Excel et à d'autres logiciels Office, tout comme Chrome, Firefox et Internet Explorer.

Kutools for Excel

étoile d'or1 Incroyable! Augmentez votre productivité dans les minutes 5. Ne nécessite pas de compétences particulières, économisez deux heures par jour!

étoile d'or1 300 Nouvelles fonctionnalités pour Excel, rendent Excel facile et puissant:

  • Fusionner des cellules / lignes / colonnes sans perdre de données.
  • Combiner et consolider plusieurs feuilles et classeurs.
  • Comparez les gammes, copiez plusieurs gammes, convertissez le texte en date, l'unité et la conversion de devise.
  • Compter par couleurs, sous-totaux de recherche, tri avancé et super filtre,
  • Plus Sélectionner / Insérer / Supprimer / Texte / Format / Lier / Commenter / Classeurs / Feuilles de calcul Outils ...

Capture d'écran de Kutools pour Excel

Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Craig · 2 months ago
    This works great, how could you incorporate a template into each created tab? i.e. copy and paste from a template into each newly created sheet
  • To post as a guest, your comment is unpublished.
    Nathan · 1 years ago
    First time using VBA code in Excel. Worked perfectly on the first try. Thanks for posting this.
  • To post as a guest, your comment is unpublished.
    amin · 1 years ago
    and it creates a lot of sheets even if the list is empty... what if i want to create sheets based on cells that have value?
  • To post as a guest, your comment is unpublished.
    GUEST · 1 years ago
    Better version. This will delete created sheet if exist another sheet with the same name. And added inputbox to avoid from manual code modification to select range.


    Sub AddSheetsFromCells()

    Dim xRg As Range, wBk As Workbook
    Set wBk = ActiveWorkbook

    On Error GoTo Quit
    Set dbRange = Application.InputBox("Range: ", "Select Range", _
    Application.Selection.Address, Type:=8)

    Application.ScreenUpdating = False
    Application.DisplayAlerts = False

    For Each xRg In dbRange
    With wBk
    .Sheets.Add After:=.Sheets(.Sheets.Count)
    On Error Resume Next
    ActiveSheet.Name = xRg.Value
    If Err.Number = 1004 Then
    Debug.Print Chr(34) & xRg.Value & Chr(34) & " already used as a sheet name"
    .ActiveSheet.Delete
    End If
    On Error GoTo 0
    End With
    Next xRg

    Application.ScreenUpdating = True
    Application.DisplayAlerts = True
    Quit:

    End Sub
    • To post as a guest, your comment is unpublished.
      Craig Dickeson · 2 months ago
      What if i wanted each newly created sheet to have a template pasted into it from a template sheet? The template would have formatting and formulas only

      Thanks
    • To post as a guest, your comment is unpublished.
      Richard Pigford · 7 months ago
      This appears to work great for what I am attempting to do with one exception... It is creating blank worksheets... I want to create a copy of an existing worksheet for each row in another worksheet. Is there anyway to do that?