Bonjour, j'ai un fichier avec 2 onglets, l'onglet 1 mon tableau, l'onglet 2 ma base de données. Je souhaiterai pouvoir inscrire un champ dans une cellule du tableau 1 et qu'automatiquement les autres champ liés à ce que j'ai écrit et qui se trouvent dans la base de données (onglet 2) s'écrivent dans l'onglet 1 :
Feuil1 : une colonne C avec les données (ici un nom) que je rentre, une colonne D où doivent se marquer automatiquement les autres données qui lui sont liées dans la BD.
Feuil2 : une colonne A avec tous les noms (qui va donc comparer si la valeur entrée dans Feuil1 colonne C est présente dans la colonne A) une colonne B où se trouvent les autres infos à mettre dans la colonne D feuil1.
Je joins le fichier excel pour illustrer
Voici mon début de code, pouvez vous me dire ce qui ne va pas stp, merci.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim j, lineMax As Integer
lineMax = Sheets("Feuil2").Range("b65536").End(xlUp).Row
If Target = Range(Cells(ActiveCell.Row, 3).Value) Then
For j = 1 To 4
If Sheets("Feuil1").Cells(ActiveCell.Row, 3) = Sheets("Feuil2").Range("A" & j) Then
Range(Cells(ActiveCell.Row, 4)).Select
Selection.Value = Sheets("Feuil2").Range("B" & j).Value
Else
MsgBox "Nom inconnu"
End If
Next j
End If
End Sub
Feuil1 : une colonne C avec les données (ici un nom) que je rentre, une colonne D où doivent se marquer automatiquement les autres données qui lui sont liées dans la BD.
Feuil2 : une colonne A avec tous les noms (qui va donc comparer si la valeur entrée dans Feuil1 colonne C est présente dans la colonne A) une colonne B où se trouvent les autres infos à mettre dans la colonne D feuil1.
Je joins le fichier excel pour illustrer
Voici mon début de code, pouvez vous me dire ce qui ne va pas stp, merci.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim j, lineMax As Integer
lineMax = Sheets("Feuil2").Range("b65536").End(xlUp).Row
If Target = Range(Cells(ActiveCell.Row, 3).Value) Then
For j = 1 To 4
If Sheets("Feuil1").Cells(ActiveCell.Row, 3) = Sheets("Feuil2").Range("A" & j) Then
Range(Cells(ActiveCell.Row, 4)).Select
Selection.Value = Sheets("Feuil2").Range("B" & j).Value
Else
MsgBox "Nom inconnu"
End If
Next j
End If
End Sub