il titolo per intero sarebbe questo: " Andare a capo nella stessa cella da vba (integrando ad un altro codice)"
Espongo il problema e spero che possiate aiutarmi :
in una userform ho 4 textbox e un commandbutton.
Al commandbutton è associato questo codice che serve a splittare il testo (txt1, txt2 e txt3) se al loro interno è presente un trattino "-":
- Codice: Seleziona tutto
Private Sub CommandButton1_Click()
Dim LString As String, LArray() As String
Dim FString As String, FArray() As String
Dim GString As String, GArray() As String
Dim LastRow As Long
Dim i
Dim sh1 As Worksheet
Set sh1 = Sheets("Sheet1")
With sh1
LString = Me.TextBox3.Text
LArray = Split(LString, "-")
L = UBound(LArray)
FString = Me.TextBox1.Text
FArray = Split(FString, "-")
F = UBound(FArray)
GString = Me.TextBox2.Text
GArray = Split(GString, "-")
G = UBound(GArray)
LastRow = .Cells(sh1.Rows.Count, "B").End(xlUp).Row + 1
mMax = Application.WorksheetFunction.Max(L, F, G)
For i = 0 To mMax
On Error Resume Next
.Range("A" & LastRow + i) = FArray(i)
.Range("B" & LastRow + i) = GArray(i)
.Range("C" & LastRow + i) = LArray(i)
.Range("D" & LastRow + i) = TextBox4.Text
Next i
On Error GoTo 0
End With
End Sub
Nella textbox1 aggiungo diverse stringhe di testo che hanno lunghezze differenti (20 lettere, 50, 100 ecc) nel momento in cui voglio che una stringa venga "splittata", quindi ritorno a capo nella cella sottostante, basta che inserisco un trattino e la divide senza problemi.
Purtroppo una stringa di testo può essere più lunga rispetto ad un'altra e nel momento in cui la riporta nella cella, arrivata al limite di questa cella, questa me la taglia .
Il risultato che vorrei è che nel momento in cui arriva al limite della cella, essa (la stringa di testo) vada a capo nella stessa cella come fa ALT + Invio.
Sarebbe possibile fare ciò?
Se avete bisogno di chiarimenti, sono a vostra disposizione
Vi ringrazio in anticipo della preziosa disponibilità e buon fine luglio