![]() |
|
Forum
|
|
|
#1 (permalink) |
|
Guest
Messages: n/a
|
Bonjour à toutes et à tous !!!
quelqu'un a pu m'aider a construire la formule que je désirai, dès que quelqu'un coche la case H4, il ne se passe rien et lorsque que celle ci reste vide, l'odinateur supprime la ligne dont l'intitulé dans la colonne A correspond à celui dans la cellule E4.(dans l'exemple Dupond) Cependant je voudrait que la ligne supprimée soit également supprimé dans les autres feuilles Et je n'ai pa la moindre idée par quel moyen arriver à mes fins!! Voici la formule : Private Sub CommandButton1_Click() If [H4] <> '' Then Exit Sub For ligne = 4 To [A65000].End(xlUp).Row If Cells(ligne, 1) = [G4] Then Rows(ligne).Delete Exit For End If Next End Sub Si par hasard vous pouvez m'aider!!! Merci beaucoup par avance [file name=test_20050711221013.zip size=2362]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/test_20050711221013.zip[/file] |
|
| ANNONCES | |||
|
|
|
|
#2 (permalink) | |
|
XLDnaute Barbatruc
Date d'inscription: février 2005
Localisation: Sète
Version Excel : Excel 2003 (PC)
Messages: 2 920
|
Bonsoir Anne Laure, bonsoir le forum,
J'ai adapté la macro à la pièce jointe mais aussi à la manière que j'ai d'écrire (Range('A1') au lieu de [A1]. Habitude quand tu nous tiens !...). Cela donne la macro ci-dessous. Dis-moi si ça te convient : Citation:
|
|
|
|
|
|
|
#3 (permalink) |
|
XLDnaute Impliqué
Date d'inscription: mars 2005
Localisation: Sermaise
Version Excel : Excel XP (PC)
Messages: 825
|
Bonjour Anne laure, Robert, le forum
une autre solution sans boucler sur les feuilles. Egalement, pour une suppression de ligne, mieux vaut partir de la fin. Si pour l'instant tu ne supprimes qu'une ligne, si tu le modifie pour en supprimer plusieurs, le code actuel ne fonctionnera pas bien. Le fait de supprimer une ligne modifie les références suivantes et, dans la boucle, la cellule immédiatement aprés est considérée comme déja testée. Dans le code fourni, la sélection est obligatoire pour que cela fonctionne. Cordialement, A+ Code:
Private Sub CommandButton1_Click()
Dim Sheet_en_cours As Worksheet
Set Sheet_en_cours = ActiveSheet
If Sheet_en_cours.Range('H4').Value <> '' Then Exit Sub
ThisWorkbook.Sheets.Select
For ligne = Sheet_en_cours.Range('A65000').End(xlUp).Row To 4
If Sheet_en_cours.Cells(ligne, 1) = Sheet_en_cours.Range('G4') Then
Rows(ligne & ':' & ligne).Select
Selection.Delete Shift:=xlUp
Exit For
End If
Next
Sheet_en_cours.Select
End Sub
__________________
![]() à la mi août, tous les chats sont roux... |
|
|
|
|
|
#4 (permalink) |
|
XLDnaute Occasionel
Date d'inscription: juillet 2005
Localisation: Rouen
Version Excel : Excel 2007 (PC)
Messages: 341
|
Bonjour à tous,
Un peu long mais avec des instructions simples, (à mon niveau = débutant) Sub Bouton1_QuandClic() Dim varsheets, var, var2 As Integer Dim c As Range var2 = 1 var = 0 For Each c In Sheets(1).Range('H1:H20000') If Sheets(1).Cells(var2 - var, 8) = '' Then var2 = var2 + 1 GoTo continuer: Else varsheets = 1 While varsheets <= Sheets.Count Sheets(varsheets).Select Rows(var2 - var).Delete Range('A1').Activate varsheets = varsheets + 1 Wend var2 = var2 + 1 var = var + 1 Sheets(1).Activate End If continuer: Next c If var = 0 Then MsgBox 'Aucune ligne à supprimer', vbExclamation, 'Avertissement' Else MsgBox 'Vous avez supprimé ' & var & ' ligne(s)', vbInformation, 'Bravo' End If End Sub A+ [file name=test_bis.zip size=9921]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/test_bis.zip[/file]
__________________
cordialement ----------------------------------------------------- "A cœur vaillant, rien d'impossible." Mais parfois... c'est plutôt fastidieux. |
|
|
|
|
|
#5 (permalink) |
|
XLDnaute Occasionel
Date d'inscription: juillet 2005
Localisation: Rouen
Version Excel : Excel 2007 (PC)
Messages: 341
|
re,
En voyant ce qui a déjà été proposé, je pense que les déclarations de variables de Roberts sont les plus judicieuses, c'est un peu moins 'torturé de l'esprit'. Ma solution approt les récapitulatifs en fin de travail. ZZR09
__________________
cordialement ----------------------------------------------------- "A cœur vaillant, rien d'impossible." Mais parfois... c'est plutôt fastidieux. |
|
|
|
| ANNONCES | |
![]() |
| Liens sociaux |
| Outils de la discussion | |
|
|