Registriert seit: 12.10.2014
Version(en): 365 Insider (64 Bit)
29.05.2024, 19:27
(Dieser Beitrag wurde zuletzt bearbeitet: 29.05.2024, 19:28 von RPP63.)
(29.05.2024, 15:31)Gast 123 schrieb: Upps, habe ich da was übersehen??
Moin!
Ja!
Der TE benutzt LibreOffice!
"Prinzipiell" übersetzt Libre VBA.
In 0,01% der Fälle klappt das sogar …
Gruß Ralf
(29.05.2024, 16:19)templarderclan schrieb: Leider klappt beides irgendwie ned....
Könnte daran liegen, dass Du irgendwie im falschen Forum bist.
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
30.05.2024, 16:11
(Dieser Beitrag wurde zuletzt bearbeitet: 30.05.2024, 16:12 von schauan.)
Hallöchen,
hier mal ein Ansatz. Als Zeilentrenner in den Zellen habe ich CHR(10) angenommen.
Code:
Sub AufTeilen
Dim oSheet As Object, oCell as object, oCursor As Object
Dim oCellRangeForEach as Object, oDC As Object
Dim Arry() as string, j as long, k as long
oSheet= thiscomponent.getcurrentcontroller.activesheet
'Letzte Zeile feststellen und Bereich definieren
oCursor= oSheet.createCursor
oCursor.gotoEndOfUsedArea(False)
LastRow= oCursor.RangeAddress.EndRow + 1
oCell = oSheet.getCellRangeByName("A1:A" & LastRow)
'Zelleintraege (Text)(4) in Array holen und in Spate C ausgeben
oCellRangeForEach = oCell.queryContentCells(4)
For Each oDC In oCellRangeForEach.getCells()
Arry = Split(oDC.getString, chr(10))
For j = 0 To UBound(Arry())
result = ThisComponent.Sheets(0).getCellByPosition(2,j+k)
result.String = Arry(j)
Next j
'bei gleichbleibender Anzahl Texteintraege kann mit fester Schrittweite
'gearbeitet werden - hier mal beispielhaft 3.
'Alternative: Maximale Anzahl nehmen - es entstehen Leerzeilen
'oder String ohne Leereintraege bilden oder ...
k=k+3
Erase Arry
Next oDC
msgbox "Alle Texte aufgeteilt"
End Sub
. \\\|/// Hoffe, geholfen zu haben.
( ô ô ) Grüße, André aus G in T
ooO-(_)-Ooo (Excel 97-2019+365)