Je suis débutant : comment affecter les TextBox dans les première cellules vides ?

philousoob

XLDnaute Nouveau
Bonjour,

Je travaille dans la soudure (ingénieur en soudage), mais je n'ai absolument aucune expérience dans les macro, userform, vba....
Je cherche a réaliser une feuille excel de gestion d'emballage de gaz, j'ai déjà créé un userform qui me permet de remplir une feuille excel.
J'ai "réussis" celà grâce à vos différents forums, mais la je suis bloqué: j'arrive à exporter mes données userform (textbox et listbox) dans une ligne souhaitée (voir mon excel, en l'occurance C8, D8...).
Ce que je cherche à faire c'est que les données entrées dans mon userform s'inscrivent dans les premières lignes vides et non pas seulement dans une seule ligne, écrasant à chaque fois les données s'y trouvant.

J'aimerais avoir votre aide pour y parvenir,

La prochaine étape sera : grâce à l'userform, le cherche un identifiant dans le tableau excel et de pouvoir le supprimer (d'ou mon bouton "supprimer" sur l'userform)

Tout celà me dépasse vraiment et j'espère avoir de l'aide,

Je vous remercie,

Philippe G.
 

Pièces jointes

  • Classeur1.xlsm
    29.6 KB · Affichages: 34
  • Classeur1.xlsm
    29.6 KB · Affichages: 36
  • Classeur1.xlsm
    29.6 KB · Affichages: 49

titiborregan5

XLDnaute Accro
Re : Je suis débutant : comment affecter les TextBox dans les première cellules vides

Bonjour Philippe, le forum,

Pour aller à la 1ère ligne vide, j'utilise .end et offset
Exemple:
range("b100000").end(xlup) = part de la cellule B100000 et remonte jusqu'à la 1ère cellule remplie (B20 imaginons)
on rajoute le .offset(ligne, colonne) qui permet de décaler
exemple
range("b100000").end(xlup).offset(1,0) = arrive en B20 et descend de 1 (B21 = 1ère vide).
Voir code à insérer à la place de l'ancier:
Code:
Private Sub CommandButton2_Click()
Sheets("Site 1").Range("B1000000").End(xlUp).Offset(1, 0).Value = Me.TextBox1.Text
Sheets("Site 1").Range("B1000000").End(xlUp).Offset(0, 1).Value = Me.ListBox1.Text
Sheets("Site 1").Range("B1000000").End(xlUp).Offset(0, 2).Value = Me.ListBox2.Text
Sheets("Site 1").Range("B1000000").End(xlUp).Offset(0, 3).Value = Me.TextBox2.Text
Unload Me
End Sub
 

youky(BJ)

XLDnaute Barbatruc
Re : Je suis débutant : comment affecter les TextBox dans les première cellules vides

Bonjour le fil,
Voici une façon de faire aussi un peu identique.
Voir aussi la supression , je supprime la ligne complète.
Bruno
Code:
Private Sub CommandButton2_Click()
If TextBox1 = "" Or TextBox2 = "" Then MsgBox "Manque d'information": Exit Sub
With Sheets("Site 1")
bas = .[B65000].End(xlUp).Row + 1 'derniere ligne+1
.Cells(bas, 2) = Me.TextBox1.Text
.Cells(bas, 3) = Me.ListBox1.Text
.Cells(bas, 4) = Me.ListBox2.Text
.Cells(bas, 5) = Me.TextBox2.Text
End With
Unload Me
End Sub



Private Sub CommandButton3_Click()
'suppression
lig = Application.Match(Val(TextBox1), Sheets("Site 1").[B1:B65000], 0)
If IsNumeric(lig) Then
If MsgBox("Confimez Vous la suppression", vbExclamation + vbOKCancel, "SUPPRESSION") = vbOK Then
Sheets("Site 1").Rows(lig).Delete
End If
End If
End Sub
 

philousoob

XLDnaute Nouveau
Re : Je suis débutant : comment affecter les TextBox dans les première cellules vides

C'est parfait, la suppression entraîne même le décalage vers le haut, il y aura donc pas de lignes vide, c'est parfait !

Je vous remercie grandement,;)

A bientôt :)
 

Statistiques des forums

Discussions
294 232
Messages
1 937 081
Membres
188 145
dernier inscrit
Peres2