| ||||||||
Petit astucien | Bonjour, J'ai (encore) un problème de suppression de ligne. Je tape en C17 de la feuille DEPART un mot, et je voudrais que soient supprimées les lignes contenant ce mot dans la colonne A de la feuille RESULTAT. Sub SupprimeLigne() Sheets("DEPART").Select End Sub Je coince avec "Oper". La macro prend le mot Oper et pas ce que j'ai désigné en ligne 2. Je suis obligé de procéder comme cela, car j'utilise la cellule Oper dans des requêtes QMF. XP XLS 2003 Merci de votre aide | |||||||
Publicité | ||||||||
| ||||||||
Petit astucien | SUJET REPORTE DANS LA RUBRIQUE EXCEL | |||||||
![]() ![]() | Salut, Ça t'a pas crevé les yeux ! Si tu mets Oper entre guillemets, tu cherches le mot Oper et non le contenu d'une variable nommée Oper. Si la cellule est nommée Oper, ne réutilise pas ce nom ici. Souhaitable de déclarer une variable chaîne, par exemple: Dim cOper$, tu n'as plus qu'à remplacer Oper et "Oper" par cOper dans le reste du code. Si je puis encore me permettre 2 remarques: -Il et préférable de déclarer toutes les variables d'une procédure dans l'en-tête de la procédure (après Sub...) -La manie de sélectionner à tour de bras n'a pour effet que d'alourdir inutilement le code et la charge de VBA: si tu supprimes toutes les lignes contenant .Select et remplaces ActiveSheet par Sheets("RESULTAT"), ça fonctionnera tout aussi bien avec moins d'effort. Bonne journée. | |||||||
Petit astucien | Ferrand, Bien sûr que si ça me sautait aux yeux, mais je ne savais pas comment m'en dépatouiller En QMF, je code comme ceci: WHERE COPERAT = '" & Oper & "' " & _ mais là je coinçais. Concernant ta seconde remarque, passant d'une feuille à l'autre je ne vois pas comment me passer de .Select. Merci pour la leçon | |||||||
![]() ![]() | Re, Essaie, VBA s'en passe fort bien ! | |||||||
|
Les bons plans du moment PC Astuces | Tous les Bons Plans | ||||||||||||||||||
|