danke für's Leviten lesen

Moderator: Moderatoren
Code: Alles auswählen
'--------------------------------------------------------------------------------------------------------
if dDateCheck >= CDateToIso(dMinDatum) and dDateCheck <= CDateToIso(dMaxDatum) then
NamenListboxDeaktiv
for idd = lbound(NamA) to ubound(NamA)
if NamA(idd) = oLiboName.SelectedItem then
xx = idd
exit for
end if
next idd
iZielZeile = xx +4 ' <= Zeilennummer für getCellByPosition
sDate = oDatumFeld.Text
oZielBlatt = oDoc.Sheets().getByName(left(sDate, 2)) ' <= BlattName
'--------------------------------------------------------------------------------------------------------
oZielAddy = oZielBlatt.getCellRangeByName("AO" & iZielZeile +1)
if oZielAddy.string = "A" then
KopfBeschriften
oLabDienstS5.text = oZielBlatt.getCellRangeByName("L" & iZielZeile +1).string
For novisii = 14 to 15
oHptDialog.getControl("Label" & novisii).Visible = TRUE
next novisii
oHptDialog.Model.Step = 5
goto schluss
else
if oZielAddy.value > 40 then
KopfBeschriften
obe = oZielAddy.value
for ea = 30 to obe -11
oHptDialog.getControl("Label" & ea).text = oZielBlatt.getCellByPosition(ea +11, iZielZeile).string
next ea
oLabDienstS4.text = oZielBlatt.getCellRangeByName("BB" & iZielZeile+1).string
oHptDialog.Model.Step = 4
goto schluss
end if
end if
'--------------------------------------------------------------------------------------------------------
keine Sorge bin es bestimmt nicht,balu hat geschrieben:Hey Du! Nicht beleidigt sein!
Code: Alles auswählen
sStart = oSheet.GetCellByPosition(5,2).string : iStart = val(sStart)
sEnd = oSheet.GetCellByPosition(6,2).string : iEnd = val(sEnd)
Code: Alles auswählen
if oDoc.Title = NeededFile then
tzz .. bin ich glücklicherweise schon ne Weile drüber hinwegKarolus hat geschrieben:Was hat der Kerl vorher geraucht ??
Code: Alles auswählen
sStart = oSheet.GetCellByPosition(5,2).string : iStart = val(sStart)
Code: Alles auswählen
iStart = val(oSheet.GetCellByPosition(5,2).string)
ja genauso wollte ich das auch machen, habe ich dann aber irgendwie verpennt, das laden der Tools ist jetzt auch nicht mehr nötig.Karolus hat geschrieben:m gleichen Kontext könntest du unten in `ActivateInFront` direkt:
Code: Alles auswählen
if oDoc.Title = NeededFile then
Code: Alles auswählen
oCollect.store()
ActivateInFront(myMasterFile)
fnCopyXSheet( sCollectName, "Import-Log" , 1)
msgbox "done, fini, fertig, hecho, feito"
Hier hättest DU dir ruhig die Mühe machen können und die richtigen Zelladressen anzugeben. So muss man erstmal nachdenken von welchen Adressen Du da redest. Ist nicht schön.für oSheet.GetCellByPosition(5,2)/(6,2) hatte ich das Zellformat Text gesetzt, damit der Anwender auch ggf "001" bis "055" angeben kann
Tja, mein lieber, ich glaube Du weißt wohl nicht wirklich was Du da sagst, und was das bedeutet.ja ich wollte ein ganzes Tabellenblatt "mit Haut und Haaren" kopieren so wie es das aufgezeichnete Makro tut
Das Quellverzeichnis ist also bekannt, ebenso wie der Tabellenname der Tabelle die importiert werden soll.I have a folder "reports" that contains many calc files 20150401, 20150402, 20150403....(*.ods), each file has a spreadsheet called "sales".
I want to copy each spreadsheet "sales" of each file, to a unique file called "monthconsolidate.ods", with the name of the file copied .
Code: Alles auswählen
import uno
from os import path
from glob import glob
from com.sun.star.sheet.SheetLinkMode import NORMAL, NONE
def import_sheet_by_Name(sheetname="sales")
this = XSCRIPTCONTEXT.geDocument()
sheets = this.Sheets
folder = "/home/karolus/2015/"
odsfiles = glob(folder + "*.ods")
for filepath in odsfiles:
url = uno.systemPathToFileUrl( filepath )
tabname, _ = path.splitext( path.basename( filepath ) )
sheets.insertNewByName( tabname, 0 )
sheet = sheets.getByName( tabname )
sheet.link( url, sheetname, "calc8", "", NORMAL)
sheet.setLinkMode( NONE )
haha nein wenn dann ichbalu hat geschrieben:Will mich das Makro verarschen!?
Karolus hat geschrieben:Ohne das Boilerplate-``Arbeitsdokument`` mit den ganzen ungefragten Extrafeatures, direkt aus dem Zieldokument:
Du wirst auch nie dahin kommen -- weil du lieber 5 Tage rum`baselst` als fünf Minuten mit Python auseinandersetzt!..aber da bin ich halt noch nicht
Wozu hast Du denn im *TabellenblattSammler.ods* ein Blatt mit dem Namen *Import-Log*?also mein Gedanke dabei war, das man ja eigentlich nur die kopiereten Tabellenblätter braucht und die sind gespeichert,
den "Kopier-Report" guck man vielleicht an und dann geht er vermutlich sowieso in die Tonne also wozu speichern.
Eine kleine Sub schreiben, die die Zeile 3 auf das Format Text setzt. Und diese Sub dem Ereigniss: "Dokument öffnen" zuweisen, sowie im Programm immer als erstes Aufrufen.Bei H3 hat sich Zahlenformat wieder eingschlichen die Zeile3 war komplet auf Text einstellt, man müsste das dauerhaft setzen können, aber wie? Vieleich bei jedem beenden der Hauptseite die Zeile bereinigen und auf Text setzen.
Nein, die Funktion ist seit Ewigkeiten Bestandteil der Tools Bibliothek einer Standardinstallation.clag hat geschrieben:FileNameoutofPath wollte ich eigentlich überhaupt nicht verwenden,
da es ja ein Zusatz aus der Toolsammlung von Herrn Dannenhöfer ist