von Karolus » Di, 14.11.2006 05:03
Hallo
Mit ein paar Mausklicks aus :
http://www.dannenhoefer.de/faqstarbasic/
zusammengetragen, und konkret auf deine Zielvorstellung modifiziert :
Code: Alles auswählen
Sub copyschleife
odoc = thisComponent
mySheet1 = oDoc.Sheets().getByName("CSV")
mySheet2 = oDoc.Sheets().getByName("DATEN")
m = 1017 'erste Zeilennr. Zielbereich
for n = 673 to 1050 step 4 'Zeilennr. Quellbereich (von,bis,Schrittweite)
oQuelleRange1=mySheet1.getCellRangeByName("AL" & n)
oQuelleRange2=mySheet1.getCellRangeByName("AO" & n+2)
oQuelleRange3=mySheet1.getCellRangeByName("AO" & n+3)
oZiel1 = mySheet2.getCellByPosition(0,m-1)
oZiel2 = mySheet2.getCellByPosition(1,m-1)
oZiel3 = mySheet2.getCellByPosition(2,m-1)
oQuellRangeAddresse = oQuelleRange1.getRangeAddress
oZielCellAdresse=oZiel1.getCellAddress
mySheet2.copyRange(oZielCellAdresse,oQuellRangeAddresse)
oQuellRangeAddresse = oQuelleRange2.getRangeAddress
oZielCellAdresse=oZiel2.getCellAddress
mySheet2.copyRange(oZielCellAdresse,oQuellRangeAddresse)
oQuellRangeAddresse = oQuelleRange3.getRangeAddress
oZielCellAdresse=oZiel3.getCellAddress
mySheet2.copyRange(oZielCellAdresse,oQuellRangeAddresse)
m = m+1
next n
End Sub
Das gleiche Ergebnis erhälst du mit der Funktion (in DATEN.A1018):
=INDIREKT("CSV.AL"&ZEILE(A1)*4+673)
für Spalte B und C anpassen und alles zusammen nach unten ausfüllen.
Gruß Karo
Hallo
Mit ein paar Mausklicks aus :
[url]http://www.dannenhoefer.de/faqstarbasic/[/url]
zusammengetragen, und konkret auf deine Zielvorstellung modifiziert :
[code]Sub copyschleife
odoc = thisComponent
mySheet1 = oDoc.Sheets().getByName("CSV")
mySheet2 = oDoc.Sheets().getByName("DATEN")
m = 1017 'erste Zeilennr. Zielbereich
for n = 673 to 1050 step 4 'Zeilennr. Quellbereich (von,bis,Schrittweite)
oQuelleRange1=mySheet1.getCellRangeByName("AL" & n)
oQuelleRange2=mySheet1.getCellRangeByName("AO" & n+2)
oQuelleRange3=mySheet1.getCellRangeByName("AO" & n+3)
oZiel1 = mySheet2.getCellByPosition(0,m-1)
oZiel2 = mySheet2.getCellByPosition(1,m-1)
oZiel3 = mySheet2.getCellByPosition(2,m-1)
oQuellRangeAddresse = oQuelleRange1.getRangeAddress
oZielCellAdresse=oZiel1.getCellAddress
mySheet2.copyRange(oZielCellAdresse,oQuellRangeAddresse)
oQuellRangeAddresse = oQuelleRange2.getRangeAddress
oZielCellAdresse=oZiel2.getCellAddress
mySheet2.copyRange(oZielCellAdresse,oQuellRangeAddresse)
oQuellRangeAddresse = oQuelleRange3.getRangeAddress
oZielCellAdresse=oZiel3.getCellAddress
mySheet2.copyRange(oZielCellAdresse,oQuellRangeAddresse)
m = m+1
next n
End Sub[/code]
Das gleiche Ergebnis erhälst du mit der Funktion (in DATEN.A1018):
=INDIREKT("CSV.AL"&ZEILE(A1)*4+673)
für Spalte B und C anpassen und alles zusammen nach unten ausfüllen.
Gruß Karo