Was macht dieses Macro?

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: Was macht dieses Macro?

Re: Was macht dieses Macro?

von 1.ray » Mi, 05.11.2008 12:39

komma4 hat geschrieben:Dieser dispatcher code wählt alle Zellen eines Tabellenblatts (einer Calc-Datei) und schneidet sie aus (in die Zwischenablage).

Was soll da übersetzt werden?
Vielen Dank erstmal

Du siehst offenbar sofort, was das Macro macht,
aber ich habe so gut wie keine Ahnung von Oo Basic oder sonstigen Programmiersprachen.
Meine Macros habe ich duch Aufzeichnen und durch Tipps aus dem Forum gebastelt.
Bei den betreffenden Macros ist das schon eine Weile her; deswegen meine komische Frage.

Re: Was macht dieses Macro?

von 1.ray » Di, 04.11.2008 17:06

Vor dem Ausführen des Macros allin1, das aus 2 Macros besteht, schaut das Dokument so aus:
November2008fiktiv.xls
Vor dem Macro
(7 KiB) 54-mal heruntergeladen
Das Macro schaut so aus:

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

Sub allin1
ufo
Ausblenden

End Sub


sub SpalteAalsDatum
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 = "NumberFormatValue"
args1(0).Value = 36

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


end sub
________________________________________________________________________________________________________________________________
Nach dem Macro schaut das Dokument so aus:
November2008fiktivnachMacroallin1.xls
Nach dem Macro
(7 KiB) 50-mal heruntergeladen
_________________________________________________________________________________________________________________________________
Ich glaube, das Macro:
sub SpalteAalsDatum
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 = "NumberFormatValue"
args1(0).Value = 36

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


end sub
formatiert die Datumsspalte, habe ich recht?
Es taucht dieses Fenster auf:
Im Uno Format einfügen
Im Uno Format einfügen
Unicodemeldung.png (41.42 KiB) 1492 mal betrachtet
_________________________________________________________________________________________________________________________________
der Vollständigkeit halber hier noch dir 2 Macros aus denen das Macro allin1 besteht (ufo und Ausblenden):

sub ufo
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 = "A1:IV65536"

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

rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:Cut", "", 0, Array())

rem ----------------------------------------------------------------------
dim args3(0) as new com.sun.star.beans.PropertyValue
args3(0).Name = "ToPoint"
args3(0).Value = "$A$1"
__________________________________________________________________________________________________________________________________
sub Ausblenden
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 = "D1:D65536"

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

rem ----------------------------------------------------------------------
dim args2(0) as new com.sun.star.beans.PropertyValue
args2(0).Name = "ToPoint"
args2(0).Value = "D1:D65536"

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

rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:HideColumn", "", 0, Array())

rem ----------------------------------------------------------------------
dim args4(0) as new com.sun.star.beans.PropertyValue
args4(0).Name = "ToPoint"
args4(0).Value = "E1:E65536"

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

rem ----------------------------------------------------------------------
dim args5(0) as new com.sun.star.beans.PropertyValue
args5(0).Name = "ToPoint"
args5(0).Value = "E1:E65536"

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

rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:HideColumn", "", 0, Array())

rem ----------------------------------------------------------------------
dim args7(0) as new com.sun.star.beans.PropertyValue
args7(0).Name = "ToPoint"
args7(0).Value = "G1:G65536"

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

rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:HideColumn", "", 0, Array())

rem ----------------------------------------------------------------------
dim args9(0) as new com.sun.star.beans.PropertyValue
args9(0).Name = "ToPoint"
args9(0).Value = "I1:I65536"

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

rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:HideColumn", "", 0, Array())


end sub

Puh,
falls das jemand liest, schon mal vielen Dank dafür
Gruss 1.ray

Re: Was macht dieses Macro?

von komma4 » Di, 04.11.2008 16:12

Dieser dispatcher code wählt alle Zellen eines Tabellenblatts (einer Calc-Datei) und schneidet sie aus (in die Zwischenablage).

Was soll da übersetzt werden?

Was macht dieses Macro?

von 1.ray » Di, 04.11.2008 16:01

Hallo,

Ich habe dieses Macro, und ich weiss nicht mehr was es macht !

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

Sub Main

End Sub

sub ufo
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 = "A1:IV65536"

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

rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:Cut", "", 0, Array())

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

aber zusammen mit dem Macro Spalten ausbenden formatiert es die Datumsspalte
meines aus dem Onlineganking exportiertem Monatsumsätzen so, dass die Datensortierfunktion funktioniert
, die alle meine Umsätze , also auch die eingetippten, nach Datum sortiert.

Wer kann mir das Macro "übersetzen" ?

Nach oben