Bonjour,
Je découvre tout juste le merveilleux monde d'excel, de ses macros et du VBA.
Alors voilà, j'ai un travail à effectuer sur lequel je bloque :
Je dispose d'un énorme tableau dans une première feuille de calcul appelée "Tableau de Suivi", dont la première colonne correspond à un numéro de station.
Je souhaiterais pouvoir copier, dans une nouvelle feuille appelée "0 - Remarques Générales", toutes les lignes de ce tableau qui ont le numéro 0 (sachant qu'elles sont triées par numéro de station justement).
Pour ce faire, j'ai cherché un peu comment utiliser une fonction de recherche, afin de trouver la première ligne dont la première colonne contient "0".
Par la suite, je souhaiterais copier la première cellule de cette ligne, puis la seconde, puis la troisième etc.. jusqu'à la dernière colonne du tableau (soit ici la 11ème).
Après ça, je souhaite vérifier si la ligne d'en dessous contient aussi "0" en première colonne, ou si on est passé à la station 1. Si on contient toujours 0, on recommence et ainsi de suite.
Voilà le code que j'ai pour l'instant :
Malheureusement, il ne fonctionne pas, et voici le message d'erreur qu'Excel m'affiche :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 Private Sub MiseAJour_0_Click() Dim L As Integer Dim C As Integer Dim sel As range Set sel = Worksheets("Tableau de Suivi").Columns(1).Find(What:="0", Lookat:=xlWhole, SearchDirection:=xlNext) If sel Is Nothing Then MsgBox "Hoho.. Impossible de copier (plage non trouvée)" Else: MsgBox "OK !" L = sel.Row C = 1 While Worksheets("Tableau de Suivi").Cells(L, C) = "0" While C <= "11" Worksheets("0 - Remarques Générales").Cells(L, C).Copy Worksheets("Tableau de Suivi").Cells(L, C) C = C + 1 Wend L = L + 1 Wend End Sub
"Erreur d'execution '91' : Variable objet ou variable de bloc With non définie" et le débogage me surligne la ligne "L = sel.Row"
A partir de là, je ne comprends pas d'où vient le problème, alors si une âme charitable pouvait me donner un petit coup de pouce, il aurait ma reconnaissance éternelle ^^
Sur la photo vous pouvez voir une partie du tableau que j'aimerais copier (on ne voit pas les 0 dans la première colonne mais ils y sont bien ^^)
Merci d'avance !
EDIT : J'ai remarqué que j'avais inversé la plage de cellules que je souhaite copier et la destination. Ceci corrigé, j'arrive à copier la première ligne mais pas la suivante, et lorsque j'utilise le débogage pas à pas, il fait bien 11 fois la première boucle while (celle imbriquée), mais il ne fait qu'une fois la seconde (celle avec l'incrémentation de L)
Partager