Noms + N

Bonjour le forum

Est t'il possible en tapant des N°,d'avoir le nom qui correspond.

Merci.

31noms-n.xlsx (9.90 Ko)

Bonjour !

Oui absolument. Un recherchev() placer à l'intérieur d'une boucle qui parcoures chacun des numéros de la chaîne saisie...

Minute ! je vais essayer d'écrire le code qu'il faut...


Re.

Désolé pour le temps. Tu fais Ctrl+t pour exécuter la marco

16noms-n.xlsm (16.07 Ko)

Bonjour doudou1960, le forum,

je te propose ce fichier Excel :

4noms-n.xlsm (17.78 Ko)

note bien que D24 est vide ; Ctrl e ➯ résultat en D24

alignement à gauche pour D1 ➯ si y'a qu'un seul n°,

il est aussi à gauche (et pas tout au bout à droite)

Alt F11 pour voir le code VBA, puis revenir sur Excel


@zot

* tu as oublié de mettre le raccourci Ctrl t ; il faut donc lancer la macro via Alt F8

* tu as très bien fait d'utiliser Split() et VLookup() !

moi, j'avais fait au départ une bête inversion :

j'ai cherché les noms (de D24) en colonne B avec Find() et j'ai mis les numéros correspondants en D1

j'ai corrigé mon code VBA :

je cherche les numéros (de D1) en colonne A avec Find() et mets les noms correspondants en D24

(même si dans c'cas c'est mieux d'utiliser VLookup(), j'ai quand même laissé mon fichier actuel)

dhany

* tu as oublié de mettre le raccourci Ctrl t ; il faut donc lancer la macro via Alt F8

Je suis pourtant sûr d'avoir bien mis le raccourcis Ctrl+t. Certainement en rapport avec le problème survenu à l’enregistrement dû au changement du format .xls en .xlsm. Merci tout de même camarade. Et aussi pour le like


@doudou1960

Comme le dit dhany, avec mon fichier, tu devras au préalable enregistrer un raccourcis qui va avec la macro, comme ceci:

ALT+F8, puis sélectionne le nom de la macro transcrire ;

Ensuite, cliques le bouton Option et appuis la touche t (tu peux aussi appuyer une autre touche);

Enfin, tu valide une première fois avec le bouton Ok, et tu refermes la fenêtre des macros.

Retour à ta feuille de calcul:

1°) Tu saisis une suite de numéros en D1;

2°) Tu lance Ctrl t et hope ! ➯ résultat en D24


Ok ci-joint le fichier avec le raccourcis déjà créer.

6noms-n.xlsm (17.38 Ko)

OK merci à vous deux.

Bonjour, Salut à tous !

Une version automatique : opère la conversion à validation du contenu de la cellule en D. Tu peux compléter une liste déjà existante. Si un numéro n'existe pas, il n'est pas converti.

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim Lst, n, i%
    If Target.Count > 1 Then Exit Sub
    If Target.Column = 4 And Me.Cells(Target.Row, 1) <> "" Then
        Lst = Split(Target, "-")
        On Error Resume Next
        For i = 0 To UBound(Lst)
            Lst(i) = Trim(Lst(i))
            If IsNumeric(Lst(i)) Then
                n = WorksheetFunction.Match(CInt(Lst(i)), Me.Columns("A"), 0)
                If Err.Number = 0 Then
                    Lst(i) = Me.Cells(n, 2)
                Else
                    Err.Clear
                End If
            End If
        Next i
        On Error GoTo 0
        Application.EnableEvents = False
        Target = Join(Lst, " - ")
        Application.EnableEvents = True
    End If
End Sub

Cordialement.

Rechercher des sujets similaires à "noms"