Ajout nouvelle colonne et noms

Bonjour à tous,

Je me permets de créer un nouveau sujet car je n'arrive pas à faire ce que je souhaite, voila le sujet :

J'ai un tableau avec dans la colonne "N", des prénoms.

1 - J'aimerai si possible, avec un bouton, ajouter une nouvelle colonne en "A"

2 - Via le prénom de la même ligne, associer le nom de la personne

Exemple :

En ligne 2, le prénom est Claude, je voudrais que lorsque nous appuyons sur un bouton, une nouvelle colonne en "A" se crée puis en A2, le nom de famille de Claude s'incrémente avec son prénom.

(Le nom de famille de Claude est DUPONT)

Dans l'onglet feuille 2, j'ai mis ce que j'aimerais obtenir une fois la macro terminée.

Aussi, j'ai une liste de 200 noms, dans l'exemple, j'en ai mis quelques une uniquement, je terminerai l'incrémentation des données.

En espérant être clair, je reste connecté pour plus d'informations

Merci

Bonjour

Une question les noms de Famille sont ou dans ta feuille?

Bonjour Joco,

A j'aimerais les mettre dans le VBA et les ajouter lors d'un besoin

C'est possible ?

Comment veux tu que excel + VBA devinent que Claude s'appelle DUPONT et qu Luc s'appelle DURAND.

Il faut quand même un minimum de renseignements

Je pensais qu'il était possible dans le code VBA de noter Claude = Dumont et ainsi de suite....

Si cela n'est pas possible, je viens d'ajouter un onglet "Liste prénoms et noms" ce qui me semble être une bonne option.

Merci

Je crois que tu n'as pas bien compris et surtout que ton exemple (il ne peut manifestement s'agir que d'un exemple) n'a pas été bien choisi.
Admettons que tu aies un Maurice Durand qui s'ajoute à la liste. Comment savoir, dans la liste "Avant macro" des Maurice, s'il s'agit de Durand ou de Dubois ?

Des associations uniques (n° et noms de département, pays et capitales, par exemple) auraient été préférables.

Bonjour Optimix

Effectivement, mon exemple n'est pas très bien choisi. J'ai donc pris note de t'es conseils et modifié par Pays et Villes.

Bonne journée

Maintenant les choses sont claires. Il faut se méfier des simplifications/déformations.

Sub Macro1()
    Dim ws1 As Worksheet, ws2 As Worksheet
    Dim Tablo() As String, nl As Integer, i As Integer, j As Integer

    Set ws1 = Sheets("Avant macro")
    Set ws2 = Sheets("Liste pays & villes")
    nl = ws2.Cells(Rows.Count, 2).End(xlUp).Row

    ' On met dans un tableau à 2 colonnes les pays et les capitales
    ReDim Tablo(nl - 1, 2)
    For i = 1 To UBound(Tablo)
        Tablo(i, 1) = ws2.Cells(i + 1, 1) ' Pays
        Tablo(i, 2) = ws2.Cells(i + 1, 2) ' Capitale
    Next i

    ' On insère une colonne à gauche
    ws1.Activate
    Columns("A:A").Select
    Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
    Cells(1, 1) = "VILLES"
    nl = ws1.Cells(Rows.Count, 15).End(xlUp).Row ' 15 = nouvelle colonne des villes

    ' et on la remplit
    For i = 2 To nl
        For j = 1 To UBound(Tablo)
            If Tablo(j, 1) = ws1.Cells(i, 15) Then
                ws1.Cells(i, 1) = UCase(Tablo(j, 2))
                Exit For
            End If
        Next j
    Next i
    ws1.Range("A1").Select
End Sub
14pays-villes.xlsm (20.66 Ko)

Bonjour…

Pourquoi se priver du Tableau (structuré) ? Celui-ci étant nommé TB, dans la fenêtre des codes de la feuille le contenant (ne pas confondre avec le tableau de correspondance Pays-Ville nommé TP) :

Private Sub Worksheet_BeforeDoubleClick(ByVal R As Range, Cancel As Boolean)
    If R.Address <> [TB].Item(0, 1).Address Then Exit Sub ‘pour le lancement
    If R = "Ville" Then Exit Sub      ‘on évite une relance préjudiciable
    [TB].ListObject.ListColumns.Add 1 ‘nouvelle colonne avec formule de recherche
    [TB].Columns(1).FormulaR1C1 = "=VLOOKUP([@pays],TP,2,1)"  'on peut ne garger que les valeurs (fichier joint)
    [TB].Item(0, 1) = "Ville"         'on renomme le tritr
End Sub

Merci Optimix, cela fonctionne parfaitement.

Une dernière petite question, si je veux ajouter un pays et une ville dans mon tableau, je dois modifier une partie du code ?

Non, tu peux en ajouter à la suite autant que tu veux.

Rechercher des sujets similaires à "ajout nouvelle colonne noms"