CALC: Tabellen als csv exportieren

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: CALC: Tabellen als csv exportieren

Re: CALC: Tabellen als csv exportieren

von Hiker » Do, 06.02.2020 14:30

Hallo,

http://www.dannenhoefer.de/faqstarbasic ... l#Zweig203

Also einfach über das .name-Attribut des aktuellen Sheets.

Achtung: Wenn im Tabellennamen Zeichen verwendet werden, die für Dateien nicht erlaubt sind, geht das nicht so einfach...

Mfg, Jörn

Re: CALC: Tabellen als csv exportieren

von Kara1983 » Do, 06.02.2020 11:40

Hallo
auch wenn der Beitrag schon etwas älter ist, hoffe ich ihr könnte mir helfen

das Makro klappt super, jedoch würde ich gern die Tabellen mit ihrem Tabellenamen speichern.
Kann mir bite einer sagen wie ich das hierfür änern muss

Danke :)

Re: CALC: Tabellen als csv exportieren

von Hiker » Fr, 24.08.2018 09:41

Hallo,

schau noch Mal in das Macro oben, dort gibt es einen ConvertToUrl-Aufruf, der aus einem Dateinamen eine URL (in diesem Fall mit File:// ) macht. Der fehlt bei Dir.

Ausprobieren kann ich es gerade leider nicht.

Mfg, Jörn

Re: CALC: Tabellen als csv exportieren

von Stephan » Fr, 24.08.2018 08:03

Code: Alles auswählen

sUrl = sPath & ThisComponent.Sheets(0).getCellRangeByName("A1").String & ".csv"
übernimmt als Namen den Text in Zelle A1 der ersten Tabelle des aktuellen Calc-Dokumernts.


GRuß
Stephan

Re: Makro Tabellen als csv exportieren

von Frieder D. » Fr, 13.01.2012 17:22

Hallo Karo
Karolus hat geschrieben:Die Zuweisung von 'MyProps' wäre vor dem 'for...next'-Block besser aufgehoben.
Danke hast recht. Habe ich vorhin einfach übersehen.
hier die verbesserte Version:

Code: Alles auswählen

Sub Speichern_CSV
Dim myDoc As Object
Dim sPath$ ,sUrl$
dim i%
Dim myProps(1) as New com.sun.star.beans.PropertyValue
  myDoc = thisComponent
  sPath="C:\Users\Nansen\Desktop\"
  
  myProps(0).Name = "FilterName"
  myProps(0).Value ="Text - txt - csv (StarCalc)"
  myProps(1).Name="FilterOptions"
  myProps(1).Value ="47/9,34,76,1,1/1/2/1" 'string mit den Optionen
    
  for i=0 To myDoc.Sheets.getcount -1
    oSheet=myDoc.Sheets(i)
    myDoc.CurrentController.setActiveSheet(oSheet)
    
    sUrl = sPath & "CSVtable" & (i + 1) & ".csv"
    sUrl=ConvertToUrl (sUrl)
    
    myDoc.storeAsUrl(sUrl,myProps())
  Next
End Sub
Gruß Frieder

Re: Makro Tabellen als csv exportieren

von Karolus » Fr, 13.01.2012 17:17

Hallo
Die Zuweisung von 'MyProps' wäre vor dem 'for...next'-Block besser aufgehoben.

Gruß Karo

Re: Makro Tabellen als csv exportieren

von Frieder D. » Fr, 13.01.2012 16:56

Hallo

Ich habe dir hier das Makro so erweitert, dass es alle Tabellen des Dokuments einzeln als CSV-Datei exportiert.

Code: Alles auswählen

Sub Speichern_CSV
Dim myDoc As Object
Dim sPath$ ,sUrl$
dim i%
Dim myProps(1) as New com.sun.star.beans.PropertyValue
  myDoc = thisComponent
  sPath="C:\Users\Nansen\Desktop\"
  for i=0 To myDoc.Sheets.getcount -1
    oSheet=myDoc.Sheets(i)
    myDoc.CurrentController.setActiveSheet(oSheet)
    
    sUrl = sPath & "CSVtable" & (i + 1) & ".csv"
    sUrl=ConvertToUrl (sUrl)
    
    myProps(0).Name = "FilterName"
    myProps(0).Value ="Text - txt - csv (StarCalc)"
    myProps(1).Name="FilterOptions"
    myProps(1).Value ="47/9,34,76,1,1/1/2/1" 'string mit den Optionen
    
    myDoc.storeAsUrl(sUrl,myProps())
  Next
End Sub
Gruß Frieder

Re: Makro Tabellen als csv exportieren

von Frieder D. » Fr, 13.01.2012 14:04

Hallo
Ich habe es dir gerade mahl mit deinen Angaben erstellt.
Allerdings speichert es immer nur die aktuell-aktive Tabelle als CSV.
Hier der Code:

Code: Alles auswählen

Sub Speichern_CSV
Dim myProps(1) as New com.sun.star.beans.PropertyValue
sPath="C:\Users\Nansen\Desktop\CSVtest.csv"
sUrl=ConvertToUrl (sPath)
myProps(0).Name = "FilterName"
myProps(0).Value ="Text - txt - csv (StarCalc)"
myProps(1).Name="FilterOptions"
myProps(1).Value ="47/9,34,76,1,1/1/2/1" 'string mit den Optionen
myDoc = thisComponent
myDoc.storeAsUrl(sUrl,myProps())
End Sub
Gruß Frieder

Re: Makro Tabellen als csv exportieren

von Frieder D. » Fr, 13.01.2012 13:34

Hallo rici35
Hier findest du ein Beispiel:

http://www.starbasicfaq.de/filteroption ... eroptionen

und hier findest du die Einstellungen:
http://wiki.services.openoffice.org/wik ... er_Options

Und der Code für "/" ist 47

Gruß Frieder

Re: Makro Tabellen als csv exportieren

von rici35 » Fr, 13.01.2012 12:59

Hi,

doch, dass funktioniert schon. Ich möchte das allerdings alles über Script steuern, dafür benötige ich ein Makro.

Viele Grüße

Rici

Re: Makro Tabellen als csv exportieren

von lorbass » Fr, 13.01.2012 12:54

Wieso brauchst du dafür ein Makro? Funktioniert bei dir Datei > Speichern unter… mit Dateityp Text CSV (csv) nicht?

Gruß
lorbass

CALC: Tabellen als csv exportieren

von rici35 » Fr, 13.01.2012 12:42

Hi,

ich bräuchte bitte ein kleines Makro welches mir die Tabellen aus meinen calc Dokument als text.csv Datei exportiert.

Mit / als Feldtrenner und " als Texttrenner.

Wer könnte mir da helfen?

Ich komme mit den staroffice Basic nicht zurecht.

Vielen Dank und viele Grüße

Richard



Moderation,4: verschoben in BASIC-Unterbereich, wo alle Makro-Fragen hin gehören; Betreff angepasst

Nach oben