XL 2019 Copiez les valeurs d'un textbox vers une plage de cellule définie

vinzzz1

XLDnaute Nouveau
Bonjour,

J'aimerais copiez les valeur de ma textbox sur a partir de la cellule A8 et que les valeurs suivantes se copie de ligne en ligne.
Je suis arrivé a faire que mes valeurs se copie de ligne en ligne mais je n'arrive pas a définir le point de départ qui est la cellule A8.
Voici mon code:

Private Sub btvalidate_Click()

Sheets("Feuil1").Activate

tbot.SelStart = 0
tbot.SelLength = tbot.TextLength
tbot.Copy

Cells(ActiveCell.Row + 1, 1).Activate
ActiveSheet.Paste

End Sub

Quelqu'un pour m'aider ??

Merci
 
Solution
Re

Donc toujours à l'aveugle
mais testé avec succès sur une feuille nommée Feuil1
(appartenant à un classeur avec un Userform contenant un TextBox nommé tbot et un CommandButton)
En A8, j'ai le mot suivant: ENTETE
Et quand je clique sur le bouton de l'userform x fois, la valeur de tbot se retrouve en A9, puis en A10, puis en Ax
VB:
Private Sub CommandButton1_Click()
Dim ZXZ
ZXZ = Chr(Int((90 - 65 + 1) * Rnd + 65))
Sheets("Feuil1").Activate
If Len(tbot) Then
Cells(Rows.Count, 1).End(xlUp)(2).Value = tbot
tbot = Application.Rept(ZXZ, 3)
Else
Exit Sub
End If
End Sub

Private Sub UserForm_Initialize()
Randomize
tbot = Application.Rept(Chr(Int((90 - 65 + 1) * Rnd + 65)), 3)
End Sub
On peut donc dire que ce code VBA fait...

Staple1600

XLDnaute Barbatruc
Re

Donc toujours à l'aveugle
mais testé avec succès sur une feuille nommée Feuil1
(appartenant à un classeur avec un Userform contenant un TextBox nommé tbot et un CommandButton)
En A8, j'ai le mot suivant: ENTETE
Et quand je clique sur le bouton de l'userform x fois, la valeur de tbot se retrouve en A9, puis en A10, puis en Ax
VB:
Private Sub CommandButton1_Click()
Dim ZXZ
ZXZ = Chr(Int((90 - 65 + 1) * Rnd + 65))
Sheets("Feuil1").Activate
If Len(tbot) Then
Cells(Rows.Count, 1).End(xlUp)(2).Value = tbot
tbot = Application.Rept(ZXZ, 3)
Else
Exit Sub
End If
End Sub

Private Sub UserForm_Initialize()
Randomize
tbot = Application.Rept(Chr(Int((90 - 65 + 1) * Rnd + 65)), 3)
End Sub
On peut donc dire que ce code VBA fait bien ceci
copiez les valeur de ma textbox sur a partir de la cellule A8 et que les valeurs suivantes se copie de ligne en ligne.
 

vinzzz1

XLDnaute Nouveau
Re

Donc toujours à l'aveugle
mais testé avec succès sur une feuille nommée Feuil1
(appartenant à un classeur avec un Userform contenant un TextBox nommé tbot et un CommandButton)
En A8, j'ai le mot suivant: ENTETE
Et quand je clique sur le bouton de l'userform x fois, la valeur de tbot se retrouve en A9, puis en A10, puis en Ax
VB:
Private Sub CommandButton1_Click()
Dim ZXZ
ZXZ = Chr(Int((90 - 65 + 1) * Rnd + 65))
Sheets("Feuil1").Activate
If Len(tbot) Then
Cells(Rows.Count, 1).End(xlUp)(2).Value = tbot
tbot = Application.Rept(ZXZ, 3)
Else
Exit Sub
End If
End Sub

Private Sub UserForm_Initialize()
Randomize
tbot = Application.Rept(Chr(Int((90 - 65 + 1) * Rnd + 65)), 3)
End Sub
On peut donc dire que ce code VBA fait bien ceci
Merci !!
 

Staple1600

XLDnaute Barbatruc
RE

Je confirme que ceci fonctionne sur ta PJ
VB:
Private Sub btvalidate_Click()
Sheets("Feuil1").Activate
Cells(Rows.Count, 1).End(xlUp)(2).Value = tbot.Value
End Sub
Si bien sur on fait un peu de ménage dans la colonne A de la feuille Feuil1
 

vinzzz1

XLDnaute Nouveau
Voilà voila apres avoir fait des tests j'ai utiliser le code suivant pour me positionner au bon endroit dans ma feuille et pour ensuite copiez les valeurs a la ligne:

VB:
If Range("A8") = "" Then
    Range("A8").Activate
Else
    Range("A" & Range("A7").End(xlDown).Row + 1).Activate
End If
 

Staple1600

XLDnaute Barbatruc
Bonsoir le fil

vinzzz1
Tu n'as donc pas testé le code que je te proposais (et surtout fais le ménage dans ta colonne A)
Dans ta PJ, il y avait des données en colonne A en dehors de ton tableau
(De mémoire vers A50) mais apparemment tu as retiré ta PJ du fil, non?
 

vinzzz1

XLDnaute Nouveau
Salut,

Staple1600 si j'ai essayé le code que tu ma proposé mais le soucis est effectivement la présence d'autre valeurs dans ma colonne A qui malheureusement ne peuvent être enlevé c'est pour cela que j'ai utilisé le code suivant :

VB:
Private Sub btvalidate_Click()

    With Sheets("Feuil1")
        ligne = .Range("A32").End(xlUp).Row + 1   'Mes valeurs viennent se copier a la 1ère ligne vide au dessus de la 32ème
        .Range("A" & ligne).Value = OTreseaux
        .Range("C" & ligne).Value = taf
    End With

End Sub

Merci
 

Staple1600

XLDnaute Barbatruc
Re

Sauf qu'au départ, ta discussion parlait d'insérer la valeur du TextBox en A8
(Il n'était pas question d'insérer les valeurs d'autres contrôles du Userform)
Et au départ, on parlait de du TextBox tbot que je ne vois pas dans ton dernier code.

PS: Tu aurais du laissé ta PJ, si d'autres membres du forum veulent traiter ta question.
 

Discussions similaires

Statistiques des forums

Discussions
311 720
Messages
2 081 899
Membres
101 834
dernier inscrit
Jeremy06510