Code VBA : Ajouter dans une colonne vide

Bonjour, je code depuis peu et il me reste peu de temps pour finir mon travail... J'aimerai pouvoir incrémenter mes données en colonne, je m'explique:

j'ai créer un bouton dans excel renvoyant à mon userform, je cherche à ce que les données rentrées puissent s'ajouter dans la colonne voulue
un peu comme ce code mais il marche pas

With UserAjouter1

If "K4" = "" Then
feuille.Range("K4").Value = TextBox1
feuille.Range("K5").Value = TextBox2
feuille.Range("K6").Value = TextBox3
Else
  If "L4" = " " Then
feuille.Range("L4").Value = TextBox1
feuille.Range("L5").Value = TextBox2
feuille.Range("L6").Value = TextBox3
Else
feuille.Range("M4").Value = TextBox1
feuille.Range("M5").Value = TextBox2
feuille.Range("M6").Value = TextBox3

        End If
        End If
      
End With


Merci à ceux qui pourront me donner quelques idées/conseils

4 réponses

  1. Contributeur
    Bonjour

    Private Sub CmdAjouter1_Click()
    Dim col As Byte
    With ActiveSheet
    col = Rows(4).Find("", .Range("D4"), xlValues).Column
    .Cells(4, col) = Me.TextBox1
    .Cells(5, col) = Me.TextBox2
    .Cells(6, col) = Me.TextBox3
    End With

    0
    1. voici le lien http://www.cjoint.com/c/FCuq4nADIB1

      Je me suis trompé c'est bien J remplie et K L à remplir, Userajouter et un userfor pour saisir les 3 données que je cherche à placer en K4, K5,K6 ou en L4,L5,L6 ....
      0
      1. Contributeur
        userajouter1: c'est quoi ?

        c'est en colonne ou en ligne ?
        K---> L ou M ?
        ou ligne 4,5,6

        tes 2 macros ne font pas la même chose...

        au besoin:
        Mettre le classeur sans données confidentielles en pièce jointe sur https://www.cjoint.com/
        et coller le raccourci par un clic droit sur le lien proposé dans le message de réponse

        Dans l’attente

         Michel
        0
        1. Merci pour le lien, je savais pas comment l'envoyer !
          0
      2. Contributeur
        Bonjour

        SI L4 est non vide
        col = Rows(4).Find("", Range("L4"), xlValues).Column
        Cells(4,col)=textbox....

         Michel
        0
        1. Contributeur
          euh..
          si J4 est non vide
          col = Rows(4).Find("", Range("J4"), xlValues).Column
          Cells(4,col)=textbox....
          0
        2. @michel_mMerci de votre réponse, voila le nouveau code, cependant il ne fonctionne pas et je necomprend pas pourquoi... Les valeurs n'apparaissent pas dans ma feuille excel et des espaces y sont à la place!

          Private Sub CmdAjouter1_Click()
          Dim feuille As Worksheet
          Set feuille = Application.ActiveWorkbook.ActiveSheet

          Dim col As Integer

          With UserAjouter1
          col = Rows(4).Find("", Range("J4"), xlValues).Column
          Cells(4, col) = TextBox1
          col = Rows(5).Find("", Range("J5"), xlValues).Column
          Cells(5, col) = TextBox2
          col = Rows(6).Find("", Range("J6"), xlValues).Column
          Cells(6, col) = TextBox3

          End With

          End Sub
          0