Bonjour,
Je suis tout débutant en VBA je rencontre donc des problèmes de raisonnement en termes de codage pour les rapports que je souhaite générer.
A partir de mes rapports de forage, puisque c’est ce dont il s’agit, je souhaite remplir un tableau. Rien de très compliqué donc…
Mais je ne sais pas comment faire le code (la boucle) qui : lorsqu’elle est déclenchée rempli :
- la dernière ligne vide du tableau
- cela en fonction de l’ordre des onglets, et jusqu’au dernier de mes onglets rapports (stop boucle).
Et j’ai un problème pour ma condition de case cochée ou non. Il ne prend pas la condition je ne sais pas pourquoi, j’ai essayé avec 10 syntaxes différentes, avec true avec l’enregistreur de macro avec ci avec ca… Je veux simplement faire « si case cochée, alors ta-ta-ta » ca ne me semble pourtant pas si compliqué?
(Sur le web je n'ai trouvé que du "si ta-ta-ta, alors coche la case")
Voila ou j'en suis, c'est-à-dire pas très avancé, ma variable i n'est pas correctement utilisée, il faudrait l'utilisée pour le nombre d'onglets je me trompe? Bref je ne m'attends pas à ce que vous me pondiez un résultat mais que vous me donniez des pistes.
- Sheets("2-6A") est l'un de mes nombreux onglets rapportsSub rapport()
For i = 9 To 20 'ou 1000 peu importe
With Sheets("Rapport global")
.Range("A" & i) = Sheets("2-6A").Range("Y7")
.Range("B" & i) = Sheets("2-6A").Range("Q2")
.Range("C" & i) = Sheets("2-6A").Range("X2")
'........................................
'........................................
'....et toutes les autres cellules à remplir
End With
Next
If Sheets("2-6A").Shapes.Range(Array("Check Box 3")).Value = xlOn Then 'Ce code me pose problème avec la condition de la case cochée ou non
Sheets("Rapport global").Range("E" & i) = Sheets("2-6A").Range("W11")
End If
'Je sais qu'il est possible d'aller chercher la dernière ligne avec un code similaire à
'celui ci, mais je ne sais pas comment l'intégrer la haut :
'Dim derligne As Integer
'derligne = Range("A" & Rows.Count).End(xlUp).Row
'.Range("A" & i+derlign) ?
End Sub
- Sheets("Rapport global") est l'onglet qui contient le tableau que je veux remplir avec les onglets rapports
Merci d'avance!
Partager