Transfer listbox
Bonjour a vous!
je bloque sur le transfert de plusieurs listbox d'un USF vers un tableau de plusieurs colonnes ( de lettres et nombres )
nom, adresse, et téléphone.ect...
dans ce tableau les renseignements s'accumulent les un a la suite en descendant pour chaque colonne. le userform4 qui est pour la liste de client.
Private Sub CommandButton2_Click()
Dim NLign As Integer
NLign = Range("B1").End(xlUp).Row + 1
If IsError(Range("B1").End(xlDown).Row) Then
NLign = 2
Else
NLign = Range("B1").End(xlUp).Row + 1
End If
Range("B" & NLign) = Txtnom
Sheets("client").Cells(NLign, 1) = Txtnom
Sheets("client").Cells(NLign, 2) = Txtcompagnie
Sheets("client").Cells(NLign, 3) = Txtadresse
Sheets("client").Cells(NLign, 4) = Txtadresse1
Sheets("client").Cells(NLign, 5) = Txtcodepostale
Sheets("client").Cells(NLign, 6) = TxtTel
Sheets("client").Cells(NLign, 7) = Txtcellulaire
Sheets("client").Cells(NLign, 8) = TxtFax
With Sheets("client").ListObjects("bas")
If .ListRows.Count = 0 Then
Range("bas[[#Headers],[Nom]]").Offset(1, 0) = 1
Range("bas[[#Headers],[Nom]]").Offset(1, 0) = ""
End If
If .ListRows.Count = 1 And .ListRows(1).Range.Cells(1, 1) = "" Then
Set LignTablo = Sheets("client").ListObjects("bas").ListRows(1)
Else
Set LignTablo = Range("bas").ListObject.ListRows.Add(AlwaysInsert:=True)
End If
End With
With LignTablo.Range
.Cells(1, 1) = Txtnom
.Cells(1, 2) = Txtcompagnie
.Cells(1, 3) = Txtadresse
.Cells(1, 4) = Txtadresse1
.Cells(1, 5) = Txtcodepostale
.Cells(1, 6) = TxtTel
.Cells(1, 7) = Txtcellulaire
.Cells(1, 8) = TxtFax
End With
Unload UserForm4
End Sub
Private Sub CommandButton1_Click()
Unload Me
End Subje met mon fichier,
je sais que c'est pas fameux
merci, a+
Bonjour,
Il faut faire attention aux noms (et à l'ordre...) de tes contrôles ...
Sheets("client").Cells(NLign, 1) = TextBox1.Value
Sheets("client").Cells(NLign, 2) = TextBox2.Value
Sheets("client").Cells(NLign, 3) = TextBox9.Value
Sheets("client").Cells(NLign, 4) = TextBox3.Value
Sheets("client").Cells(NLign, 5) = TextBox4.Value
Sheets("client").Cells(NLign, 6) = TextBox5.Value
Sheets("client").Cells(NLign, 7) = TextBox6.Value
Sheets("client").Cells(NLign, 8) = TextBox7.Valuebonjours!
merci! j'apprécie.
j'ai une autre question, pourquoi le Transfer de données ( des textboxs du USF4) se font toujours a la ligne 10 du tableau bas de la feuille client?, cela devrait ce faire de la ligne du début en descendant ainsi de suite!
bon journée. a+
Private Sub CommandButton2_Click()
Dim NLign As Integer
NLign = Range("A1").End(xlDown).Row + 1
If IsError(Range("A1").End(xlDown).Row) Then
NLign = 1
Else
NLign = Range("A1").End(xlDown).Row + 1
End If
Range("A" & NLign) = Txtnom
Sheets("client").Cells(NLign, 2) = TextBox2.Value
Sheets("client").Cells(NLign, 3) = TextBox9.Value
Sheets("client").Cells(NLign, 4) = TextBox3.Value
Sheets("client").Cells(NLign, 5) = TextBox4.Value
Sheets("client").Cells(NLign, 6) = TextBox5.Value
Sheets("client").Cells(NLign, 7) = TextBox6.Value
Sheets("client").Cells(NLign, 8) = TextBox7.Value
Sheets("client").Cells(NLign, 9) = TextBox8.Value
With Sheets("client").ListObjects("bas")
If .ListRows.Count = 0 Then
Range("bas[[#Headers],[Nom]]").Offset(1, 0) = 1
Range("bas[[#Headers],[Nom]]").Offset(1, 0) = ""
End If
If .ListRows.Count = 1 And .ListRows(1).Range.Cells(1, 1) = "" Then
Set LignTablo = Sheets("client").ListObjects("bas").ListRows(1)
Else
Set LignTablo = Range("bas").ListObject.ListRows.Add(AlwaysInsert:=True)
End If
End With
With LignTablo.Range
.Cells(1, 3) = Txtnom
.Cells(1, 2) = Txtcompagnie
.Cells(1, 4) = Txtadresse
.Cells(1, 5) = Txtadresse1
.Cells(1, 6) = Txtcodepostale
.Cells(1, 7) = TxtTel
.Cells(1, 8) = Txtcellulaire
.Cells(1, 9) = TxtFax
End With
Unload UserForm4
End Sub
Private Sub CommandButton1_Click()
Unload Me
End Sub Re,
Content que cela fonctionne ...
Pour ce qui concerne ta dernière ligne ... je te propose le code suivant :
NLign = Range("B150").End(xlUp).Row + 1bonjour!
J,ai toujour le meme probleme mais il a changer de ligne ( ligne 17) j'ai beau essayer mais je comprend pas
c'est quoi qui dis d'aller a la ligne 17 ou a la ligne 10...?
merci, a+
Re,
Dans ta colonne B ... tu dois être sûr que des espaces ou des blancs ne sont pas présents ...
Je te conseille d'effacer toutes les lignes "vides" de ta colonne B ...
bonjour!
voila c'est corriger et fonctionnel. je sais que c'est pas ce qu'il y a de mieux
bien sur il y a toujours place a amélioration mais vue mes connaissances très pauvres en la matière je m'en contente.
encore une fois merci beaucoup!
A+
Re,
Content que cela fonctionne ...
Merci pour tes remerciements ...
P.S. on ne peut progresser ... qu'étape après étape ...
comment on fait message résolu?