OVH Cloud OVH Cloud

Macro Rechercher pose PB si chiffre non Trouvé

22 réponses
Avatar
lograd
Bonjour,
j'ai une macro qui me permet d'effectuer une recherche sur la colonne
"A" de ma Feuille "CEU".
J' ai une erreur lorsque celle-ci ne trouve pas le chiffre demander, au
lieu de mettre : "Pas trouv=E9".
Si quelqu'un d'expert, et je sais qu'il y en a, peu m'aider, merci.

Apr=E8s debbogage la ligne : ' If UCase(Cel) =3D UCase(Str_crit=E8re) Then
' est en jaune.

Sub Recherche()
Dim Str_Plage As String
Dim Cel As Range
Dim Feuil As Worksheet
Dim Str_crit=E8re As String
Dim X As Byte

Str_Plage =3D "A3:A65536"
Str_crit=E8re =3D InputBox("CEU =E0 rechercher ?")
For Each Feuil In Sheets
For Each Cel In Feuil.Range(Str_Plage)
If UCase(Cel) =3D UCase(Str_crit=E8re) Then
X =3D MsgBox("CEU """ & Str_crit=E8re & """ trouv=E9 :" & Chr(13) & _
"Sur la feuille : " & Feuil.Name & Chr(13) & _
"=E0 l'adresse : " & Cel.Address(0, 0) & Chr(13) & Chr(13) & _
"Oui : on arr=EAte la recherche et on y va" & Chr(13) & _
"Non : on continue la recherche " & Chr(13) & _
"Annuler : on arr=EAte la recherche" & Chr(13), vbDefaultButton1 + _
vbQuestion + vbYesNoCancel, "MOT TROUV=C9")
Select Case X
Case 6
Feuil.Activate
Cel.Activate
Exit Sub
Case 2 'annuler on sort
Exit Sub
Case Else 'Non=3D7
'on fait rien, mais on pourrait
End Select
End If
Next Cel
Next Feuil
MsgBox ("pas trouv=E9")
End Sub

10 réponses

1 2 3
Avatar
lograd
Merci,
cela me donne : : Var3 : "$A$26" : Variant/String
Si je comprend bien c'est la cellule A26 qui fait tout planter ?
Mais en A26 il n'y a rien qui cloche, c'est pareille que dans les
autres cellule de la colonne A.
Juste la recopie de la cellule J.
Donc je COULE.
A tu une Idée ?



OK, je regarde.
Encore merci pour tes lumieres.


L'erreur vient de la cellule qui a pour valeur "VRAI". Pour la localiser
Ajoute Var3Îl.address
après Var2=UCase(Str_critère)
Cela va te donner l'adresse de la cellule qui fait planter.
Il te restera à savoir pourquoi elle a cette valeur.
Daniel
"lograd" a écrit dans le message de news:

Les valeurs de :
: Var1 : "VRAI" : Variant/String
: Var2 : "00140" : Variant/String

En espérant que cela t'aide à m'aider.


Dans l'éditeur Visual Basic, clique sur Affichage / Fenêtre varia bles
locales. Tu obtiens une nouvelle fenêtre affichant la valeur de tes
variables. Tu peux également positionner le curseur de la souris (s ans
cliquer), dans le code, sur la variable dont tu veux connaître la v aleur.
Daniel
"lograd" a écrit dans le message de news:

J'ai bien placé les deux lignes
Var1=UCase(Cel)
Var2=UCase(Str_critère)
avant If UCase(Cel) = UCase(Str_critère) Then
et voila le message d'erreur:
"Erreur d'execution 13
incompatibilité de type"
et c'est tout.
Ou veux tu que je releve les valeurs VAR1 et VAR2 lorsque cela plante ?
Merci.Je patoge un peu :)




Avant la ligne :
If UCase(Cel) = UCase(Str_critère) Then
Mets :
Var1=UCase(Cel)
Var2=UCase(Str_critère)
Quand la macro plante, relève les valeurs de Var1 et Var2 et revi ens les
poster.
Daniel
"lograd" a écrit dans le message de new s:

Bonjour Daniel,

en fait dans ma colonne A les chiffres proviennent d'une autre cell ule.
je m'explique:
En colonne I il y a une serie de formule et en colonne J aussi.
Mes chiffres de la colonne A proviennent de J, de la maniere suivan te :
A3=J3 ; A4=J4 etc..
EN I : I3=si(F2>0;125;"") reference de depart pour n° auto en c olonne
A.
Puis I4=si(F3>0;A3+1;"") , I5=si(F4>0;A4+1;"") etc.
Enfin en J : En J3 =TEXTE(I3;"00000") , en I4 =TEXTE(I4;"00000" ) etc
D'ou en A3=J3 ; A4=J4.
Pourquoi tout cela car je dois avoir des chiffres de la forme "0012 5"
en colonne A.
Merci de ton aide.
En esperant que tu es compris.



Bonjour.
Ta macro s'exécute normalement chez moi.
Quelles sont les valeurs de Str_critère et de la cellule au mom ent du
plantage ?
Cordialement.
Daniel
"lograd" a écrit dans le message de n ews:

Bonjour,
j'ai une macro qui me permet d'effectuer une recherche sur la col onne
"A" de ma Feuille "CEU".
J' ai une erreur lorsque celle-ci ne trouve pas le chiffre demand er,
au
lieu de mettre : "Pas trouvé".
Si quelqu'un d'expert, et je sais qu'il y en a, peu m'aider, merc i.

Après debbogage la ligne : ' If UCase(Cel) = UCase(Str_crit ère) Then
' est en jaune.

Sub Recherche()
Dim Str_Plage As String
Dim Cel As Range
Dim Feuil As Worksheet
Dim Str_critère As String
Dim X As Byte

Str_Plage = "A3:A65536"
Str_critère = InputBox("CEU à rechercher ?")
For Each Feuil In Sheets
For Each Cel In Feuil.Range(Str_Plage)
If UCase(Cel) = UCase(Str_critère) Then
X = MsgBox("CEU """ & Str_critère & """ trouvé :" & Chr(13) & _
"Sur la feuille : " & Feuil.Name & Chr(13) & _
"à l'adresse : " & Cel.Address(0, 0) & Chr(13) & Chr(13) & _
"Oui : on arrête la recherche et on y va" & Chr(13) & _
"Non : on continue la recherche " & Chr(13) & _
"Annuler : on arrête la recherche" & Chr(13), vbDefaultButton1 + _
vbQuestion + vbYesNoCancel, "MOT TROUVÉ")
Select Case X
Case 6
Feuil.Activate
Cel.Activate
Exit Sub
Case 2 'annuler on sort
Exit Sub
Case Else 'Non=7
'on fait rien, mais on pourrait
End Select
End If
Next Cel
Next Feuil
MsgBox ("pas trouvé")
End Sub










Avatar
Daniel
La valeur de A26, c'est quoi ?
Daniel
"lograd" a écrit dans le message de news:

Merci,
cela me donne : : Var3 : "$A$26" : Variant/String
Si je comprend bien c'est la cellule A26 qui fait tout planter ?
Mais en A26 il n'y a rien qui cloche, c'est pareille que dans les
autres cellule de la colonne A.
Juste la recopie de la cellule J.
Donc je COULE.
A tu une Idée ?



OK, je regarde.
Encore merci pour tes lumieres.


L'erreur vient de la cellule qui a pour valeur "VRAI". Pour la localiser
Ajoute Var3Îl.address
après Var2=UCase(Str_critère)
Cela va te donner l'adresse de la cellule qui fait planter.
Il te restera à savoir pourquoi elle a cette valeur.
Daniel
"lograd" a écrit dans le message de news:

Les valeurs de :
: Var1 : "VRAI" : Variant/String
: Var2 : "00140" : Variant/String

En espérant que cela t'aide à m'aider.


Dans l'éditeur Visual Basic, clique sur Affichage / Fenêtre variables
locales. Tu obtiens une nouvelle fenêtre affichant la valeur de tes
variables. Tu peux également positionner le curseur de la souris (sans
cliquer), dans le code, sur la variable dont tu veux connaître la
valeur.
Daniel
"lograd" a écrit dans le message de news:

J'ai bien placé les deux lignes
Var1=UCase(Cel)
Var2=UCase(Str_critère)
avant If UCase(Cel) = UCase(Str_critère) Then
et voila le message d'erreur:
"Erreur d'execution 13
incompatibilité de type"
et c'est tout.
Ou veux tu que je releve les valeurs VAR1 et VAR2 lorsque cela plante
?
Merci.Je patoge un peu :)




Avant la ligne :
If UCase(Cel) = UCase(Str_critère) Then
Mets :
Var1=UCase(Cel)
Var2=UCase(Str_critère)
Quand la macro plante, relève les valeurs de Var1 et Var2 et reviens
les
poster.
Daniel
"lograd" a écrit dans le message de news:

Bonjour Daniel,

en fait dans ma colonne A les chiffres proviennent d'une autre
cellule.
je m'explique:
En colonne I il y a une serie de formule et en colonne J aussi.
Mes chiffres de la colonne A proviennent de J, de la maniere
suivante :
A3=J3 ; A4=J4 etc..
EN I : I3=si(F2>0;125;"") reference de depart pour n° auto en
colonne
A.
Puis I4=si(F3>0;A3+1;"") , I5=si(F4>0;A4+1;"") etc.
Enfin en J : En J3 =TEXTE(I3;"00000") , en I4 =TEXTE(I4;"00000") etc
D'ou en A3=J3 ; A4=J4.
Pourquoi tout cela car je dois avoir des chiffres de la forme
"00125"
en colonne A.
Merci de ton aide.
En esperant que tu es compris.



Bonjour.
Ta macro s'exécute normalement chez moi.
Quelles sont les valeurs de Str_critère et de la cellule au moment
du
plantage ?
Cordialement.
Daniel
"lograd" a écrit dans le message de
news:

Bonjour,
j'ai une macro qui me permet d'effectuer une recherche sur la
colonne
"A" de ma Feuille "CEU".
J' ai une erreur lorsque celle-ci ne trouve pas le chiffre
demander,
au
lieu de mettre : "Pas trouvé".
Si quelqu'un d'expert, et je sais qu'il y en a, peu m'aider,
merci.

Après debbogage la ligne : ' If UCase(Cel) = UCase(Str_critère)
Then
' est en jaune.

Sub Recherche()
Dim Str_Plage As String
Dim Cel As Range
Dim Feuil As Worksheet
Dim Str_critère As String
Dim X As Byte

Str_Plage = "A3:A65536"
Str_critère = InputBox("CEU à rechercher ?")
For Each Feuil In Sheets
For Each Cel In Feuil.Range(Str_Plage)
If UCase(Cel) = UCase(Str_critère) Then
X = MsgBox("CEU """ & Str_critère & """ trouvé :" & Chr(13) & _
"Sur la feuille : " & Feuil.Name & Chr(13) & _
"à l'adresse : " & Cel.Address(0, 0) & Chr(13) & Chr(13) & _
"Oui : on arrête la recherche et on y va" & Chr(13) & _
"Non : on continue la recherche " & Chr(13) & _
"Annuler : on arrête la recherche" & Chr(13), vbDefaultButton1 + _
vbQuestion + vbYesNoCancel, "MOT TROUVÉ")
Select Case X
Case 6
Feuil.Activate
Cel.Activate
Exit Sub
Case 2 'annuler on sort
Exit Sub
Case Else 'Non=7
'on fait rien, mais on pourrait
End Select
End If
Next Cel
Next Feuil
MsgBox ("pas trouvé")
End Sub










Avatar
lograd
La valeur A26 est =J26.Qui correspond à =TEXTE(I26;"00000").(C'est ce
qu'il y a en J26)

Ce que je ne comprend pas c'est que les autres cellules de la colonne A
possède la même
formule et il n'y a pas de PB.
Exemple: A25 il y a =J25
A24 il y a =J24

ET pourquoi cette cellule?

Peut-être faut il tout simplement Copier et Collage spéciale valeur
dans les cellule de la colonne A, les valeurs de la colonne J.Pour ne
faire apparaitre en colonne A que des Valeurs et plus des Formule de
type : =J24 ; =J25 etc.?



La valeur de A26, c'est quoi ?
Daniel
"lograd" a écrit dans le message de news:

Merci,
cela me donne : : Var3 : "$A$26" : Variant/String
Si je comprend bien c'est la cellule A26 qui fait tout planter ?
Mais en A26 il n'y a rien qui cloche, c'est pareille que dans les
autres cellule de la colonne A.
Juste la recopie de la cellule J.
Donc je COULE.
A tu une Idée ?



OK, je regarde.
Encore merci pour tes lumieres.


L'erreur vient de la cellule qui a pour valeur "VRAI". Pour la locali ser
Ajoute Var3Îl.address
après Var2=UCase(Str_critère)
Cela va te donner l'adresse de la cellule qui fait planter.
Il te restera à savoir pourquoi elle a cette valeur.
Daniel
"lograd" a écrit dans le message de news:

Les valeurs de :
: Var1 : "VRAI" : Variant/String
: Var2 : "00140" : Variant/String

En espérant que cela t'aide à m'aider.


Dans l'éditeur Visual Basic, clique sur Affichage / Fenêtre var iables
locales. Tu obtiens une nouvelle fenêtre affichant la valeur de t es
variables. Tu peux également positionner le curseur de la souris (sans
cliquer), dans le code, sur la variable dont tu veux connaître la
valeur.
Daniel
"lograd" a écrit dans le message de new s:

J'ai bien placé les deux lignes
Var1=UCase(Cel)
Var2=UCase(Str_critère)
avant If UCase(Cel) = UCase(Str_critère) Then
et voila le message d'erreur:
"Erreur d'execution 13
incompatibilité de type"
et c'est tout.
Ou veux tu que je releve les valeurs VAR1 et VAR2 lorsque cela plan te
?
Merci.Je patoge un peu :)




Avant la ligne :
If UCase(Cel) = UCase(Str_critère) Then
Mets :
Var1=UCase(Cel)
Var2=UCase(Str_critère)
Quand la macro plante, relève les valeurs de Var1 et Var2 et re viens
les
poster.
Daniel
"lograd" a écrit dans le message de n ews:

Bonjour Daniel,

en fait dans ma colonne A les chiffres proviennent d'une autre
cellule.
je m'explique:
En colonne I il y a une serie de formule et en colonne J aussi.
Mes chiffres de la colonne A proviennent de J, de la maniere
suivante :
A3=J3 ; A4=J4 etc..
EN I : I3=si(F2>0;125;"") reference de depart pour n° auto en
colonne
A.
Puis I4=si(F3>0;A3+1;"") , I5=si(F4>0;A4+1;"") etc.
Enfin en J : En J3 =TEXTE(I3;"00000") , en I4 =TEXTE(I4;"0000 0") etc
D'ou en A3=J3 ; A4=J4.
Pourquoi tout cela car je dois avoir des chiffres de la forme
"00125"
en colonne A.
Merci de ton aide.
En esperant que tu es compris.



Bonjour.
Ta macro s'exécute normalement chez moi.
Quelles sont les valeurs de Str_critère et de la cellule au m oment
du
plantage ?
Cordialement.
Daniel
"lograd" a écrit dans le message de
news:

Bonjour,
j'ai une macro qui me permet d'effectuer une recherche sur la
colonne
"A" de ma Feuille "CEU".
J' ai une erreur lorsque celle-ci ne trouve pas le chiffre
demander,
au
lieu de mettre : "Pas trouvé".
Si quelqu'un d'expert, et je sais qu'il y en a, peu m'aider,
merci.

Après debbogage la ligne : ' If UCase(Cel) = UCase(Str_crit ère)
Then
' est en jaune.

Sub Recherche()
Dim Str_Plage As String
Dim Cel As Range
Dim Feuil As Worksheet
Dim Str_critère As String
Dim X As Byte

Str_Plage = "A3:A65536"
Str_critère = InputBox("CEU à rechercher ?")
For Each Feuil In Sheets
For Each Cel In Feuil.Range(Str_Plage)
If UCase(Cel) = UCase(Str_critère) Then
X = MsgBox("CEU """ & Str_critère & """ trouvé :" & Chr(1 3) & _
"Sur la feuille : " & Feuil.Name & Chr(13) & _
"à l'adresse : " & Cel.Address(0, 0) & Chr(13) & Chr(13) & _
"Oui : on arrête la recherche et on y va" & Chr(13) & _
"Non : on continue la recherche " & Chr(13) & _
"Annuler : on arrête la recherche" & Chr(13), vbDefaultButton 1 + _
vbQuestion + vbYesNoCancel, "MOT TROUVÉ")
Select Case X
Case 6
Feuil.Activate
Cel.Activate
Exit Sub
Case 2 'annuler on sort
Exit Sub
Case Else 'Non=7
'on fait rien, mais on pourrait
End Select
End If
Next Cel
Next Feuil
MsgBox ("pas trouvé")
End Sub












Avatar
lograd
Pour info Daniel,
j'ai essayé dans un classeur vierge,
avec mes formule en I et J puis en A =J(quelquechose)
Et bien tout fonctionne correctement.
Je cherche ce qui cloche dans mon tableau d'origine.
J'ai deja corrigé des erreur.
Les cellule en I26 et J26 étaient au Format Date, comme d'autre
d'ailleurs.
Mais cela na pas resolu le PB.
Je cherche toujours.
Mais je crois que je vais redevoir tout refaire à zéro sur un autre
classeur.
J'essaye encore de trouver.
Si tu as des idées ?
Encore merci pour les Astuces.( voir plus haut).
Elle me fait enrager cette case A26.

Je reviendrai pour donner la solution si je trouve.



La valeur A26 est =J26.Qui correspond à =TEXTE(I26;"00000").(C'est ce
qu'il y a en J26)

Ce que je ne comprend pas c'est que les autres cellules de la colonne A
possède la même
formule et il n'y a pas de PB.
Exemple: A25 il y a =J25
A24 il y a =J24

ET pourquoi cette cellule?

Peut-être faut il tout simplement Copier et Collage spéciale valeur
dans les cellule de la colonne A, les valeurs de la colonne J.Pour ne
faire apparaitre en colonne A que des Valeurs et plus des Formule de
type : =J24 ; =J25 etc.?



La valeur de A26, c'est quoi ?
Daniel
"lograd" a écrit dans le message de news:

Merci,
cela me donne : : Var3 : "$A$26" : Variant/String
Si je comprend bien c'est la cellule A26 qui fait tout planter ?
Mais en A26 il n'y a rien qui cloche, c'est pareille que dans les
autres cellule de la colonne A.
Juste la recopie de la cellule J.
Donc je COULE.
A tu une Idée ?



OK, je regarde.
Encore merci pour tes lumieres.


L'erreur vient de la cellule qui a pour valeur "VRAI". Pour la loca liser
Ajoute Var3Îl.address
après Var2=UCase(Str_critère)
Cela va te donner l'adresse de la cellule qui fait planter.
Il te restera à savoir pourquoi elle a cette valeur.
Daniel
"lograd" a écrit dans le message de new s:

Les valeurs de :
: Var1 : "VRAI" : Variant/String
: Var2 : "00140" : Variant/String

En espérant que cela t'aide à m'aider.


Dans l'éditeur Visual Basic, clique sur Affichage / Fenêtre v ariables
locales. Tu obtiens une nouvelle fenêtre affichant la valeur de tes
variables. Tu peux également positionner le curseur de la souri s (sans
cliquer), dans le code, sur la variable dont tu veux connaître la
valeur.
Daniel
"lograd" a écrit dans le message de n ews:

J'ai bien placé les deux lignes
Var1=UCase(Cel)
Var2=UCase(Str_critère)
avant If UCase(Cel) = UCase(Str_critère) Then
et voila le message d'erreur:
"Erreur d'execution 13
incompatibilité de type"
et c'est tout.
Ou veux tu que je releve les valeurs VAR1 et VAR2 lorsque cela pl ante
?
Merci.Je patoge un peu :)




Avant la ligne :
If UCase(Cel) = UCase(Str_critère) Then
Mets :
Var1=UCase(Cel)
Var2=UCase(Str_critère)
Quand la macro plante, relève les valeurs de Var1 et Var2 et reviens
les
poster.
Daniel
"lograd" a écrit dans le message de news:

Bonjour Daniel,

en fait dans ma colonne A les chiffres proviennent d'une autre
cellule.
je m'explique:
En colonne I il y a une serie de formule et en colonne J aussi.
Mes chiffres de la colonne A proviennent de J, de la maniere
suivante :
A3=J3 ; A4=J4 etc..
EN I : I3=si(F2>0;125;"") reference de depart pour n° auto en
colonne
A.
Puis I4=si(F3>0;A3+1;"") , I5=si(F4>0;A4+1;"") etc.
Enfin en J : En J3 =TEXTE(I3;"00000") , en I4 =TEXTE(I4;"00 000") etc
D'ou en A3=J3 ; A4=J4.
Pourquoi tout cela car je dois avoir des chiffres de la forme
"00125"
en colonne A.
Merci de ton aide.
En esperant que tu es compris.



Bonjour.
Ta macro s'exécute normalement chez moi.
Quelles sont les valeurs de Str_critère et de la cellule au moment
du
plantage ?
Cordialement.
Daniel
"lograd" a écrit dans le message de
news:

Bonjour,
j'ai une macro qui me permet d'effectuer une recherche sur la
colonne
"A" de ma Feuille "CEU".
J' ai une erreur lorsque celle-ci ne trouve pas le chiffre
demander,
au
lieu de mettre : "Pas trouvé".
Si quelqu'un d'expert, et je sais qu'il y en a, peu m'aider,
merci.

Après debbogage la ligne : ' If UCase(Cel) = UCase(Str_cr itère)
Then
' est en jaune.

Sub Recherche()
Dim Str_Plage As String
Dim Cel As Range
Dim Feuil As Worksheet
Dim Str_critère As String
Dim X As Byte

Str_Plage = "A3:A65536"
Str_critère = InputBox("CEU à rechercher ?")
For Each Feuil In Sheets
For Each Cel In Feuil.Range(Str_Plage)
If UCase(Cel) = UCase(Str_critère) Then
X = MsgBox("CEU """ & Str_critère & """ trouvé :" & Chr (13) & _
"Sur la feuille : " & Feuil.Name & Chr(13) & _
"à l'adresse : " & Cel.Address(0, 0) & Chr(13) & Chr(13) & _
"Oui : on arrête la recherche et on y va" & Chr(13) & _
"Non : on continue la recherche " & Chr(13) & _
"Annuler : on arrête la recherche" & Chr(13), vbDefaultButt on1 + _
vbQuestion + vbYesNoCancel, "MOT TROUVÉ")
Select Case X
Case 6
Feuil.Activate
Cel.Activate
Exit Sub
Case 2 'annuler on sort
Exit Sub
Case Else 'Non=7
'on fait rien, mais on pourrait
End Select
End If
Next Cel
Next Feuil
MsgBox ("pas trouvé")
End Sub














Avatar
lograd
En fait je viens de comprendre.
J'ai des feuilles Macro qui générent les erreurs.
Alors Pourquoi ?


La valeur de A26, c'est quoi ?
Daniel
"lograd" a écrit dans le message de news:

Merci,
cela me donne : : Var3 : "$A$26" : Variant/String
Si je comprend bien c'est la cellule A26 qui fait tout planter ?
Mais en A26 il n'y a rien qui cloche, c'est pareille que dans les
autres cellule de la colonne A.
Juste la recopie de la cellule J.
Donc je COULE.
A tu une Idée ?



OK, je regarde.
Encore merci pour tes lumieres.


L'erreur vient de la cellule qui a pour valeur "VRAI". Pour la locali ser
Ajoute Var3Îl.address
après Var2=UCase(Str_critère)
Cela va te donner l'adresse de la cellule qui fait planter.
Il te restera à savoir pourquoi elle a cette valeur.
Daniel
"lograd" a écrit dans le message de news:

Les valeurs de :
: Var1 : "VRAI" : Variant/String
: Var2 : "00140" : Variant/String

En espérant que cela t'aide à m'aider.


Dans l'éditeur Visual Basic, clique sur Affichage / Fenêtre var iables
locales. Tu obtiens une nouvelle fenêtre affichant la valeur de t es
variables. Tu peux également positionner le curseur de la souris (sans
cliquer), dans le code, sur la variable dont tu veux connaître la
valeur.
Daniel
"lograd" a écrit dans le message de new s:

J'ai bien placé les deux lignes
Var1=UCase(Cel)
Var2=UCase(Str_critère)
avant If UCase(Cel) = UCase(Str_critère) Then
et voila le message d'erreur:
"Erreur d'execution 13
incompatibilité de type"
et c'est tout.
Ou veux tu que je releve les valeurs VAR1 et VAR2 lorsque cela plan te
?
Merci.Je patoge un peu :)




Avant la ligne :
If UCase(Cel) = UCase(Str_critère) Then
Mets :
Var1=UCase(Cel)
Var2=UCase(Str_critère)
Quand la macro plante, relève les valeurs de Var1 et Var2 et re viens
les
poster.
Daniel
"lograd" a écrit dans le message de n ews:

Bonjour Daniel,

en fait dans ma colonne A les chiffres proviennent d'une autre
cellule.
je m'explique:
En colonne I il y a une serie de formule et en colonne J aussi.
Mes chiffres de la colonne A proviennent de J, de la maniere
suivante :
A3=J3 ; A4=J4 etc..
EN I : I3=si(F2>0;125;"") reference de depart pour n° auto en
colonne
A.
Puis I4=si(F3>0;A3+1;"") , I5=si(F4>0;A4+1;"") etc.
Enfin en J : En J3 =TEXTE(I3;"00000") , en I4 =TEXTE(I4;"0000 0") etc
D'ou en A3=J3 ; A4=J4.
Pourquoi tout cela car je dois avoir des chiffres de la forme
"00125"
en colonne A.
Merci de ton aide.
En esperant que tu es compris.



Bonjour.
Ta macro s'exécute normalement chez moi.
Quelles sont les valeurs de Str_critère et de la cellule au m oment
du
plantage ?
Cordialement.
Daniel
"lograd" a écrit dans le message de
news:

Bonjour,
j'ai une macro qui me permet d'effectuer une recherche sur la
colonne
"A" de ma Feuille "CEU".
J' ai une erreur lorsque celle-ci ne trouve pas le chiffre
demander,
au
lieu de mettre : "Pas trouvé".
Si quelqu'un d'expert, et je sais qu'il y en a, peu m'aider,
merci.

Après debbogage la ligne : ' If UCase(Cel) = UCase(Str_crit ère)
Then
' est en jaune.

Sub Recherche()
Dim Str_Plage As String
Dim Cel As Range
Dim Feuil As Worksheet
Dim Str_critère As String
Dim X As Byte

Str_Plage = "A3:A65536"
Str_critère = InputBox("CEU à rechercher ?")
For Each Feuil In Sheets
For Each Cel In Feuil.Range(Str_Plage)
If UCase(Cel) = UCase(Str_critère) Then
X = MsgBox("CEU """ & Str_critère & """ trouvé :" & Chr(1 3) & _
"Sur la feuille : " & Feuil.Name & Chr(13) & _
"à l'adresse : " & Cel.Address(0, 0) & Chr(13) & Chr(13) & _
"Oui : on arrête la recherche et on y va" & Chr(13) & _
"Non : on continue la recherche " & Chr(13) & _
"Annuler : on arrête la recherche" & Chr(13), vbDefaultButton 1 + _
vbQuestion + vbYesNoCancel, "MOT TROUVÉ")
Select Case X
Case 6
Feuil.Activate
Cel.Activate
Exit Sub
Case 2 'annuler on sort
Exit Sub
Case Else 'Non=7
'on fait rien, mais on pourrait
End Select
End If
Next Cel
Next Feuil
MsgBox ("pas trouvé")
End Sub












Avatar
lograd
Daniel peux tu me répondre SVP,
Comment executer ma macro sans que les deux feuilles de macro ne
generent des erreurs?

En fait je viens de comprendre.
J'ai des feuilles Macro qui générent les erreurs.
Alors Pourquoi ?


La valeur de A26, c'est quoi ?
Daniel
"lograd" a écrit dans le message de news:

Merci,
cela me donne : : Var3 : "$A$26" : Variant/String
Si je comprend bien c'est la cellule A26 qui fait tout planter ?
Mais en A26 il n'y a rien qui cloche, c'est pareille que dans les
autres cellule de la colonne A.
Juste la recopie de la cellule J.
Donc je COULE.
A tu une Idée ?



OK, je regarde.
Encore merci pour tes lumieres.


L'erreur vient de la cellule qui a pour valeur "VRAI". Pour la loca liser
Ajoute Var3Îl.address
après Var2=UCase(Str_critère)
Cela va te donner l'adresse de la cellule qui fait planter.
Il te restera à savoir pourquoi elle a cette valeur.
Daniel
"lograd" a écrit dans le message de new s:

Les valeurs de :
: Var1 : "VRAI" : Variant/String
: Var2 : "00140" : Variant/String

En espérant que cela t'aide à m'aider.


Dans l'éditeur Visual Basic, clique sur Affichage / Fenêtre v ariables
locales. Tu obtiens une nouvelle fenêtre affichant la valeur de tes
variables. Tu peux également positionner le curseur de la souri s (sans
cliquer), dans le code, sur la variable dont tu veux connaître la
valeur.
Daniel
"lograd" a écrit dans le message de n ews:

J'ai bien placé les deux lignes
Var1=UCase(Cel)
Var2=UCase(Str_critère)
avant If UCase(Cel) = UCase(Str_critère) Then
et voila le message d'erreur:
"Erreur d'execution 13
incompatibilité de type"
et c'est tout.
Ou veux tu que je releve les valeurs VAR1 et VAR2 lorsque cela pl ante
?
Merci.Je patoge un peu :)




Avant la ligne :
If UCase(Cel) = UCase(Str_critère) Then
Mets :
Var1=UCase(Cel)
Var2=UCase(Str_critère)
Quand la macro plante, relève les valeurs de Var1 et Var2 et reviens
les
poster.
Daniel
"lograd" a écrit dans le message de news:

Bonjour Daniel,

en fait dans ma colonne A les chiffres proviennent d'une autre
cellule.
je m'explique:
En colonne I il y a une serie de formule et en colonne J aussi.
Mes chiffres de la colonne A proviennent de J, de la maniere
suivante :
A3=J3 ; A4=J4 etc..
EN I : I3=si(F2>0;125;"") reference de depart pour n° auto en
colonne
A.
Puis I4=si(F3>0;A3+1;"") , I5=si(F4>0;A4+1;"") etc.
Enfin en J : En J3 =TEXTE(I3;"00000") , en I4 =TEXTE(I4;"00 000") etc
D'ou en A3=J3 ; A4=J4.
Pourquoi tout cela car je dois avoir des chiffres de la forme
"00125"
en colonne A.
Merci de ton aide.
En esperant que tu es compris.



Bonjour.
Ta macro s'exécute normalement chez moi.
Quelles sont les valeurs de Str_critère et de la cellule au moment
du
plantage ?
Cordialement.
Daniel
"lograd" a écrit dans le message de
news:

Bonjour,
j'ai une macro qui me permet d'effectuer une recherche sur la
colonne
"A" de ma Feuille "CEU".
J' ai une erreur lorsque celle-ci ne trouve pas le chiffre
demander,
au
lieu de mettre : "Pas trouvé".
Si quelqu'un d'expert, et je sais qu'il y en a, peu m'aider,
merci.

Après debbogage la ligne : ' If UCase(Cel) = UCase(Str_cr itère)
Then
' est en jaune.

Sub Recherche()
Dim Str_Plage As String
Dim Cel As Range
Dim Feuil As Worksheet
Dim Str_critère As String
Dim X As Byte

Str_Plage = "A3:A65536"
Str_critère = InputBox("CEU à rechercher ?")
For Each Feuil In Sheets
For Each Cel In Feuil.Range(Str_Plage)
If UCase(Cel) = UCase(Str_critère) Then
X = MsgBox("CEU """ & Str_critère & """ trouvé :" & Chr (13) & _
"Sur la feuille : " & Feuil.Name & Chr(13) & _
"à l'adresse : " & Cel.Address(0, 0) & Chr(13) & Chr(13) & _
"Oui : on arrête la recherche et on y va" & Chr(13) & _
"Non : on continue la recherche " & Chr(13) & _
"Annuler : on arrête la recherche" & Chr(13), vbDefaultButt on1 + _
vbQuestion + vbYesNoCancel, "MOT TROUVÉ")
Select Case X
Case 6
Feuil.Activate
Cel.Activate
Exit Sub
Case 2 'annuler on sort
Exit Sub
Case Else 'Non=7
'on fait rien, mais on pourrait
End Select
End If
Next Cel
Next Feuil
MsgBox ("pas trouvé")
End Sub














Avatar
Daniel
Bonjour.
Je vais être absent pour la journée. Qu'est-ce que tu entends par "des
feuilles macro" ? des feuilles macro XL4 ? Comment te génèrent-elles des
erreurs ?
Daniel
"lograd" a écrit dans le message de news:

Daniel peux tu me répondre SVP,
Comment executer ma macro sans que les deux feuilles de macro ne
generent des erreurs?

En fait je viens de comprendre.
J'ai des feuilles Macro qui générent les erreurs.
Alors Pourquoi ?


La valeur de A26, c'est quoi ?
Daniel
"lograd" a écrit dans le message de news:

Merci,
cela me donne : : Var3 : "$A$26" : Variant/String
Si je comprend bien c'est la cellule A26 qui fait tout planter ?
Mais en A26 il n'y a rien qui cloche, c'est pareille que dans les
autres cellule de la colonne A.
Juste la recopie de la cellule J.
Donc je COULE.
A tu une Idée ?



OK, je regarde.
Encore merci pour tes lumieres.


L'erreur vient de la cellule qui a pour valeur "VRAI". Pour la
localiser
Ajoute Var3Îl.address
après Var2=UCase(Str_critère)
Cela va te donner l'adresse de la cellule qui fait planter.
Il te restera à savoir pourquoi elle a cette valeur.
Daniel
"lograd" a écrit dans le message de news:

Les valeurs de :
: Var1 : "VRAI" : Variant/String
: Var2 : "00140" : Variant/String

En espérant que cela t'aide à m'aider.


Dans l'éditeur Visual Basic, clique sur Affichage / Fenêtre
variables
locales. Tu obtiens une nouvelle fenêtre affichant la valeur de
tes
variables. Tu peux également positionner le curseur de la souris
(sans
cliquer), dans le code, sur la variable dont tu veux connaître la
valeur.
Daniel
"lograd" a écrit dans le message de
news:

J'ai bien placé les deux lignes
Var1=UCase(Cel)
Var2=UCase(Str_critère)
avant If UCase(Cel) = UCase(Str_critère) Then
et voila le message d'erreur:
"Erreur d'execution 13
incompatibilité de type"
et c'est tout.
Ou veux tu que je releve les valeurs VAR1 et VAR2 lorsque cela
plante
?
Merci.Je patoge un peu :)




Avant la ligne :
If UCase(Cel) = UCase(Str_critère) Then
Mets :
Var1=UCase(Cel)
Var2=UCase(Str_critère)
Quand la macro plante, relève les valeurs de Var1 et Var2 et
reviens
les
poster.
Daniel
"lograd" a écrit dans le message de
news:

Bonjour Daniel,

en fait dans ma colonne A les chiffres proviennent d'une autre
cellule.
je m'explique:
En colonne I il y a une serie de formule et en colonne J aussi.
Mes chiffres de la colonne A proviennent de J, de la maniere
suivante :
A3=J3 ; A4=J4 etc..
EN I : I3=si(F2>0;125;"") reference de depart pour n° auto en
colonne
A.
Puis I4=si(F3>0;A3+1;"") , I5=si(F4>0;A4+1;"") etc.
Enfin en J : En J3 =TEXTE(I3;"00000") , en I4 =TEXTE(I4;"00000")
etc
D'ou en A3=J3 ; A4=J4.
Pourquoi tout cela car je dois avoir des chiffres de la forme
"00125"
en colonne A.
Merci de ton aide.
En esperant que tu es compris.



Bonjour.
Ta macro s'exécute normalement chez moi.
Quelles sont les valeurs de Str_critère et de la cellule au
moment
du
plantage ?
Cordialement.
Daniel
"lograd" a écrit dans le message de
news:

Bonjour,
j'ai une macro qui me permet d'effectuer une recherche sur la
colonne
"A" de ma Feuille "CEU".
J' ai une erreur lorsque celle-ci ne trouve pas le chiffre
demander,
au
lieu de mettre : "Pas trouvé".
Si quelqu'un d'expert, et je sais qu'il y en a, peu m'aider,
merci.

Après debbogage la ligne : ' If UCase(Cel) =
UCase(Str_critère)
Then
' est en jaune.

Sub Recherche()
Dim Str_Plage As String
Dim Cel As Range
Dim Feuil As Worksheet
Dim Str_critère As String
Dim X As Byte

Str_Plage = "A3:A65536"
Str_critère = InputBox("CEU à rechercher ?")
For Each Feuil In Sheets
For Each Cel In Feuil.Range(Str_Plage)
If UCase(Cel) = UCase(Str_critère) Then
X = MsgBox("CEU """ & Str_critère & """ trouvé :" & Chr(13) &
_
"Sur la feuille : " & Feuil.Name & Chr(13) & _
"à l'adresse : " & Cel.Address(0, 0) & Chr(13) & Chr(13) & _
"Oui : on arrête la recherche et on y va" & Chr(13) & _
"Non : on continue la recherche " & Chr(13) & _
"Annuler : on arrête la recherche" & Chr(13), vbDefaultButton1
+ _
vbQuestion + vbYesNoCancel, "MOT TROUVÉ")
Select Case X
Case 6
Feuil.Activate
Cel.Activate
Exit Sub
Case 2 'annuler on sort
Exit Sub
Case Else 'Non=7
'on fait rien, mais on pourrait
End Select
End If
Next Cel
Next Feuil
MsgBox ("pas trouvé")
End Sub














Avatar
lograd
Bonjour daniel,
en fait dans la recherche la macro va aussi dans la feuille Macro1 et
ma cellule A26 c'est celle de la Macro XL4, d'ou l'erreur.
Il faudrait que ma recherche ne soit que sur ma Feuille "CEU" et non
tout le calsseur.
As tu une idée pour modifier la macro VBA dans se cas ?
Merci et bonne journée.


Bonjour.
Je vais être absent pour la journée. Qu'est-ce que tu entends par "des
feuilles macro" ? des feuilles macro XL4 ? Comment te génèrent-elles des
erreurs ?
Daniel
"lograd" a écrit dans le message de news:

Daniel peux tu me répondre SVP,
Comment executer ma macro sans que les deux feuilles de macro ne
generent des erreurs?

En fait je viens de comprendre.
J'ai des feuilles Macro qui générent les erreurs.
Alors Pourquoi ?


La valeur de A26, c'est quoi ?
Daniel
"lograd" a écrit dans le message de news:

Merci,
cela me donne : : Var3 : "$A$26" : Variant/String
Si je comprend bien c'est la cellule A26 qui fait tout planter ?
Mais en A26 il n'y a rien qui cloche, c'est pareille que dans les
autres cellule de la colonne A.
Juste la recopie de la cellule J.
Donc je COULE.
A tu une Idée ?



OK, je regarde.
Encore merci pour tes lumieres.


L'erreur vient de la cellule qui a pour valeur "VRAI". Pour la
localiser
Ajoute Var3Îl.address
après Var2=UCase(Str_critère)
Cela va te donner l'adresse de la cellule qui fait planter.
Il te restera à savoir pourquoi elle a cette valeur.
Daniel
"lograd" a écrit dans le message de n ews:

Les valeurs de :
: Var1 : "VRAI" : Variant/String
: Var2 : "00140" : Variant/String

En espérant que cela t'aide à m'aider.


Dans l'éditeur Visual Basic, clique sur Affichage / Fenêtre
variables
locales. Tu obtiens une nouvelle fenêtre affichant la valeur de
tes
variables. Tu peux également positionner le curseur de la sou ris
(sans
cliquer), dans le code, sur la variable dont tu veux connaîtr e la
valeur.
Daniel
"lograd" a écrit dans le message de
news:

J'ai bien placé les deux lignes
Var1=UCase(Cel)
Var2=UCase(Str_critère)
avant If UCase(Cel) = UCase(Str_critère) Then
et voila le message d'erreur:
"Erreur d'execution 13
incompatibilité de type"
et c'est tout.
Ou veux tu que je releve les valeurs VAR1 et VAR2 lorsque cela
plante
?
Merci.Je patoge un peu :)




Avant la ligne :
If UCase(Cel) = UCase(Str_critère) Then
Mets :
Var1=UCase(Cel)
Var2=UCase(Str_critère)
Quand la macro plante, relève les valeurs de Var1 et Var2 et
reviens
les
poster.
Daniel
"lograd" a écrit dans le message de
news:

Bonjour Daniel,

en fait dans ma colonne A les chiffres proviennent d'une autre
cellule.
je m'explique:
En colonne I il y a une serie de formule et en colonne J auss i.
Mes chiffres de la colonne A proviennent de J, de la maniere
suivante :
A3=J3 ; A4=J4 etc..
EN I : I3=si(F2>0;125;"") reference de depart pour n° aut o en
colonne
A.
Puis I4=si(F3>0;A3+1;"") , I5=si(F4>0;A4+1;"") etc.
Enfin en J : En J3 =TEXTE(I3;"00000") , en I4 =TEXTE(I4;" 00000")
etc
D'ou en A3=J3 ; A4=J4.
Pourquoi tout cela car je dois avoir des chiffres de la forme
"00125"
en colonne A.
Merci de ton aide.
En esperant que tu es compris.



Bonjour.
Ta macro s'exécute normalement chez moi.
Quelles sont les valeurs de Str_critère et de la cellule au
moment
du
plantage ?
Cordialement.
Daniel
"lograd" a écrit dans le messag e de
news:

Bonjour,
j'ai une macro qui me permet d'effectuer une recherche sur la
colonne
"A" de ma Feuille "CEU".
J' ai une erreur lorsque celle-ci ne trouve pas le chiffre
demander,
au
lieu de mettre : "Pas trouvé".
Si quelqu'un d'expert, et je sais qu'il y en a, peu m'aider,
merci.

Après debbogage la ligne : ' If UCase(Cel) =
UCase(Str_critère)
Then
' est en jaune.

Sub Recherche()
Dim Str_Plage As String
Dim Cel As Range
Dim Feuil As Worksheet
Dim Str_critère As String
Dim X As Byte

Str_Plage = "A3:A65536"
Str_critère = InputBox("CEU à rechercher ?")
For Each Feuil In Sheets
For Each Cel In Feuil.Range(Str_Plage)
If UCase(Cel) = UCase(Str_critère) Then
X = MsgBox("CEU """ & Str_critère & """ trouvé :" & C hr(13) &
_
"Sur la feuille : " & Feuil.Name & Chr(13) & _
"à l'adresse : " & Cel.Address(0, 0) & Chr(13) & Chr(13) & _
"Oui : on arrête la recherche et on y va" & Chr(13) & _
"Non : on continue la recherche " & Chr(13) & _
"Annuler : on arrête la recherche" & Chr(13), vbDefaultBu tton1
+ _
vbQuestion + vbYesNoCancel, "MOT TROUVÉ")
Select Case X
Case 6
Feuil.Activate
Cel.Activate
Exit Sub
Case 2 'annuler on sort
Exit Sub
Case Else 'Non=7
'on fait rien, mais on pourrait
End Select
End If
Next Cel
Next Feuil
MsgBox ("pas trouvé")
End Sub
















Avatar
Daniel
Bonsoir.
Essaie :

Sub Recherche()
Dim Str_Plage As String
Dim Cel As Range
Dim Str_critère As String
Dim X As Byte

Str_Plage = "CEU!A3:A65536"
Str_critère = InputBox("CEU à rechercher ?")
For Each Cel In Range(Str_Plage)
If UCase(Cel) = UCase(Str_critère) Then
X = MsgBox("CEU """ & Str_critère & """ trouvé :" & Chr(13) & _
"à l'adresse : " & Cel.Address(0, 0) & Chr(13) & Chr(13) & _
"Oui : on arrête la recherche et on y va" & Chr(13) & _
"Non : on continue la recherche " & Chr(13) & _
"Annuler : on arrête la recherche" & Chr(13), vbDefaultButton1 + _
vbQuestion + vbYesNoCancel, "MOT TROUVÉ")
Select Case X
Case 6
Feuil.Activate
Cel.Activate
Exit Sub
Case 2 'annuler on sort
Exit Sub
Case Else 'Non=7
'on fait rien, mais on pourrait
End Select
End If
Next Cel
MsgBox ("pas trouvé")
End Sub

"lograd" a écrit dans le message de news:

Bonjour daniel,
en fait dans la recherche la macro va aussi dans la feuille Macro1 et
ma cellule A26 c'est celle de la Macro XL4, d'ou l'erreur.
Il faudrait que ma recherche ne soit que sur ma Feuille "CEU" et non
tout le calsseur.
As tu une idée pour modifier la macro VBA dans se cas ?
Merci et bonne journée.


Bonjour.
Je vais être absent pour la journée. Qu'est-ce que tu entends par "des
feuilles macro" ? des feuilles macro XL4 ? Comment te génèrent-elles des
erreurs ?
Daniel
"lograd" a écrit dans le message de news:

Daniel peux tu me répondre SVP,
Comment executer ma macro sans que les deux feuilles de macro ne
generent des erreurs?

En fait je viens de comprendre.
J'ai des feuilles Macro qui générent les erreurs.
Alors Pourquoi ?


La valeur de A26, c'est quoi ?
Daniel
"lograd" a écrit dans le message de news:

Merci,
cela me donne : : Var3 : "$A$26" : Variant/String
Si je comprend bien c'est la cellule A26 qui fait tout planter ?
Mais en A26 il n'y a rien qui cloche, c'est pareille que dans les
autres cellule de la colonne A.
Juste la recopie de la cellule J.
Donc je COULE.
A tu une Idée ?



OK, je regarde.
Encore merci pour tes lumieres.


L'erreur vient de la cellule qui a pour valeur "VRAI". Pour la
localiser
Ajoute Var3Îl.address
après Var2=UCase(Str_critère)
Cela va te donner l'adresse de la cellule qui fait planter.
Il te restera à savoir pourquoi elle a cette valeur.
Daniel
"lograd" a écrit dans le message de
news:

Les valeurs de :
: Var1 : "VRAI" : Variant/String
: Var2 : "00140" : Variant/String

En espérant que cela t'aide à m'aider.


Dans l'éditeur Visual Basic, clique sur Affichage / Fenêtre
variables
locales. Tu obtiens une nouvelle fenêtre affichant la valeur de
tes
variables. Tu peux également positionner le curseur de la souris
(sans
cliquer), dans le code, sur la variable dont tu veux connaître
la
valeur.
Daniel
"lograd" a écrit dans le message de
news:

J'ai bien placé les deux lignes
Var1=UCase(Cel)
Var2=UCase(Str_critère)
avant If UCase(Cel) = UCase(Str_critère) Then
et voila le message d'erreur:
"Erreur d'execution 13
incompatibilité de type"
et c'est tout.
Ou veux tu que je releve les valeurs VAR1 et VAR2 lorsque cela
plante
?
Merci.Je patoge un peu :)




Avant la ligne :
If UCase(Cel) = UCase(Str_critère) Then
Mets :
Var1=UCase(Cel)
Var2=UCase(Str_critère)
Quand la macro plante, relève les valeurs de Var1 et Var2 et
reviens
les
poster.
Daniel
"lograd" a écrit dans le message de
news:

Bonjour Daniel,

en fait dans ma colonne A les chiffres proviennent d'une autre
cellule.
je m'explique:
En colonne I il y a une serie de formule et en colonne J
aussi.
Mes chiffres de la colonne A proviennent de J, de la maniere
suivante :
A3=J3 ; A4=J4 etc..
EN I : I3=si(F2>0;125;"") reference de depart pour n° auto en
colonne
A.
Puis I4=si(F3>0;A3+1;"") , I5=si(F4>0;A4+1;"") etc.
Enfin en J : En J3 =TEXTE(I3;"00000") , en I4
=TEXTE(I4;"00000")
etc
D'ou en A3=J3 ; A4=J4.
Pourquoi tout cela car je dois avoir des chiffres de la forme
"00125"
en colonne A.
Merci de ton aide.
En esperant que tu es compris.



Bonjour.
Ta macro s'exécute normalement chez moi.
Quelles sont les valeurs de Str_critère et de la cellule au
moment
du
plantage ?
Cordialement.
Daniel
"lograd" a écrit dans le message
de
news:

Bonjour,
j'ai une macro qui me permet d'effectuer une recherche sur
la
colonne
"A" de ma Feuille "CEU".
J' ai une erreur lorsque celle-ci ne trouve pas le chiffre
demander,
au
lieu de mettre : "Pas trouvé".
Si quelqu'un d'expert, et je sais qu'il y en a, peu m'aider,
merci.

Après debbogage la ligne : ' If UCase(Cel) > > > > > > > > UCase(Str_critère)
Then
' est en jaune.

Sub Recherche()
Dim Str_Plage As String
Dim Cel As Range
Dim Feuil As Worksheet
Dim Str_critère As String
Dim X As Byte

Str_Plage = "A3:A65536"
Str_critère = InputBox("CEU à rechercher ?")
For Each Feuil In Sheets
For Each Cel In Feuil.Range(Str_Plage)
If UCase(Cel) = UCase(Str_critère) Then
X = MsgBox("CEU """ & Str_critère & """ trouvé :" & Chr(13)
&
_
"Sur la feuille : " & Feuil.Name & Chr(13) & _
"à l'adresse : " & Cel.Address(0, 0) & Chr(13) & Chr(13) & _
"Oui : on arrête la recherche et on y va" & Chr(13) & _
"Non : on continue la recherche " & Chr(13) & _
"Annuler : on arrête la recherche" & Chr(13),
vbDefaultButton1
+ _
vbQuestion + vbYesNoCancel, "MOT TROUVÉ")
Select Case X
Case 6
Feuil.Activate
Cel.Activate
Exit Sub
Case 2 'annuler on sort
Exit Sub
Case Else 'Non=7
'on fait rien, mais on pourrait
End Select
End If
Next Cel
Next Feuil
MsgBox ("pas trouvé")
End Sub
















Avatar
lograd
Bonsoir Daniel,
impeccable, maintenant lorsque le chiffre cherché n'est pas trouvé il
me dit "pas trouvé"
Par contre cela plante lorsque je répond "oui" pour aller sur la
cellule ou il y a le chiffre trouvé.
Voila ce que cela dit :
Erreur d'execution 424
puis:

: Str_critère : "00128" : String
: X : 6 : Byte
: Feuil : Vide : Variant/Empty.
Bien sur pour une recherche d'un chiffre qui existe.

Je suis perdu, cela fonctionnait pour me rendre au chiffre existant
avant ta modif (bien du reste), alors pourquoi cela bug, et que veut
dire "erreur424" ?

Merci encore pour tes lumières.




Bonsoir.
Essaie :

Sub Recherche()
Dim Str_Plage As String
Dim Cel As Range
Dim Str_critère As String
Dim X As Byte

Str_Plage = "CEU!A3:A65536"
Str_critère = InputBox("CEU à rechercher ?")
For Each Cel In Range(Str_Plage)
If UCase(Cel) = UCase(Str_critère) Then
X = MsgBox("CEU """ & Str_critère & """ trouvé :" & Chr(13) & _
"à l'adresse : " & Cel.Address(0, 0) & Chr(13) & Chr(13) & _
"Oui : on arrête la recherche et on y va" & Chr(13) & _
"Non : on continue la recherche " & Chr(13) & _
"Annuler : on arrête la recherche" & Chr(13), vbDefaultButton1 + _
vbQuestion + vbYesNoCancel, "MOT TROUVÉ")
Select Case X
Case 6
Feuil.Activate
Cel.Activate
Exit Sub
Case 2 'annuler on sort
Exit Sub
Case Else 'Non=7
'on fait rien, mais on pourrait
End Select
End If
Next Cel
MsgBox ("pas trouvé")
End Sub

"lograd" a écrit dans le message de news:

Bonjour daniel,
en fait dans la recherche la macro va aussi dans la feuille Macro1 et
ma cellule A26 c'est celle de la Macro XL4, d'ou l'erreur.
Il faudrait que ma recherche ne soit que sur ma Feuille "CEU" et non
tout le calsseur.
As tu une idée pour modifier la macro VBA dans se cas ?
Merci et bonne journée.


Bonjour.
Je vais être absent pour la journée. Qu'est-ce que tu entends par " des
feuilles macro" ? des feuilles macro XL4 ? Comment te génèrent-elle s des
erreurs ?
Daniel
"lograd" a écrit dans le message de news:

Daniel peux tu me répondre SVP,
Comment executer ma macro sans que les deux feuilles de macro ne
generent des erreurs?

En fait je viens de comprendre.
J'ai des feuilles Macro qui générent les erreurs.
Alors Pourquoi ?


La valeur de A26, c'est quoi ?
Daniel
"lograd" a écrit dans le message de new s:

Merci,
cela me donne : : Var3 : "$A$26" : Variant/String
Si je comprend bien c'est la cellule A26 qui fait tout planter ?
Mais en A26 il n'y a rien qui cloche, c'est pareille que dans les
autres cellule de la colonne A.
Juste la recopie de la cellule J.
Donc je COULE.
A tu une Idée ?



OK, je regarde.
Encore merci pour tes lumieres.


L'erreur vient de la cellule qui a pour valeur "VRAI". Pour la
localiser
Ajoute Var3Îl.address
après Var2=UCase(Str_critère)
Cela va te donner l'adresse de la cellule qui fait planter.
Il te restera à savoir pourquoi elle a cette valeur.
Daniel
"lograd" a écrit dans le message de
news:

Les valeurs de :
: Var1 : "VRAI" : Variant/String
: Var2 : "00140" : Variant/String

En espérant que cela t'aide à m'aider.


Dans l'éditeur Visual Basic, clique sur Affichage / Fenêt re
variables
locales. Tu obtiens une nouvelle fenêtre affichant la valeu r de
tes
variables. Tu peux également positionner le curseur de la s ouris
(sans
cliquer), dans le code, sur la variable dont tu veux connaî tre
la
valeur.
Daniel
"lograd" a écrit dans le message de
news:

J'ai bien placé les deux lignes
Var1=UCase(Cel)
Var2=UCase(Str_critère)
avant If UCase(Cel) = UCase(Str_critère) Then
et voila le message d'erreur:
"Erreur d'execution 13
incompatibilité de type"
et c'est tout.
Ou veux tu que je releve les valeurs VAR1 et VAR2 lorsque cela
plante
?
Merci.Je patoge un peu :)




Avant la ligne :
If UCase(Cel) = UCase(Str_critère) Then
Mets :
Var1=UCase(Cel)
Var2=UCase(Str_critère)
Quand la macro plante, relève les valeurs de Var1 et Var2 et
reviens
les
poster.
Daniel
"lograd" a écrit dans le messag e de
news:

Bonjour Daniel,

en fait dans ma colonne A les chiffres proviennent d'une au tre
cellule.
je m'explique:
En colonne I il y a une serie de formule et en colonne J
aussi.
Mes chiffres de la colonne A proviennent de J, de la maniere
suivante :
A3=J3 ; A4=J4 etc..
EN I : I3=si(F2>0;125;"") reference de depart pour n° a uto en
colonne
A.
Puis I4=si(F3>0;A3+1;"") , I5=si(F4>0;A4+1;"") etc.
Enfin en J : En J3 =TEXTE(I3;"00000") , en I4
=TEXTE(I4;"00000")
etc
D'ou en A3=J3 ; A4=J4.
Pourquoi tout cela car je dois avoir des chiffres de la for me
"00125"
en colonne A.
Merci de ton aide.
En esperant que tu es compris.



Bonjour.
Ta macro s'exécute normalement chez moi.
Quelles sont les valeurs de Str_critère et de la cellul e au
moment
du
plantage ?
Cordialement.
Daniel
"lograd" a écrit dans le mess age
de
news:

Bonjour,
j'ai une macro qui me permet d'effectuer une recherche sur
la
colonne
"A" de ma Feuille "CEU".
J' ai une erreur lorsque celle-ci ne trouve pas le chiffre
demander,
au
lieu de mettre : "Pas trouvé".
Si quelqu'un d'expert, et je sais qu'il y en a, peu m'aid er,
merci.

Après debbogage la ligne : ' If UCase(Cel) =
UCase(Str_critère)
Then
' est en jaune.

Sub Recherche()
Dim Str_Plage As String
Dim Cel As Range
Dim Feuil As Worksheet
Dim Str_critère As String
Dim X As Byte

Str_Plage = "A3:A65536"
Str_critère = InputBox("CEU à rechercher ?")
For Each Feuil In Sheets
For Each Cel In Feuil.Range(Str_Plage)
If UCase(Cel) = UCase(Str_critère) Then
X = MsgBox("CEU """ & Str_critère & """ trouvé :" & Chr(13)
&
_
"Sur la feuille : " & Feuil.Name & Chr(13) & _
"à l'adresse : " & Cel.Address(0, 0) & Chr(13) & Chr(13 ) & _
"Oui : on arrête la recherche et on y va" & Chr(13) & _
"Non : on continue la recherche " & Chr(13) & _
"Annuler : on arrête la recherche" & Chr(13),
vbDefaultButton1
+ _
vbQuestion + vbYesNoCancel, "MOT TROUVÉ")
Select Case X
Case 6
Feuil.Activate
Cel.Activate
Exit Sub
Case 2 'annuler on sort
Exit Sub
Case Else 'Non=7
'on fait rien, mais on pourrait
End Select
End If
Next Cel
Next Feuil
MsgBox ("pas trouvé")
End Sub


















1 2 3