Supprimer une ligne avec cellule de choix
Résolu
medbo
Messages postés
570
Statut
Membre
-
medbo Messages postés 570 Statut Membre -
medbo Messages postés 570 Statut Membre -
Bonjour,
je viens de me lancer en VBA Excel, et je ne trouve pas de solution à mon problème
je voudrai après avoir choisi une entrée dans un "combobox" supprimer la ligne auquelle appartient la cellule contenant le choix effectué dans "combobox"
Merci pour votre aide
--
c'est en s'entre-aidons que nous réussirons
je viens de me lancer en VBA Excel, et je ne trouve pas de solution à mon problème
je voudrai après avoir choisi une entrée dans un "combobox" supprimer la ligne auquelle appartient la cellule contenant le choix effectué dans "combobox"
Merci pour votre aide
--
c'est en s'entre-aidons que nous réussirons
Configuration: Linux Firefox 2.0.0.13
11 réponses
-
Salut,
essaie ceci (merci michel_m!!!)
valeur = ComboBox1
lig = Columns(1).Find(valeur, Range("A65536")).Row 'si ta valeur est en colonne A si en B : Columns(2) si en C : Columns(3) etc...
Rows(lig).Select
Selection.Delete Shift:=xlUp
-
la valeur choisi dans le combobox doit être rechérché dans la feuil Entrées puis supprimer la ligne correspondante, voici le code que j'ai rentré :
Private Sub UserForm_Click()
valeur = ComboBox1
lig = Worksheets("Entrées").Columns(1).Find(valeur, Range("A65536")).Row
Rows(lig).Select
Selection.Delete Shift:=xlUp
End Sub
dites moi où est l'erreur -
Salut,
Il n'y a pas d'erreur apparente.
Dans qu'elle colonne se trouve la valeur à rechercher?
Si c'est colonne A : lig = Worksheets("Entrées").Columns(1).Find(valeur, Range("A65536")).Row
colonne B : lig = Worksheets("Entrées").Columns(2).Find(valeur, Range("A65536")).Row
colonne C : lig = Worksheets("Entrées").Columns(3).Find(valeur, Range("A65536")).Row
et coetera... -
Bonjour
pat'quoi pijaku ;o)
si colonne B
lig = Worksheets("Entrées").Columns(2).Find(valeur, Range("B65536")).Row
comme on est pas sûrs que la feuille active est la feuille "entées", pour ma part j'aurais écrit
With Worksheets("Entrées")
.rows(.Columns(2).Find(valeur, .Range("B65536")).Row ).delete
end with
ne pas oublier les points
mais je n'ai pas testé
-
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Fectivement ai oublié modifier Range ..... Range("B65536")).Row au lieu de Range("A65536")).Row
comme quoi 2 têtes valent mieux.... -
Ça me supprime la ligne voulue mais aussi toutes les lignes se trouvant après elle et ce n'est pas ce que je veux. je veux celement supprimer la ligne voulu et garder toute les autres lignes, celle en dessu et celle en dessou
-
vachement poli ce post 8 pour ceux qui essayent de t'aider
alors, dem... toi tout seul
---
Je suis désolé pour cette réponse, j'avoue que ce n'est pas gentille de ma part de ne pas dire aumoins merci, mais c'est que je me tire les cheuveux avec VBA, je ne suis pas un programmeur et j'éssaie d'apprendre et ça m'enerve un peux car j'en ai besoin et ça urge. Voila pourquoi.
ce n'est pas mon intention d'être impoli.
encore désolé et merci beaucoup pour tout ceux qui m'ont aider et ceux qui essaient de m'aider.
-
-
Salut,
Le code (donné par michel_m) : lig = Worksheets("Entrées").Columns(2).Find(valeur, Range("B65536")).Row te renvoie le numéro de la ligne ou figure la valeur recherchée. Ok?
Donc pour supprimer uniquement la ligne concerné, tu la sélectionnes :
row(lig).select (ou un truc dans le genre...)
et tu la supprime
selection.delete (ou un truc dans le genre...) -
bonjour,
directement
rows(lig).delete
(toujours éviter les select-selection inutiles, ralentisseurs et bouffeurs de mémoire...) -
exact.
Merci pour lui. -
Merci beaucoup, c'est exactement ce que je cherchais. c'est très gentille de votre part
encore désolé pour le post 8.