Hallo
ich möchte Zellen verbinden A1 mit B1 dann A2 mit B2 usw.....wie kann ich das machen??
Ich habe folgenden Code der A1 mit B1 verbindet....jetzt soll das in einer Schleife geschehen
rem define variables
dim document as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
rem ----------------------------------------------------------------------
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "ToPoint"
args1(0).Value = "$A$1:$B$1"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args1())
rem ----------------------------------------------------------------------
dim args2(0) as new com.sun.star.beans.PropertyValue
args2(0).Name = "MoveContents"
args2(0).Value = true
dispatcher.executeDispatch(document, ".uno:ToggleMergeCells", "", 0, args2())
Schleife?? Aber wie
Moderator: Moderatoren
Hey Felixcate,
hmm, auch hier gilt: Der Recorder ist dafür nicht geeignet. Hier hilft nur manuelles Programmieren:
Der forlgende Code verbindet die Zellen a1/B1 bis A10/B10 in einer Schleife - die musst du halt entsprechend anpassen:
Wenn du "false" übergibst, wird der Zellbereich wieder aufgelöst
Gruss
Thomas
hmm, auch hier gilt: Der Recorder ist dafür nicht geeignet. Hier hilft nur manuelles Programmieren:
Der forlgende Code verbindet die Zellen a1/B1 bis A10/B10 in einer Schleife - die musst du halt entsprechend anpassen:
Code: Alles auswählen
sub ZellenVerbinden
dim oBereich as object, oSheet as Object
oSheet = ThisComponent.sheets(0) '1. Tabellenbaltt
for i = 1 to 10
oBereich = oSheet.getCellRangeByName("A" & i & ":B" & i)
oBereich.merge(true)
next
end sub

Gruss
Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
vielen Dank
Hallo
danke aber jetzt löscht er den Inhalt von der zweiten Zelle. Ich möchte ja in der ersten Zelle den Inhalt der ersten Zelle und der zweiten haben zusammengeführt.
Gruß Tobi
danke aber jetzt löscht er den Inhalt von der zweiten Zelle. Ich möchte ja in der ersten Zelle den Inhalt der ersten Zelle und der zweiten haben zusammengeführt.
Gruß Tobi
Hallo,
einfach die Prozedur wie folgt ändern, und schon sollte das mit dem Inhalt zusammenfügen klappen:
einfach die Prozedur wie folgt ändern, und schon sollte das mit dem Inhalt zusammenfügen klappen:
Code: Alles auswählen
sub InhalteVerbinden
dim oBereich as object, oSheet as Object
dim vTemp as variant
oSheet = ThisComponent.sheets(0) '1. Tabellenbaltt
With oSheet
For i = 1 to 10
vTemp = .getCellRangeByName("A" & i).Value & .getCellRangeByName("B" & i).Value
.getCellRangeByName("A" & i).Value = vTemp
Next i
End With
end sub
Lösung
Hallo
also ich habs jetzt:
sub Zellen_verbinden
dim oBereich as object, oSheet as Object
dim vTemp as variant
oSheet = ThisComponent.sheets(0) '1. Tabellenbaltt
With oSheet
For i = 4 to 200
vTemp = .getCellByPosition(0,i).String & " " & .getCellByPosition(1,i).String
.getCellByPosition(0,i).String = vTemp
Next i
End With
end sub
also ich habs jetzt:
sub Zellen_verbinden
dim oBereich as object, oSheet as Object
dim vTemp as variant
oSheet = ThisComponent.sheets(0) '1. Tabellenbaltt
With oSheet
For i = 4 to 200
vTemp = .getCellByPosition(0,i).String & " " & .getCellByPosition(1,i).String
.getCellByPosition(0,i).String = vTemp
Next i
End With
end sub