Re: Zahlen in Zahlenfolge hinzufügen
Verfasst: Fr, 17.07.2020 20:42
Super, jetzt verstehe ich. Dankeschön!
deutsches Forum rund um Apache OpenOffice und LibreOffice
http://de.openoffice.info/
Code: Alles auswählen
Sub S_INSERT_NUMBERS
oSheet = ThisComponent.Sheets.Getbyname("Tabelle1")
oRange1 = oSheet.getcellrangebyName("K1:K10")
oRange2 = oSheet.getcellrangebyName("L1:L10")
oRangeTarget = oSheet.Columns.getbyName("M")
nCounter = 0
For i = 0 to uBound(oRange1.data)
oRangeTarget.getCellByPosition(0,nCounter+i).Value = oRange1.getCellByPosition(0,i).Value
if oRange2.getCellByPosition(0,i).Value > 0 then
nCounter = nCounter+1
oRangeTarget.getCellByPosition(0,nCounter+i).Value = oRange2.getCellByPosition(0,i).Value
endif
next i
End Sub
Code: Alles auswählen
Sub S_INSERT_NUMBERS
dim i as long
t1 = Getsystemticks()
oSheet = ThisComponent.Sheets.Getbyname("Tabelle1")
oRange1 = oSheet.getcellrangebyName("K1:K60000")
oRange2 = oSheet.getcellrangebyName("L1:L60000")
oRangeTarget = oSheet.Columns.getbyName("M")
nCounter = 0
For i = 0 to oRange1.rows.Count -1
oRangeTarget.getCellByPosition(0,nCounter+i).Value = oRange1.getCellByPosition(0,i).Value
if oRange2.getCellByPosition(0,i).Value > 0 then
nCounter = nCounter+1
oRangeTarget.getCellByPosition(0,nCounter+i).Value = oRange2.getCellByPosition(0,i).Value
endif
next i
t2 = Getsystemticks()
msgbox "Fertig, Dauer: " & (t2-t1)/1000 &" s"
End Sub
Code: Alles auswählen
Sub S_INSERT_NUMBERS
dim i as long
t1 = Getsystemticks()
oSheet = ThisComponent.Sheets.Getbyname("Tabelle1")
oRange1 = oSheet.getcellrangebyName("K1:K60000")'hier den zu untersuchenden Bereich eintragen
oRange1data = oRange1.dataarray
oRange2 = oSheet.getcellrangebyName("L1:L60000")'hier den zu untersuchenden Bereich eintragen
oRange2data = oRange2.dataarray
oRangeTarget = oSheet.getcellrangebyName("M1:M120000")'Doppelt so lang wie Spalte K
oRangeTargetdata = oRangeTarget.dataarray
nCounter = 0
For i = 0 to oRange1.rows.Count -1
oRangeTargetdata(nCounter+i)(0)= oRange1data(i)(0)
if oRange2data(i)(0) <> "" then
nCounter = nCounter+1
oRangeTargetdata(nCounter+i)(0) = oRange2data(i)(0)
endif
next i
oRangeTarget.SetDataarray(oRangeTargetdata)
t2 = Getsystemticks()
msgbox "Fertig, Dauer: " & (t2-t1)/1000 &" s"
End Sub
Code: Alles auswählen
Sub S_INSERT_NUMBERS
dim i as long
t1 = Getsystemticks()
oSheet = ThisComponent.Sheets.Getbyname("Sheet1")
oDataSourceRange = oSheet.getcellrangebyName("H1:H60000")'hier den zu untersuchenden Bereich eintragen
oDataTargetRange = oSheet.getcellrangebyName("I1:I120000")'Doppelt so lang
oDataRangeSourcedata = oDataSourceRange.dataarray
oDataRangeTargetdata = oDataTargetRange.dataarray
oRange1 = oSheet.getcellrangebyName("K1:K60000")'hier den zu untersuchenden Bereich eintragen
oRange1data = oRange1.dataarray
oRange2 = oSheet.getcellrangebyName("L1:L60000")'hier den zu untersuchenden Bereich eintragen
oRange2data = oRange2.dataarray
oRangeTarget = oSheet.getcellrangebyName("M1:M120000")'Doppelt so lang wie Spalte K
oRangeTargetdata = oRangeTarget.dataarray
nCounter = 0
For i = 0 to oRange1.rows.Count -1
oRangeTargetdata(nCounter+i)(0)= oRange1data(i)(0)
oDataRangeTargetdata(nCounter+i)(0) = oDataRangeSourcedata(i)(0)
if oRange2data(i)(0) <> "" then
nCounter = nCounter+1
oRangeTargetdata(nCounter+i)(0) = oRange2data(i)(0)
oDataRangeTargetdata(nCounter+i)(0) = oDataRangeSourcedata(i)(0)
endif
next i
oRangeTarget.SetDataarray(oRangeTargetdata)
oDataTargetRange.SetDataarray(oDataRangeTargetdata)
t2 = Getsystemticks()
msgbox "Fertig, Dauer: " & (t2-t1)/1000 &" s"
End Sub