XL 2021 Résolu . Remplir un tableau par macro.

gillesda

XLDnaute Nouveau
Bonjour à tous.

Je fais appel à vos connaissances dans une matière que je ne connais pas, agissant simplement par mimétisme et copiage mais là je ne vois pas.
Je souhaite en effet remplir un tableau de trois noms en cliquant sur un bouton déclenchant une macro qui colle un nom prénom dans un tableau.
Il peut y avoir un, deux, voire trois noms dans ce tableau, et plus si affinité...
Quand ce sont les deux premiers noms, ils se suivent, c'est OK dans la forme.
Quand il s'agit du premier et du dernier, la cellule D4:E4 en l'occurrence reste vide et c'est pas terrible en présentation.
Il doit y avoir une question de x.Up et x.Down mais je là je coince.

Si quelqu'un à la solution, je suis preneur.

Bien cordialement en ces temps pluvieux.
 

Pièces jointes

  • TOIMOILUI.xlsm
    16.5 KB · Affichages: 3

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Gilles,
Peut être comme ça :
VB:
Sub TOI()
' TOI Macro
    L = Lvide
    Cells(L, "D") = "TOI": Cells(L, "E") = "René":
End Sub
Sub MOI()
' MOI Macro
    L = Lvide
    Cells(L, "D") = "MOI": Cells(L, "E") = "Jean":
End Sub
Sub LUI()
' LUI Macro
    L = Lvide
    Cells(L, "D") = "LUI": Cells(L, "E") = "Marte":
End Sub
Function Lvide()
     If [D3] = "" Then Lvide = 3 Else If [D4] = "" Then Lvide = 4 Else Lvide = 5
End Function
La fonction Lvide renvoie la première ligne vide trouvée dans la plage.
 

Pièces jointes

  • TOIMOILUI.xlsm
    15.6 KB · Affichages: 1

sylvanu

XLDnaute Barbatruc
Supporter XLD
Ou plus simple avec :
Code:
Sub TOI()
    Ecrit "TOI", "René"
End Sub
Sub MOI()
    Ecrit "MOI", "Jean"
End Sub
Sub LUI()
    Ecrit "LUI", "Marte"
End Sub
Sub Ecrit(Nom, Prénom)
    L = Application.CountIf([D3:D5], "*") + 3
     Cells(L, "D") = Nom: Cells(L, "E") = Prénom
End Sub
 

Pièces jointes

  • TOIMOILU V2I.xlsm
    15.6 KB · Affichages: 3

Discussions similaires

Statistiques des forums

Discussions
312 207
Messages
2 086 232
Membres
103 161
dernier inscrit
Rogombe bryan