Code VBA simple...

Résolu
Mart -  
 Mart -
Bonjour,

Quelqu'un peut me dire pourquoi cette formule ne marche pas ?
Dim i As Byte
Dim j As Byte
Dim k As Byte
Dim l As Byte

For i = 12 To 16
        For k = 14 To 18
            Cells(3, i).Value = Worksheets(k).Name
Next
Next

For l = 5 To 9
        For j = 9 To 13
            Cells(3, l).Value = Worksheets(j).Name
Next
Next
    
End Sub


J'obtiens le même nom d'onglet pour toutes les cellules soit le dernier onglet et l'onglet 9. Alors qu'en réalité j'aimerais avoir le nom des onglets dans les cellules (3, i) et (3, l)...

Merci beaucoup,

1 réponse

  1. Morgothal Messages postés 1350 Statut Membre 184
     
    Bonjour,
    C'est parce que la cellule ne change pas alors que tu boucles sur les 4 onglets, du coup tu écrases à chaque fois la précédente valeur.

    Ce code fonctionne :
    Sub onglet()
    Dim i As Integer
          
    For i = 1 To 4
        Cells(3, i + 11).Value = Worksheets(i + 12).Name
        Cells(3, i + 4).Value = Worksheets(i + 8).Name
    Next
          
    End Sub 
    A+

    -------------------
    Cordialement,
    Clément
    0
    1. Mart
       
      Exactement, merci beaucoup!!

      :)
      0