Salut
Ton code devrait pourtant fonctionner, comment as-tu déclaré ta variable m? Et quelle valeur lui as-tu attribué?
Tu peux essayer le code suivant
1 2 3 4 5 6 7
| Sub test()
Dim m As Integer
m = 3
Range(Cells(4, m), Cells(17, m)).Select
End Sub |
Ou quelques choses comme ça pour simplifier un peu l'écriture (tout dépend comment tu détermines le nombre de lignes qui doivent être prises en compte.
For each cellule in Cells(4,m).resize(13)
La méthode resize te permet de modifier, en nombre de ligne et de colonne, la plage que tu veux pointer.
Sinon deux choses:
- En premier lieu, il est préférable de citer la feuille sur laquelle tu travailles Feuil1.Cells(...). Tu peux utiliser le codeName de la feuille pour se faire

- Si tes données sont dans un tableau, essaie d'utiliser les tableaux structurés, il est ensuite possible d'y faire référence dans ton code VBA, ce qui simplifie souvent la vie, notamment par rapport au nombre de lignes à prendre en compte
++
Qwaz
Partager