Bonjour,

Je galère vachement pour écrire une procédure qui, en fonction du nombre de colonnes, copie une partie du contenu de chaque cellule dans un nouvel onglet :

Mon code actuel est le suivant (mais la fonction Range() est assez rigide, et la fonction Cells() ne semble pas convenir) :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
Dim Pos, Ligne, Colonne As Integer
'Ligne et Colonne sont déjà définis
For j = 2 To Colonne
     For i = 9 To Ligne
          'Doit récupérer la position de " of " dans une cellule contenant des rapports style "333 of 999"          Pos = InStr(Worksheets("Dashboard").Cells(j + 4, i), " of ")
          'Dans ce cas précis, extrait les 3 premiers caractères de la cellule          Range("B" & i - 7) = Left(Worksheets("Dashboard").Range("F" & i), Pos)
     Next
Next
Si le nombre de colonnes était toujours le même, j'entrerais un code différent, mais je voudrais pouvoir me décaler d'une colonne à l'autre de manière dynamique.

Merci d'avance pour votre aide,
Phil....