Recherche à dans une colonne et ecriture à la ligne

Résolu/Fermé
Hervé - 14 mars 2016 à 11:50
AKH.COVI
Messages postés
37
Date d'inscription
lundi 14 mars 2016
Statut
Membre
Dernière intervention
22 février 2018
- 14 mars 2016 à 17:13
Bonjour,
J'aimerais pouvoir effectuer une recherche d'un mot dans une colonne de mon tableau excel et ensuite écrire dans une cellule de la ligne sur lequel le mot à été trouver.
Merci d'avance


2 réponses

jordane45
Messages postés
35709
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 juin 2022
4 193
14 mars 2016 à 11:52
0
AKH.COVI
Messages postés
37
Date d'inscription
lundi 14 mars 2016
Statut
Membre
Dernière intervention
22 février 2018

14 mars 2016 à 12:21
Merci Monsieur,
j'ai bien eu ce code mais la grande inquiétude est que sur mon formulaire, je récupère le mot que je veux chercher et une fois que je l'ai, je procède à sa recherche dans le tableau ensuite s'il es trouvé, je sélectionne la ligne que je rempli d'autres données
Ex j'ai une BD
CLASSE INTERVENANT

CP1
CP2
CE1
CE2
maintenant le formulaire me demande de saisir la classe et l'intervenant
si la classe existe automatiquement l'intervenant renseigné doit être positionné dans la colonne concernée sur la ligne de la classe cherchée.
0
jordane45
Messages postés
35709
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 juin 2022
4 193 > AKH.COVI
Messages postés
37
Date d'inscription
lundi 14 mars 2016
Statut
Membre
Dernière intervention
22 février 2018

14 mars 2016 à 12:23
Oui... et ?
Je répète .... UTILISE LA METHODE FIND.

Si tu rencontres des difficultés pour l'utiliser, ... reviens nous voir avec le code essayé qu'on puisse voir où se trouve ton erreur.

NB: **** Attention ****
Merci de bien vouloir utiliser la coloration syntaxique (les balises de code) lorsque tu postes du code sur le forum.
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code

.
0
AKH.COVI
Messages postés
37
Date d'inscription
lundi 14 mars 2016
Statut
Membre
Dernière intervention
22 février 2018

14 mars 2016 à 15:03
Private Sub CommandButton3_Click()
'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 "Entré au clavier et recuperer dans RefFactC"
Valeur_Cherchee = RefFactC
    'dans la première colonne de la feuille active
Set PlageDeRecherche = ActiveSheet.Columns(2)
'*******************************

'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
    Range("K" & Trouve.Address).Value = DateFactC
End If
MsgBox AdresseTrouvee
'vidage des variables
Set PlageDeRecherche = Nothing
Set Trouve = Nothing
End Sub
0
jordane45
Messages postés
35709
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 juin 2022
4 193
Modifié par jordane45 le 14/03/2016 à 15:07
Oui et ?


De plus... as tu regardé ce que retourne la propriété Address ?
Range("K" & Trouve.Address).Value = DateFactC

https://docs.microsoft.com/fr-fr/office/vba/api/excel.range.address?redirectedfrom=MSDN

Toi c'est uniquement la LIGNE que tu veux .. donc ROW
https://docs.microsoft.com/fr-fr/office/vba/api/excel.range.row?redirectedfrom=MSDN
0
AKH.COVI
Messages postés
37
Date d'inscription
lundi 14 mars 2016
Statut
Membre
Dernière intervention
22 février 2018
> jordane45
Messages postés
35709
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 juin 2022

14 mars 2016 à 15:28
Oui ça me retourne l'adresse de la cellule.
Maintenant comment je procède pour enregistrer dans la cellule concernée?
0
jordane45
Messages postés
35709
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 juin 2022
4 193 > AKH.COVI
Messages postés
37
Date d'inscription
lundi 14 mars 2016
Statut
Membre
Dernière intervention
22 février 2018

14 mars 2016 à 16:01
Tu as lu entièrement ma réponse précédente ? et les liens que je t'ai donné ?
0
AKH.COVI
Messages postés
37
Date d'inscription
lundi 14 mars 2016
Statut
Membre
Dernière intervention
22 février 2018

14 mars 2016 à 16:17
OUI
0
jordane45
Messages postés
35709
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 juin 2022
4 193 > AKH.COVI
Messages postés
37
Date d'inscription
lundi 14 mars 2016
Statut
Membre
Dernière intervention
22 février 2018

14 mars 2016 à 16:23
Donc tu as la réponse ??? Oo
non ?

Range("K" & Trouve.Row).Value = DateFactC
0