von Woatze » Mo, 22.08.2011 16:08
Hallo!
Ich hab jetzt nachfolgenden Code zusammengebastelt. Jetzt werden auf dem gerade aktiven Tabellenblatt die Breiten der Spalten entsprechend angepasst. Da das ganze doch recht umfangreich ist, wär meine Frage: Kann man das irgendwie einfacher (kürzer) fassen?
Da sich ja alles eigentlich immer wiederholt, dachte ich ob es vielleicht eine Möglichkeit gibt, wo man vorab die Werte angeben kann und dann eine Schleife abgearbeitet wird.
Code: Alles auswählen
Sub BreiteSetzen
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 argsA(0) as new com.sun.star.beans.PropertyValue
argsA(0).Name = "ToPoint"
argsA(0).Value = "A1:A1"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, argsA())
rem ----------------------------------------------------------------------
dim argsAA(0) as new com.sun.star.beans.PropertyValue
argsAA(0).Name = "ColumnWidth"
argsAA(0).Value = 3000
dispatcher.executeDispatch(document, ".uno:ColumnWidth", "", 0, argsAA())
rem ----------------------------------------------------------------------
dim argsb(0) as new com.sun.star.beans.PropertyValue
argsB(0).Name = "ToPoint"
argsB(0).Value = "B1:B1"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, argsB())
rem ----------------------------------------------------------------------
dim argsBB(0) as new com.sun.star.beans.PropertyValue
argsBB(0).Name = "ColumnWidth"
argsBB(0).Value = 380
dispatcher.executeDispatch(document, ".uno:ColumnWidth", "", 0, argsBB())
rem ----------------------------------------------------------------------
dim argsC(0) as new com.sun.star.beans.PropertyValue
argsC(0).Name = "ToPoint"
argsC(0).Value = "C1:H1"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, argsC())
rem ----------------------------------------------------------------------
dim argsCC(0) as new com.sun.star.beans.PropertyValue
argsCC(0).Name = "ColumnWidth"
argsCC(0).Value = 1440
dispatcher.executeDispatch(document, ".uno:ColumnWidth", "", 0, argsCC())
rem ----------------------------------------------------------------------
dim argsI(0) as new com.sun.star.beans.PropertyValue
argsI(0).Name = "ToPoint"
argsI(0).Value = "I1:I1"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, argsI())
rem ----------------------------------------------------------------------
dim argsII(0) as new com.sun.star.beans.PropertyValue
argsII(0).Name = "ColumnWidth"
argsII(0).Value = 4720
dispatcher.executeDispatch(document, ".uno:ColumnWidth", "", 0, argsII())
rem ----------------------------------------------------------------------
dim argsJ(0) as new com.sun.star.beans.PropertyValue
argsJ(0).Name = "ToPoint"
argsJ(0).Value = "J1:J1"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, argsJ())
rem ----------------------------------------------------------------------
dim argsJJ(0) as new com.sun.star.beans.PropertyValue
argsJJ(0).Name = "ColumnWidth"
argsJJ(0).Value = 500
dispatcher.executeDispatch(document, ".uno:ColumnWidth", "", 0, argsJJ())
rem ----------------------------------------------------------------------
dim argsK(0) as new com.sun.star.beans.PropertyValue
argsK(0).Name = "ToPoint"
argsK(0).Value = "K1:K1"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, argsK())
rem ----------------------------------------------------------------------
dim argsKK(0) as new com.sun.star.beans.PropertyValue
argsKK(0).Name = "ColumnWidth"
argsKK(0).Value = 2340
dispatcher.executeDispatch(document, ".uno:ColumnWidth", "", 0, argsKK())
rem ----------------------------------------------------------------------
dim argsL(0) as new com.sun.star.beans.PropertyValue
argsL(0).Name = "ToPoint"
argsL(0).Value = "L1:L1"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, argsL())
rem ----------------------------------------------------------------------
dim argsLL(0) as new com.sun.star.beans.PropertyValue
argsLL(0).Name = "ColumnWidth"
argsLL(0).Value = 550
dispatcher.executeDispatch(document, ".uno:ColumnWidth", "", 0, argsLL())
rem ----------------------------------------------------------------------
dim argsM(0) as new com.sun.star.beans.PropertyValue
argsM(0).Name = "ToPoint"
argsM(0).Value = "M1:AE1"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, argsM())
rem ----------------------------------------------------------------------
dim argsMM(0) as new com.sun.star.beans.PropertyValue
argsMM(0).Name = "ColumnWidth"
argsMM(0).Value = 1750
dispatcher.executeDispatch(document, ".uno:ColumnWidth", "", 0, argsMM())
rem ----------------------------------------------------------------------
dim argsAF(0) as new com.sun.star.beans.PropertyValue
argsAF(0).Name = "ToPoint"
argsAF(0).Value = "AF1:AS1"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, argsAF())
rem ----------------------------------------------------------------------
dim argsAFAF(0) as new com.sun.star.beans.PropertyValue
argsAFAF(0).Name = "ColumnWidth"
argsAFAF(0).Value = 1140
dispatcher.executeDispatch(document, ".uno:ColumnWidth", "", 0, argsAFAF())
End Sub
Grüße
Woatze
Hallo!
Ich hab jetzt nachfolgenden Code zusammengebastelt. Jetzt werden auf dem gerade aktiven Tabellenblatt die Breiten der Spalten entsprechend angepasst. Da das ganze doch recht umfangreich ist, wär meine Frage: Kann man das irgendwie einfacher (kürzer) fassen?
Da sich ja alles eigentlich immer wiederholt, dachte ich ob es vielleicht eine Möglichkeit gibt, wo man vorab die Werte angeben kann und dann eine Schleife abgearbeitet wird.
[code]
Sub BreiteSetzen
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 argsA(0) as new com.sun.star.beans.PropertyValue
argsA(0).Name = "ToPoint"
argsA(0).Value = "A1:A1"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, argsA())
rem ----------------------------------------------------------------------
dim argsAA(0) as new com.sun.star.beans.PropertyValue
argsAA(0).Name = "ColumnWidth"
argsAA(0).Value = 3000
dispatcher.executeDispatch(document, ".uno:ColumnWidth", "", 0, argsAA())
rem ----------------------------------------------------------------------
dim argsb(0) as new com.sun.star.beans.PropertyValue
argsB(0).Name = "ToPoint"
argsB(0).Value = "B1:B1"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, argsB())
rem ----------------------------------------------------------------------
dim argsBB(0) as new com.sun.star.beans.PropertyValue
argsBB(0).Name = "ColumnWidth"
argsBB(0).Value = 380
dispatcher.executeDispatch(document, ".uno:ColumnWidth", "", 0, argsBB())
rem ----------------------------------------------------------------------
dim argsC(0) as new com.sun.star.beans.PropertyValue
argsC(0).Name = "ToPoint"
argsC(0).Value = "C1:H1"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, argsC())
rem ----------------------------------------------------------------------
dim argsCC(0) as new com.sun.star.beans.PropertyValue
argsCC(0).Name = "ColumnWidth"
argsCC(0).Value = 1440
dispatcher.executeDispatch(document, ".uno:ColumnWidth", "", 0, argsCC())
rem ----------------------------------------------------------------------
dim argsI(0) as new com.sun.star.beans.PropertyValue
argsI(0).Name = "ToPoint"
argsI(0).Value = "I1:I1"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, argsI())
rem ----------------------------------------------------------------------
dim argsII(0) as new com.sun.star.beans.PropertyValue
argsII(0).Name = "ColumnWidth"
argsII(0).Value = 4720
dispatcher.executeDispatch(document, ".uno:ColumnWidth", "", 0, argsII())
rem ----------------------------------------------------------------------
dim argsJ(0) as new com.sun.star.beans.PropertyValue
argsJ(0).Name = "ToPoint"
argsJ(0).Value = "J1:J1"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, argsJ())
rem ----------------------------------------------------------------------
dim argsJJ(0) as new com.sun.star.beans.PropertyValue
argsJJ(0).Name = "ColumnWidth"
argsJJ(0).Value = 500
dispatcher.executeDispatch(document, ".uno:ColumnWidth", "", 0, argsJJ())
rem ----------------------------------------------------------------------
dim argsK(0) as new com.sun.star.beans.PropertyValue
argsK(0).Name = "ToPoint"
argsK(0).Value = "K1:K1"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, argsK())
rem ----------------------------------------------------------------------
dim argsKK(0) as new com.sun.star.beans.PropertyValue
argsKK(0).Name = "ColumnWidth"
argsKK(0).Value = 2340
dispatcher.executeDispatch(document, ".uno:ColumnWidth", "", 0, argsKK())
rem ----------------------------------------------------------------------
dim argsL(0) as new com.sun.star.beans.PropertyValue
argsL(0).Name = "ToPoint"
argsL(0).Value = "L1:L1"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, argsL())
rem ----------------------------------------------------------------------
dim argsLL(0) as new com.sun.star.beans.PropertyValue
argsLL(0).Name = "ColumnWidth"
argsLL(0).Value = 550
dispatcher.executeDispatch(document, ".uno:ColumnWidth", "", 0, argsLL())
rem ----------------------------------------------------------------------
dim argsM(0) as new com.sun.star.beans.PropertyValue
argsM(0).Name = "ToPoint"
argsM(0).Value = "M1:AE1"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, argsM())
rem ----------------------------------------------------------------------
dim argsMM(0) as new com.sun.star.beans.PropertyValue
argsMM(0).Name = "ColumnWidth"
argsMM(0).Value = 1750
dispatcher.executeDispatch(document, ".uno:ColumnWidth", "", 0, argsMM())
rem ----------------------------------------------------------------------
dim argsAF(0) as new com.sun.star.beans.PropertyValue
argsAF(0).Name = "ToPoint"
argsAF(0).Value = "AF1:AS1"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, argsAF())
rem ----------------------------------------------------------------------
dim argsAFAF(0) as new com.sun.star.beans.PropertyValue
argsAFAF(0).Name = "ColumnWidth"
argsAFAF(0).Value = 1140
dispatcher.executeDispatch(document, ".uno:ColumnWidth", "", 0, argsAFAF())
End Sub
[/code]
Grüße
Woatze