Find " erreur d'exectution "91"

C

Chico

Guest
bonjour a tous,
g une erreur , dès que j'execute ce bout de code :

With Worksheets('Base_Personnel').Range('B1:B100')
Set c = .Find(what:=ValAChercher, LookIn:=xlValues)
i = c.row
End With

ValAChercher = '06.01.2006'
les cellules 'B1:B100' de la feuil 'Base_personnel'
contienne les dates a partir du 1er janvier 2006
01.01.2006
02.01.2006
..
..
mais g une erreur quand j'arrive a la commande:
i = c.row
(erreur d'execution '91',
variable objet ou variable de block Whit non definie)
pouvez vous m'aider a trouver l'erreur?
merci d'avance
-Chico-
 
C

chico

Guest
salut pascal
malheuruesement je peux pas envoyer le fichier ( trop grand )
mais j'ai refais la meme situation sur un autre classur
feuil2 les dates du mois de janvier
et sur feuil1 la date a chercher.
et ca marche
malheureusement je ne comprend pas pourkoi ca marche pas sur mon classeur original.

salut salim,
g rajouté set avant le i =
mais tjrs pareil
Worksheets('Base_Personnel').Range('B1:B100')
existe bien avec des valeurs dans les cellules
par contre je sait pas ce que tu veut dire par ' faire reference a un objet valide?
 

salim

XLDnaute Occasionnel
Oui Pascal c'est pas à la propriété Row à laquelle je faisait allusion :lol: mais à c puisque ça doit être un Objet Range mais bon de toute façon tu as quand même raison puisque chez moi ce petit bout de code fonctionne :

Code:
Option Explicit

Sub test()
Dim ValAChercher$, i%, c As Range
    ValAChercher = 'salim'
    With Worksheets('Feuil1').Range('B1:B100')
        Set c = .Find(what:=ValAChercher, LookIn:=xlValues)
        i = c.Row
    End With
End Sub

salim
 
C

chico

Guest
pascal:
dim i as Byte

une question dans la feuille 'Base_Personnel'
g commencé la colonne de date comme suit:

B4 '=DATE(Accueil!K9;1;1)' (dans la barre des formules :::' 'K9= 2006 ':::
B5 '=B4+1'

je sais pas si une cellule fait reference a une autre la fonction FIND, marche encore ?
 

Hervé

XLDnaute Barbatruc
Bonjour tout le monde :)


Chico, as tu tester ton c avant de récupérer le numéro de ligne ?

en reprenant la macro de salim
Option Explicit
Sub test()
Dim ValAChercher$, i%, c As Range
ValAChercher = 'salim'
With Worksheets('Feuil1').Range('B1:B100')
Set c=.Find(what:=ValAChercher,LookIn:=xlValues)
If c Is Nothing Then MsgBox 'vide'
i = c.Row
End With

End Sub

Si ton objet c est vide tu as une erreur 91.

soit tu as un souci de convertion de données, soit tu n'as pas de données correspondantes

voilà c'est une piste de réflexion.

salut
 

PascalXLD

XLDnaute Barbatruc
Modérateur
Re

Mais oui mais c'est bien sûr.

Oh là on doit être fatigué là

Verifies bien que tes 2 valeurs celle à chercher et celles de ta colonne sont bien identiques.

Si cela se trouve tu as des dates d'un coté avec du texte de l'autre

Bon courage et merci Hervé
 
C

chico

Guest
rebonjour Pascale,hervé et tous:

oui hier me suis posé la question
g bien verifié que
x= 03.01.2006
et pas x='03.01.2006'
je vous envoi un fichier joint
la colonne A marche et pas la colonne B

merci encore de m'aider
 

Discussions similaires