VBA problème de programation
Résolu
Bonjour,
Voila je dispose d'un tableaux de plusieur ligne est au bout de chaque ligne j'ai une case a cocher faisant reference a la cellule de gauche case en Q1 vrai faux en R1.
Je voudrait une macro qui m'ouvre une nouvel feuille et me copie toute les lignes avec une case cocher dans cette feuille dans l'ordre de la feuille de départ.
J'ai tester plusieurs choses et la j'avoue je sèche ^^
Merci d'avance
Voila je dispose d'un tableaux de plusieur ligne est au bout de chaque ligne j'ai une case a cocher faisant reference a la cellule de gauche case en Q1 vrai faux en R1.
Je voudrait une macro qui m'ouvre une nouvel feuille et me copie toute les lignes avec une case cocher dans cette feuille dans l'ordre de la feuille de départ.
J'ai tester plusieurs choses et la j'avoue je sèche ^^
Merci d'avance
Configuration: Windows XP / Internet Explorer 6.0
4 réponses
-
ModérateurBonjour,
Essaie quelque chose comme cela :Sub recap_vrai() Dim derniereligne As Integer, i As Integer Sheets.Add With Sheets("Nom_de_ta_feuille_contenant_les_données") derniereligne = .Range("A65536").End(xlUp).Row For i = 2 To derniereligne If .Cells(i, 18).Value = "VRAI" Then .Rows(i).Copy Range("A65536").End(xlUp).Offset(1, 0).Row End If Next End With End Sub -
J'ai essayer mais malheuresement cela ne fonctionne pas.
jvais essayer d'être plus précis. Le tableau va de A6 à O61 Les cas a cocher de Q6 à Q61 les formats de contrôle des cases à cocher de R6 à R61
La feuille avec ce tableau ce nomme "Feuille de Saisie"
Voilà si sa peut aider-
ModérateurVoici le code corrigé et adapté à ta situation
Sub recap_vrai()
Dim derniereligne As Integer, i As Integer, derlig As Integer
Sheets.Add
With Sheets("Feuille de saisie")
derniereligne = .Range("R65536").End(xlUp).Row
For i = 6 To 61
If .Range("R" & i) = True Then
derlig = Range("R65536").End(xlUp).Offset(1, 0).Row
.Range(.Cells(i, 1), .Cells(i, 18)).Copy Range("A" & derlig)
End If
Next
End With
End Sub -
@pijakuIl me met le méssage d'erreur suivant :
Erreur d'execution '9' L'indice n'apartient pas a la selection et quand je fait débogage il me surligne la ligne suivante "With Sheets("Feuille de saisie")"
Voilà et merci encore pour ton aide ^^ -
-
-
J'ai résolue le probleme il y avait un espace qui ce balader dans le nom de ma feuille. donc j'ai plus de Bug mais quand je fait la manip il m'ouvre bien une nouvelle feuille mais elle est vide .
-
ModérateurPeux tu placer ici (grâce à https://www.cjoint.com/ ou http://www.cijoint.fr/ ) une copie de ton classeur (version excel <2007) sans données confidentielles, la macro fonctionnant bien chez moi...
-
-
Je n'ai pas excel 2007
-
ModérateurPeux tu placer ici (grâce à https://www.cjoint.com/ ou http://www.cijoint.fr/ ) une copie de ton classeur
-
@pijakuhttp://www.cijoint.fr/cjlink.php?file=cj201003/cijQWbB9ME.xls
voila encore merci pour ton implication -
-
@pijakuHeuuu ... bon oki je sort bon ba oui en effet c'est bon j'ai juste quelque petit réglage je croit que la macro n'aime pas les cellules fusionées comme R4 ou R12 il me prend qu'une ligne mais bon c'est pas bien méchant
En tout cas merci bcp pour ton aide ^^
Sa me rend un grand service ^^ -
-