Quelqu’un peux t’il me dire se qui cloche dans mon code SVP

J

Jare

Guest
Bonjour à tous et toutes, à tout le forum,

Il y à un sousis dans le code si dessous quelqu'un peux t'il m'aider SVP ?

Sans quitter le classeur ou je me trouve et sans désactiver l’écran, je veux faire une recherche d’une valeur dans un autre classeur et sélectionner toute la ligne, pour pouvoir la supprimer.

Mon code:
ValeurChercher = Workbooks("Classeur2.xls").Sheets("Feuil1").Range("Test").Value

Workbooks("Classeur2").Sheet("Feuil1").Find(What:=(ValeurChercher), After:=ActiveCell, LookIn:=xlFormulas, LookAt:=xlWhole, SearchOrder _
:=xlByRows, SearchDirection:=xlNext, MatchCase:=False).EntireRow.Select

D'avance merci à tous.
Jare
 
C

Cathy

Guest
Salut Jare et le forum,

essaye :
ValeurCherchee = Workbooks("Classeur2.xls").Sheets("Feuil1").Range("Test").Value
Workbooks("Classeur2.xls").Worksheets("Feuil1").Range("A1").Select
Workbooks("Classeur2.xls").Worksheets("Feuil1").Cells.Find(What:=(ValeurChercher), After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlWhole, SearchOrder _
:=xlByRows, SearchDirection:=xlNext, MatchCase:=False).EntireRow.Select

Cathy
 
J

Jare

Guest
Merci Cathy
Oui mais non sa ne marche pas !!!!!
Ca plante à la 2ème ligne avec le msg suivant:

Erreur d'exécution 1004
la methode select de la classe range a échoué.

Mais merci encore.
Attente réponse si possible, merci d'avance.
 
J

Jare

Guest
Bonjour au forum
bonjour Cathy

Merci Cathy pour ton acharnement mais encore non, je ne peux pas désactivé l'écran et je t'explique pourquoi, j'ais dans mon classeur de dépard une macro évenementielle (Workbook_Activate et Workbook_Deactivate) et si l'on désactive l'écran (screenupdating) les macro évenementielle ne se désactive pas elles !!!.

Mais encore un grand merci A+.
Jare
 
J

Jare

Guest
Bonjour au forum
bonjour Cathy

Merci Cathy pour ton acharnement mais encore non, je ne peux pas désactivé l'écran et je t'explique pourquoi, j'ais dans mon classeur de dépard une macro évenementielle (Workbook_Activate et Workbook_Deactivate) et si l'on désactive l'écran (screenupdating) les macro évenementielle ne se désactive pas elles !!!.

Mais encore un grand merci A+.
Jare

(je ne sais pas pourquoi ma reponse n'est pas apparu au début donc c'est pour ca quelle y est deux fois !!!!!)
 
@

@+Thierry

Guest
Salut Jare, Re Cathy et le Forum

Je ne comprends pas trop ton code, car dès le départ tu as : "EntireRow.Select" ? alors que je croyais que :
1) tu veux supprimer la ligne
2) tu ne veux pas "désactiver" l'écran

De plus tu vas initialiser ta variable dans le même classeur "Classeur2.xls" où tu dois aller détruire cette ligne... Donc je ne vois pourquoi on se casse la tête à le faire depuis un autre workbook... Mais bon ceci dit voilà un exemple de syntax pour faire çà depuis un autre classeur sans qu'il ne se passe rien au niveau des changements de selection... donc pas de "désactivation" de ta feuille active....

Sub JareMacro()
ValeurCherchee = "TOTO" 'tu initialises comme tu veux

With Workbooks("Book2").Worksheets("Sheet1")
On Error Resume Next 'Si la valeur cherchée n'existe pas
.Cells.Find(What:=(ValeurCherchee)).EntireRow.Delete
End With
End Sub

(PS Si le classeur est déjà sauvé ajouter l'extension ".xls" ("Book2.xls")

Bon après midi
@+Thierry
 

Statistiques des forums

Discussions
314 083
Messages
2 105 558
Membres
109 387
dernier inscrit
Thaliemandarine