Recherche cellule
Résolu/Fermé
raveno39
Messages postés
49
Date d'inscription
mardi 6 septembre 2011
Statut
Membre
Dernière intervention
11 septembre 2014
-
Modifié par raveno39 le 3/03/2012 à 20:32
Mike-31 Messages postés 18346 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 13 novembre 2024 - 4 mars 2012 à 17:12
Mike-31 Messages postés 18346 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 13 novembre 2024 - 4 mars 2012 à 17:12
A voir également:
- Recherche cellule
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Excel cellule couleur si condition texte - Guide
- Aller à la ligne dans une cellule excel - Guide
- Verrouiller cellule excel - Guide
- Recherche adresse - Guide
10 réponses
Mike-31
Messages postés
18346
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
13 novembre 2024
5 104
Modifié par Mike-31 le 3/03/2012 à 22:16
Modifié par Mike-31 le 3/03/2012 à 22:16
Salut,
colle ce code dans les propriétés de ta feuille concernée (clic droit sur l'onglet/Visualiser le code), sélectionne la cellule colonne B contenant la valeur saisie en K4. J'ai inclus une gestion d'erreur dans le cas de valeur absente
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim x, c, firstAddress As Variant
On Error Resume Next
If Not Application.Intersect(Target, Range("K4")) Is Nothing Then
Range("K4").Select
x = ActiveCell.Value
With ActiveSheet.Range("B:B")
Set c = .Find(x, LookIn:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
End If
End With
Range(firstAddress).Select
If Err.Number <> 0 Then
MsgBox "Cette valeur est absente colonne B ", , "La recherche ne peut aboutir,"
Err.Clear
End If
End If
End Sub
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
colle ce code dans les propriétés de ta feuille concernée (clic droit sur l'onglet/Visualiser le code), sélectionne la cellule colonne B contenant la valeur saisie en K4. J'ai inclus une gestion d'erreur dans le cas de valeur absente
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim x, c, firstAddress As Variant
On Error Resume Next
If Not Application.Intersect(Target, Range("K4")) Is Nothing Then
Range("K4").Select
x = ActiveCell.Value
With ActiveSheet.Range("B:B")
Set c = .Find(x, LookIn:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
End If
End With
Range(firstAddress).Select
If Err.Number <> 0 Then
MsgBox "Cette valeur est absente colonne B ", , "La recherche ne peut aboutir,"
Err.Clear
End If
End If
End Sub
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
raveno39
Messages postés
49
Date d'inscription
mardi 6 septembre 2011
Statut
Membre
Dernière intervention
11 septembre 2014
15
4 mars 2012 à 08:12
4 mars 2012 à 08:12
Merci pour ta réponse qui repond à mes attentes
j'ai installé ton code et l'ai adapté à mon tableau en modifiant les référence de cellule et ça marche.
Par contre j'ai voulu m'en servir dans un tableau où la valeurs dans la colonne est une date (ven 06/1), ça ne marche que si je transforme cette date en nombre (49014).
pourrais-je abuser de ta patient pour m'indiquer comme modifier ton code pour que cela marche avec une date.
bonne journée
j'ai installé ton code et l'ai adapté à mon tableau en modifiant les référence de cellule et ça marche.
Par contre j'ai voulu m'en servir dans un tableau où la valeurs dans la colonne est une date (ven 06/1), ça ne marche que si je transforme cette date en nombre (49014).
pourrais-je abuser de ta patient pour m'indiquer comme modifier ton code pour que cela marche avec une date.
bonne journée
Mike-31
Messages postés
18346
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
13 novembre 2024
5 104
4 mars 2012 à 09:12
4 mars 2012 à 09:12
Re,
Faudrait voir comment sont saisies tes dates, pour ven 06/1 si tu saisis la date comme cela, elle est considérée comme texte alors soit tu saisis dans la cellule critère de la même façon soit ven 06/1 qui correspond certainement à une date vendredi 6 janvier 2012 il faut donc saisir la date dans un format alphanumérique reconnu par Excel 6/1/12 par exemple et formater la ou les cellules avec un format personnalisé jjj jj/mm ce qui affichera bien Ven 06/01
ou jjj jj/m pour afficher Ven 06/1
et la ça marche
Faudrait voir comment sont saisies tes dates, pour ven 06/1 si tu saisis la date comme cela, elle est considérée comme texte alors soit tu saisis dans la cellule critère de la même façon soit ven 06/1 qui correspond certainement à une date vendredi 6 janvier 2012 il faut donc saisir la date dans un format alphanumérique reconnu par Excel 6/1/12 par exemple et formater la ou les cellules avec un format personnalisé jjj jj/mm ce qui affichera bien Ven 06/01
ou jjj jj/m pour afficher Ven 06/1
et la ça marche
raveno39
Messages postés
49
Date d'inscription
mardi 6 septembre 2011
Statut
Membre
Dernière intervention
11 septembre 2014
15
4 mars 2012 à 10:55
4 mars 2012 à 10:55
c'est ce que j'avais fait et cela ne fonctionne pas
a+
a+
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
cousinhub29
Messages postés
955
Date d'inscription
mardi 10 août 2010
Statut
Membre
Dernière intervention
15 novembre 2024
344
4 mars 2012 à 11:53
4 mars 2012 à 11:53
Bonjour,
Essaie ainsi :
Bon dimanche
Essaie ainsi :
Dim LaDate As Date Dim C As Range LaDate = CDate(Range("F1").Value) Set C = Columns(2).Find(LaDate, LookIn:=xlValues) If Not C Is Nothing Then MsgBox C.Address End If
Bon dimanche
Mike-31
Messages postés
18346
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
13 novembre 2024
5 104
4 mars 2012 à 14:52
4 mars 2012 à 14:52
Re,
regarde le fichier joint annoté
https://www.cjoint.com/?BCeo0qUJt9a
regarde le fichier joint annoté
https://www.cjoint.com/?BCeo0qUJt9a
cousinhub29
Messages postés
955
Date d'inscription
mardi 10 août 2010
Statut
Membre
Dernière intervention
15 novembre 2024
344
4 mars 2012 à 15:23
4 mars 2012 à 15:23
re-,
En partant du principe de Mike, un essai :
Bon dimanche
En partant du principe de Mike, un essai :
Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Range("K4"), Target) Is Nothing Then If Not IsError(Application.Match(Target, Columns(2), 0)) Then MsgBox Cells(Application.Match(Target, Columns(2), 0), 2).Address End If End If End Sub
Bon dimanche
Mike-31
Messages postés
18346
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
13 novembre 2024
5 104
4 mars 2012 à 16:22
4 mars 2012 à 16:22
Re,
Je crois que Raveno souhaitait sélectionner la cellule colonne B contenant la valeur en K4, en panachant les codes avec celui de Cousinhub que je salue cela pourrait
donner ceci
1/ sélection de la valeur
2/ message si la valeur est absente colonne B
3/ reformatage de la cellule en standard en fin de procédure
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim x As Variant
If Not Intersect(Range("K4"), Target) Is Nothing Then
If Not IsError(Application.Match(Target, Columns(2), 0)) Then
x = Cells(Application.Match(Target, Columns(2), 0), 2).Address
Range(x).Select
End If
If x = False Then MsgBox "Cette valeur est absente colonne B ", , "La recherche ne peut aboutir,"
End If
[K4].NumberFormat = "General"
End Sub
Je crois que Raveno souhaitait sélectionner la cellule colonne B contenant la valeur en K4, en panachant les codes avec celui de Cousinhub que je salue cela pourrait
donner ceci
1/ sélection de la valeur
2/ message si la valeur est absente colonne B
3/ reformatage de la cellule en standard en fin de procédure
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim x As Variant
If Not Intersect(Range("K4"), Target) Is Nothing Then
If Not IsError(Application.Match(Target, Columns(2), 0)) Then
x = Cells(Application.Match(Target, Columns(2), 0), 2).Address
Range(x).Select
End If
If x = False Then MsgBox "Cette valeur est absente colonne B ", , "La recherche ne peut aboutir,"
End If
[K4].NumberFormat = "General"
End Sub
raveno39
Messages postés
49
Date d'inscription
mardi 6 septembre 2011
Statut
Membre
Dernière intervention
11 septembre 2014
15
Modifié par raveno39 le 4/03/2012 à 16:53
Modifié par raveno39 le 4/03/2012 à 16:53
Les deux formule me vont bien
merci
merci
Mike-31
Messages postés
18346
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
13 novembre 2024
5 104
4 mars 2012 à 17:12
4 mars 2012 à 17:12
Re,
L'union fait la force et celle d'un forum de référence comme comment ça marche.
N'oublie pas de mettre le statut de la discussion en résolu que cette discussion serve de référence
Cordialement
L'union fait la force et celle d'un forum de référence comme comment ça marche.
N'oublie pas de mettre le statut de la discussion en résolu que cette discussion serve de référence
Cordialement