CSV Import, Optionseinstellung übernehmen

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

Andrea123
Beiträge: 3
Registriert: Do, 18.10.2012 18:31

CSV Import, Optionseinstellung übernehmen

Beitrag von Andrea123 »

Hallo,

bin ganz neu in OO und bitte daher um Hilfe.

Ich muss Text aus der Zwischenablage in Calc einfügen, wobei die Separatoren (Spaltentrenner immer Tab und Andere = Doppelpunkt sind. Dafür hab ich ein Makro erstellt und die Tasten ALT + F zugewiesen. Jedes Mal öffnet mir das Makro aber nur das PopUp, wo ich dann manuell Tab und Doppelpunkt eingebe. Nach "OK" fährt das Makro fort. Was muss ich tun, damit die manuelle Eingabe nicht mehr nötig ist?

Code: Alles auswählen

REM  *****  BASIC  *****

Sub Main

End Sub


sub GP
rem ----------------------------------------------------------------------
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 = "$F$4"

dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args1())

rem ----------------------------------------------------------------------
dim args2(0) as new com.sun.star.beans.PropertyValue
args2(0).Name = "Format"
args2(0).Value = 1

dispatcher.executeDispatch(document, ".uno:PasteSpecial", "", 0, args2())

rem ----------------------------------------------------------------------
dim args3(0) as new com.sun.star.beans.PropertyValue
args3(0).Name = "ToPoint"
args3(0).Value = "$F$24"

dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args3())


end sub


sub FK
rem ----------------------------------------------------------------------
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$4"

dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args1())

rem ----------------------------------------------------------------------
dim args2(0) as new com.sun.star.beans.PropertyValue
args2(0).Name = "Format"
args2(0).Value = 1

dispatcher.executeDispatch(document, ".uno:PasteSpecial", "", 0, args2())

rem ----------------------------------------------------------------------
dim args3(0) as new com.sun.star.beans.PropertyValue
args3(0).Name = "ToPoint"
args3(0).Value = "$F$26"

dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args3())


end sub
Vielen Dank für Hilfe

Andrea



Moderation,4: Betreff angepasst
F3K Total
********
Beiträge: 3724
Registriert: Mo, 28.02.2011 17:49

Re: Makro übernimmt Optionen nicht

Beitrag von F3K Total »

Hi,
kann ich nicht nachvollziehen,
wenn ich Dein Makro verwende, und in der Zwischenablage habe ich TAB separierte Werte, werden sie sauber in die Spalten eingebaut.
Habe ich Doppelpunkte oder das Semikolon als Trenner, landet der gesamte Inhalt der Zwischenablage in einer Zelle.
Bei mir kommt kein Popup.
Dies habe ich Mit OOo 3.3.0 und AOo 3.4.1 getestet.

Gruß R
Andrea123
Beiträge: 3
Registriert: Do, 18.10.2012 18:31

Re: Makro übernimmt Optionen nicht

Beitrag von Andrea123 »

Hm,

danke, dass Du Dich dessen angenommen hast. Ich hab OO 3.2.1 auf Linux Debian.

Ich brauche beide Trenner zusammen, als Tab UND Doppelpunkt. Wenn ich diese Optionen im PopUp - egal ob per Makro oder direkt über das Feld "Paste special" - eingebe. werden die Spalten wie gewünscht erstellt.
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: Makro übernimmt Optionen nicht

Beitrag von komma4 »

WIllkommen im Forum.

Vielleicht hilft Dir mein Makro weiter: insertCSV2Calc
insertCSV2Calc hat geschrieben:Einfügen der Daten einer CSV-Datei in eine Tabelle einer Calc-Datei.

Dokumentation im ODT-Format. Modul leistet als Beispiel den Import gleichartig strukturierter, durch ein Trennzeichen getrennter Daten in eine neue Tabelle einer Calc-Datei. Durch ein mitgeliefertes Hilfsmakro können die nötigen Filteroptionen einfach ermittelt werden.

Code Anpassungen nötig!

Viel Erfolg!
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
Andrea123
Beiträge: 3
Registriert: Do, 18.10.2012 18:31

Re: CSV Import, Optionseinstellung übernehmen

Beitrag von Andrea123 »

Danke Winfried,

ich schau mir das an, bin kein Coder, sondern tumber Anwender :lol: Aber vielleicht versteh ich's ja.

Gruß
Andrea
Antworten