Rech 1 valeur dss une plage & renvoi titre colonn
Am
-
cs_Le Pivert Messages postés 8437 Statut Contributeur -
cs_Le Pivert Messages postés 8437 Statut Contributeur -
Bonjour,
Je souhaite rechercher une valeur dans une plage de cellules (ex : J3:AA19) et lorsque la valeur est trouvée, afficher le titre de la colonne.
Il s'agit d'un tableau qui affiche les étapes d'un projet et une fois par ligne, il est indiqué "en attente" (càd là où on en est. Exemple : facturation). Je souhaiterais afficher dans un tableau le titre de la colonne où se trouve le "en attente". Je ne sais pas si je suis claire...
Je souhaite rechercher une valeur dans une plage de cellules (ex : J3:AA19) et lorsque la valeur est trouvée, afficher le titre de la colonne.
Il s'agit d'un tableau qui affiche les étapes d'un projet et une fois par ligne, il est indiqué "en attente" (càd là où on en est. Exemple : facturation). Je souhaiterais afficher dans un tableau le titre de la colonne où se trouve le "en attente". Je ne sais pas si je suis claire...
A voir également:
- Rech 1 valeur dss une plage & renvoi titre colonn
- Déplacer une colonne excel - Guide
- Trouver un film sans le titre - Télécharger - Divers TV & Vidéo
- Je cherche une chanson dont je ne connais pas le titre - Guide
- Image de manchots sur une image de plage. - Forum Graphisme
- Trier une colonne excel - Guide
1 réponse
Bonjour,
Voir ceci en vba:
https://forums.commentcamarche.net/forum/affich-37621992-methode-find-dans-vba-recherche-de-donnees-sous-excel#exemple-d-utilisation
ce qui donne:
Tu remplaces les MsgBox par des variables
Voilà
Voir ceci en vba:
https://forums.commentcamarche.net/forum/affich-37621992-methode-find-dans-vba-recherche-de-donnees-sous-excel#exemple-d-utilisation
ce qui donne:
Sub Cherche()
'déclaration des variables :
Dim Trouve As Range, PlageDeRecherche As Range
Dim Valeur_Cherchee As String, AdresseTrouvee As String
'********* à adapter ***********
'affectation de valeurs aux variables :
'on cherche le mot "Trouve"
Valeur_Cherchee = "Trouve"
'dans la première colonne de la feuille active
Set PlageDeRecherche = ActiveSheet.Range("J3:AA19")
'*******************************
'méthode find, ici on cherche la valeur exacte (LookAt:=xlWhole)
Set Trouve = PlageDeRecherche.Cells.Find(what:=Valeur_Cherchee, LookAt:=xlWhole)
'traitement de l'erreur possible : Si on ne trouve rien :
If Trouve Is Nothing Then
'ici, traitement pour le cas où la valeur n'est pas trouvée
AdresseTrouvee = Valeur_Cherchee & " n'est pas présent dans " & PlageDeRecherche.Address
Else
'ici, traitement pour le cas où la valeur est trouvée
AdresseTrouvee = Trouve.Address
End If
MsgBox AdresseTrouvee
MsgBox Trouve.Column 'colonne
MsgBox Trouve.Row 'ligne
MsgBox Cells(1, Trouve.Column).Value 'en-tete colonne
'vidage des variables
Set PlageDeRecherche = Nothing
Set Trouve = Nothing
End Sub
Tu remplaces les MsgBox par des variables
Voilà