von Stephan » Fr, 19.08.2005 15:48
Das Speichern der Datei und manuelles öffnen in calc ist zu umständlich.
Was heißt das denn? Die Datei ist garnicht gespeichert? Hat also auch keine Dateiendung?
Gibt es eine Möglichkeit die ein Öffnen in calc erwingt?
Nein, mit Bordmitteln nicht.
Falls das nun wirklich ein Textdokument mit der Endung txt wäre könnte man das folgende Makro global als Autostartmakro für das Ereignis "Dokument öffnen" einbinden:
Code: Alles auswählen
Sub TXT_ist_Tabelle()
DOK = ThisComponent
If DOK.supportsService("com.sun.star.text.TextDocument") then
If LCase(Right(Dok.URL, 3)) = "txt" Then
rueck = msgbox("Als Tabellendokument öffnen?",36,"")
if rueck <> 6 Then Exit Sub
Dim Dummy()
dokument = StarDesktop.loadComponentFromURL ( "private:factory/scalc" , "_blank", 0, Dummy() )
xxx = ConvertToURL(DOK.URL)
DOK.Close(true)
dim document as object
dim dispatcher as object
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
dim args3(1) as new com.sun.star.beans.PropertyValue
args3(0).Name = "URL"
args3(0).Value = xxx
args3(1).Name = "FilterName"
args3(1).Value = "Text - txt - csv (StarCalc)"
document = ThisComponent.CurrentController.Frame
dispatcher.executeDispatch(document, ".uno:Open", "", 0, args3())
End If
End If
End Sub
Das würde bei Bestätigung einer Nachfrage das Dokument neu als Tabellendokument laden. Nur wenn es schon zuviel Arbeit ist das Dokument in Calc zu öffnen sehe ich in dem Makro auch keinen Vorteil, denn die Nachfrage muß ja beantwortet werden. Ohne Nachfrage würde sonst jedes *.txt als Tabelle geöffnet.
Gruß
Stephan
[quote]Das Speichern der Datei und manuelles öffnen in calc ist zu umständlich.[/quote]
Was heißt das denn? Die Datei ist garnicht gespeichert? Hat also auch keine Dateiendung?
[quote]Gibt es eine Möglichkeit die ein Öffnen in calc erwingt?[/quote]
Nein, mit Bordmitteln nicht.
Falls das nun wirklich ein Textdokument mit der Endung txt wäre könnte man das folgende Makro global als Autostartmakro für das Ereignis "Dokument öffnen" einbinden:
[code]Sub TXT_ist_Tabelle()
DOK = ThisComponent
If DOK.supportsService("com.sun.star.text.TextDocument") then
If LCase(Right(Dok.URL, 3)) = "txt" Then
rueck = msgbox("Als Tabellendokument öffnen?",36,"")
if rueck <> 6 Then Exit Sub
Dim Dummy()
dokument = StarDesktop.loadComponentFromURL ( "private:factory/scalc" , "_blank", 0, Dummy() )
xxx = ConvertToURL(DOK.URL)
DOK.Close(true)
dim document as object
dim dispatcher as object
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
dim args3(1) as new com.sun.star.beans.PropertyValue
args3(0).Name = "URL"
args3(0).Value = xxx
args3(1).Name = "FilterName"
args3(1).Value = "Text - txt - csv (StarCalc)"
document = ThisComponent.CurrentController.Frame
dispatcher.executeDispatch(document, ".uno:Open", "", 0, args3())
End If
End If
End Sub[/code]
Das würde bei Bestätigung einer Nachfrage das Dokument neu als Tabellendokument laden. Nur wenn es schon zuviel Arbeit ist das Dokument in Calc zu öffnen sehe ich in dem Makro auch keinen Vorteil, denn die Nachfrage muß ja beantwortet werden. Ohne Nachfrage würde sonst jedes *.txt als Tabelle geöffnet.
Gruß
Stephan