Macro créer un tableau et le renomer

jo123 -  
 jo123 -
Bonjour à tous,

Voilà j'ai créée une macro servant à créer un tableau en le renommant avec un code que je copie colle, par ex, code Z34, je copie Z34, et je renomme mon tableau en le copiant à la place de 12 dans Tableau12 (numéro de tableau donné par excel).
Le seul problème est que quand je veux créer un deuxième tableau la macro ne marche plus ...
Hé oui elle m'a créer le tableau : Tableau13 que la macro ne peut pas renommer car elle cherche le Tableau12...

Quelqu'un aurait-il une solution s'il vous plaît?

Merci d'avance!!!!

3 réponses

  1. melanie1324 Messages postés 1561 Statut Membre 156
     
    Pour t'aider, il nous faudrait ton code
    0
    1. jo123
       
      Salut Mélanie,

      Voici mon code.
      Insérer deux lignes
      créer un tableau
      Renommer le tableau

      Merci pour ton aide!

      Sub Macro4()
      '
      ' Macro4 Macro
      '

      '
      Rows("17:17").Select
      Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
      Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
      Range("C17:N17").Select
      ActiveSheet.ListObjects.Add(xlSrcRange, Range("$C$17:$N$17"), , xlNo).Name = _
      "Tableau11"
      Range("Tableau11#All").Select
      ActiveSheet.ListObjects("Tableau11").TableStyle = "TableStyleMedium6"
      Range("D4").Select
      ActiveCell.FormulaR1C1 = "T09"
      Range("Tableau11#All").Select
      ActiveSheet.ListObjects("Tableau11").Name = "TableauT09"
      Rows("17:17").Select
      Selection.EntireRow.Hidden = True
      Range("B15").Select
      End Sub
      0
    2. jo123
       
      Le problème est que la macro marche une fois mais après elle cherche le tableau 11 alors qu'elle a créé le 12
      0
  2. melanie1324 Messages postés 1561 Statut Membre 156
     
    bonjour,
    c'est tout a fait noramal parce que tableau11 est en dur.
    Si tu veux que la macro fonctionne, crées une feuille s'intitulant : Liste tableau
    en A1 : tableau1
    en A2 : tableau2 ....

    ensuite, modifies ta macro tel quel :

    Sub Macro4()
    '
    ' Macro4 Macro
    '

    '
    i=1
    do while sheets("Liste tableau").cells(i,1) <>""
    i=i+1
    loop
    tableau = sheets("Liste tableau").cells(i-1,1)
    Rows("17:17").Select
    Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
    Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
    Range("C17:N17").Select
    selection.name =Tableau
    ActiveSheet.ListObjects(Tableau).TableStyle = "TableStyleMedium6"
    Range("D4").Select
    ActiveCell.FormulaR1C1 = "T09"
    Range("ableau).Select
    ActiveSheet.ListObjects(Tableau).Name = "TableauT09"
    Rows("17:17").Select
    Selection.EntireRow.Hidden = True
    Range("B15").Select
    End Sub
    0
    1. jo123
       
      Merci pour ta réponse!

      Maintenant excel me met une "erreur d'éxecution 9", l'indice n'appartient pas à la sélection ...
      Sais-tu de quoi s'agit-il?
      Merci!!
      0
    2. jo123
       
      .... et il me surligne en jaune la ligne ou il y a "Do While"
      0
    3. jo123
       
      rectification il me surligne cette ligne :
      ActiveSheet.ListObjects("Tableau").TableStyle = "TableStyleMedium6"
      0
    4. melanie1324 Messages postés 1561 Statut Membre 156
       
      ca fait partie de ton code initial, je ne sais pas ce que ca fait!!
      0
    5. jo123
       
      en fait c'est pour créer un style de tableau, c'est le seul moyen que j'ai pour créer un tableau et lui donner un nom
      0
  3. jo123
     
    en fait c'est pour créer un style de tableau, c'est le seul moyen que j'ai trouvée pour créer un tableau et lui donner un nom
    0