Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
michdenis
Bonjour Christine,
Essaie ceci en adaptant le nom de la feuille et de la plage de cellules
'---------------------------- Dim Rg As Range Dim LaDate As Date LaDate = DateSerial(2007, 2, 10) With worksheets("Feuil2") With .Range("A1:A50") Set Rg = .Find(What:=LaDate, LookIn:=xlFormulas) If Not Rg Is Nothing Then MsgBox Rg.Address & " " & Rg.Value Else MsgBox "Pas trouver la date demandée" End If End with End With '----------------------------
Salutations!
"Imbeault Christine" a écrit dans le message de news: Bonjour à tous, A25 06-04-01
j'exécuter cette fonction en vba a = Worksheets(2).Range("a25").Find("2006-04-01"; xlvalues)
Mais la fonction plante tout le temps
Merci à l'avance Christine
Bonjour Christine,
Essaie ceci en adaptant le nom de la feuille et de la plage de cellules
'----------------------------
Dim Rg As Range
Dim LaDate As Date
LaDate = DateSerial(2007, 2, 10)
With worksheets("Feuil2")
With .Range("A1:A50")
Set Rg = .Find(What:=LaDate, LookIn:=xlFormulas)
If Not Rg Is Nothing Then
MsgBox Rg.Address & " " & Rg.Value
Else
MsgBox "Pas trouver la date demandée"
End If
End with
End With
'----------------------------
Salutations!
"Imbeault Christine" <imbeault.christine@qcmines.com> a écrit dans le message de news: eSYAKkPKGHA.2828@TK2MSFTNGP12.phx.gbl...
Bonjour à tous,
A25 06-04-01
j'exécuter cette fonction en vba
a = Worksheets(2).Range("a25").Find("2006-04-01"; xlvalues)
Essaie ceci en adaptant le nom de la feuille et de la plage de cellules
'---------------------------- Dim Rg As Range Dim LaDate As Date LaDate = DateSerial(2007, 2, 10) With worksheets("Feuil2") With .Range("A1:A50") Set Rg = .Find(What:=LaDate, LookIn:=xlFormulas) If Not Rg Is Nothing Then MsgBox Rg.Address & " " & Rg.Value Else MsgBox "Pas trouver la date demandée" End If End with End With '----------------------------
Salutations!
"Imbeault Christine" a écrit dans le message de news: Bonjour à tous, A25 06-04-01
j'exécuter cette fonction en vba a = Worksheets(2).Range("a25").Find("2006-04-01"; xlvalues)
Mais la fonction plante tout le temps
Merci à l'avance Christine
JB
Bonjour,
x = CDate("03/02/2006") Set a = Range("a:a").Find(What:=x) Range(a.Address).Select
ou
x = CDate("03/02/2006") Range("a:a").Find(What:=x).Select
Cordialement JB
Bonjour,
x = CDate("03/02/2006")
Set a = Range("a:a").Find(What:=x)
Range(a.Address).Select
ou
x = CDate("03/02/2006")
Range("a:a").Find(What:=x).Select
Ne fonctionne pas si les dates sont obtenues à partir de formules (C'est l'option XlValues qu'il faut).
Cordialement JB
michdenis
Si les dates dans la plage de cellules sont le résultat de formule, La seule méthode fiable est Match()
'------------------------------- Sub test()
Dim LaDate As Date, D As Long LaDate = DateSerial(2006, 2, 10) On Error Resume Next With Worksheets("Feuil1") D = Application.Match(CLng(LaDate), .Range("A1:A50"), 0) If Err = 0 Then MsgBox Range("A" & D).Address & " " & Range("A" & D).Value Else MsgBox "Pas trouver la date demandée" End If End With End Sub '-------------------------------
Salutations!
"JB" a écrit dans le message de news: Bonjour,
| Set Rg = .Find(What:=LaDate, LookIn:=xlFormulas
Ne fonctionne pas si les dates sont obtenues à partir de formules (C'est l'option XlValues qu'il faut).
Cordialement JB
Si les dates dans la plage de cellules sont le résultat de formule,
La seule méthode fiable est Match()
'-------------------------------
Sub test()
Dim LaDate As Date, D As Long
LaDate = DateSerial(2006, 2, 10)
On Error Resume Next
With Worksheets("Feuil1")
D = Application.Match(CLng(LaDate), .Range("A1:A50"), 0)
If Err = 0 Then
MsgBox Range("A" & D).Address & " " & Range("A" & D).Value
Else
MsgBox "Pas trouver la date demandée"
End If
End With
End Sub
'-------------------------------
Salutations!
"JB" <boisgontier@hotmail.com> a écrit dans le message de news: 1139003531.261519.111470@o13g2000cwo.googlegroups.com...
Bonjour,
| Set Rg = .Find(What:=LaDate, LookIn:=xlFormulas
Ne fonctionne pas si les dates sont obtenues à partir de formules
(C'est l'option XlValues qu'il faut).
Si les dates dans la plage de cellules sont le résultat de formule, La seule méthode fiable est Match()
'------------------------------- Sub test()
Dim LaDate As Date, D As Long LaDate = DateSerial(2006, 2, 10) On Error Resume Next With Worksheets("Feuil1") D = Application.Match(CLng(LaDate), .Range("A1:A50"), 0) If Err = 0 Then MsgBox Range("A" & D).Address & " " & Range("A" & D).Value Else MsgBox "Pas trouver la date demandée" End If End With End Sub '-------------------------------
Salutations!
"JB" a écrit dans le message de news: Bonjour,
| Set Rg = .Find(What:=LaDate, LookIn:=xlFormulas
Ne fonctionne pas si les dates sont obtenues à partir de formules (C'est l'option XlValues qu'il faut).
Cordialement JB
AV
| | Set a = Range("a:a").Find(What:=x) | C'est court comme présentation, mais je serais étonné que cela fasse | mouche à tout coup avec la méthode Find.
Je ne peux que souscrire à cette réserve !
x = CDate("03-02-2006") Range("a:a").Find(What:=x).Select
Si la date recherchée n'est pas inscrite en dur mais est le résultat d'une formule, c'est le plouf garanti à tous les coups !
x = CDate("04-02-2006") Range("A" & Application.Match(x * 1, [A:A], 0)).Select
AV
| | Set a = Range("a:a").Find(What:=x)
| C'est court comme présentation, mais je serais étonné que cela fasse
| mouche à tout coup avec la méthode Find.
Je ne peux que souscrire à cette réserve !
x = CDate("03-02-2006")
Range("a:a").Find(What:=x).Select
Si la date recherchée n'est pas inscrite en dur mais est le résultat d'une
formule, c'est le plouf garanti à tous les coups !
x = CDate("04-02-2006")
Range("A" & Application.Match(x * 1, [A:A], 0)).Select
| | Set a = Range("a:a").Find(What:=x) | C'est court comme présentation, mais je serais étonné que cela fasse | mouche à tout coup avec la méthode Find.
Je ne peux que souscrire à cette réserve !
x = CDate("03-02-2006") Range("a:a").Find(What:=x).Select
Si la date recherchée n'est pas inscrite en dur mais est le résultat d'une formule, c'est le plouf garanti à tous les coups !
x = CDate("04-02-2006") Range("A" & Application.Match(x * 1, [A:A], 0)).Select
AV
JB
Cette méthode fonctionne parfaitement. Il suffit de spécifier le paramètre: LookIn:=xlValues) Si le paramètre LookIn n'est pas spécifié, Excel reprend par défaut la valeur qu'il avait lors de la recherche précédente. C'est de là que proviennent les pseudo problèmes évoqués.
Sub essai() x = CDate("03-02-2006") Set a = Range("a:a").Find(What:=x, LookIn:=xlValues) If a Is Nothing Then MsgBox "non trouvé" Else MsgBox a.Address Range(a.Address).Select End If End Sub
En outre,Find permet d'obtenir toutes les occurences de l'item cherché:
Extrait doc MS:
With Worksheets(1).Range("a1:a500") Set c = .Find(2, lookin:=xlValues) If Not c Is Nothing Then firstAddress = c.Address Do c.Value = 5 Set c = .FindNext(c) Loop While Not c Is Nothing And c.Address <> firstAddress End If End With
JB
Cette méthode fonctionne parfaitement. Il suffit de spécifier le
paramètre: LookIn:=xlValues)
Si le paramètre LookIn n'est pas spécifié, Excel reprend par défaut
la valeur qu'il avait lors de la recherche précédente. C'est de là
que proviennent les pseudo problèmes évoqués.
Sub essai()
x = CDate("03-02-2006")
Set a = Range("a:a").Find(What:=x, LookIn:=xlValues)
If a Is Nothing Then
MsgBox "non trouvé"
Else
MsgBox a.Address
Range(a.Address).Select
End If
End Sub
http://cjoint.com/?cemFMzbstP
En outre,Find permet d'obtenir toutes les occurences de l'item
cherché:
Extrait doc MS:
With Worksheets(1).Range("a1:a500")
Set c = .Find(2, lookin:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
Do
c.Value = 5
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> firstAddress
End If
End With
Cette méthode fonctionne parfaitement. Il suffit de spécifier le paramètre: LookIn:=xlValues) Si le paramètre LookIn n'est pas spécifié, Excel reprend par défaut la valeur qu'il avait lors de la recherche précédente. C'est de là que proviennent les pseudo problèmes évoqués.
Sub essai() x = CDate("03-02-2006") Set a = Range("a:a").Find(What:=x, LookIn:=xlValues) If a Is Nothing Then MsgBox "non trouvé" Else MsgBox a.Address Range(a.Address).Select End If End Sub
En outre,Find permet d'obtenir toutes les occurences de l'item cherché:
Extrait doc MS:
With Worksheets(1).Range("a1:a500") Set c = .Find(2, lookin:=xlValues) If Not c Is Nothing Then firstAddress = c.Address Do c.Value = 5 Set c = .FindNext(c) Loop While Not c Is Nothing And c.Address <> firstAddress End If End With
JB
michdenis
Fais un test en donnant un (ou des) format de cellules personnalisé "date" divers de ta plage de cellules.
Si tu peux confirmer la véracité de ton énoncé, reviens-nous le dire. Ok.
Ce que tu énonces ne recherche pas une date mais une chaîne de caractère. Si le "hasard" veut que la chaîne recherchée ait le format de la date recherchée, la méthode "Find" trouvera ...pas la date mais la chaîne de caractères.
Dans toutes les autres circonstances, la méthode "Find" fait un retentissant : "COUIC" ;-)
Je t'invite donc à moduler le mot "parfaitement" de ton énoncé!
'**************************** Cette méthode fonctionne parfaitement. Il suffit de spécifier le paramètre: LookIn:=xlValues) '****************************
Salutations!
Fais un test en donnant un (ou des) format de cellules
personnalisé "date" divers de ta plage de cellules.
Si tu peux confirmer la véracité de ton énoncé,
reviens-nous le dire. Ok.
Ce que tu énonces ne recherche pas une date mais
une chaîne de caractère. Si le "hasard" veut que la chaîne
recherchée ait le format de la date recherchée, la méthode
"Find" trouvera ...pas la date mais la chaîne de caractères.
Dans toutes les autres circonstances, la méthode "Find" fait un
retentissant : "COUIC" ;-)
Je t'invite donc à moduler le mot "parfaitement" de ton énoncé!
'****************************
Cette méthode fonctionne parfaitement. Il suffit de spécifier le
paramètre: LookIn:=xlValues)
'****************************
Fais un test en donnant un (ou des) format de cellules personnalisé "date" divers de ta plage de cellules.
Si tu peux confirmer la véracité de ton énoncé, reviens-nous le dire. Ok.
Ce que tu énonces ne recherche pas une date mais une chaîne de caractère. Si le "hasard" veut que la chaîne recherchée ait le format de la date recherchée, la méthode "Find" trouvera ...pas la date mais la chaîne de caractères.
Dans toutes les autres circonstances, la méthode "Find" fait un retentissant : "COUIC" ;-)
Je t'invite donc à moduler le mot "parfaitement" de ton énoncé!
'**************************** Cette méthode fonctionne parfaitement. Il suffit de spécifier le paramètre: LookIn:=xlValues) '****************************
Salutations!
AV
....C'est de là que proviennent les pseudo problèmes évoqués.