Makro für alle Tabellenblätter

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: Makro für alle Tabellenblätter

Re: Makro für alle Tabellenblätter

von Fireflash » So, 10.10.2010 19:46

Hallo!

Problem habe ich anders gelöst! Trotzdem Danke!

Re: Makro für alle Tabellenblätter

von Fireflash » So, 10.10.2010 14:55

Unter Module liegt dann auch noch ein Makro. Für was ist das denn zuständig?

Code: Alles auswählen

Rem Attribute VBA_ModuleType=VBAModule
Option VBASupport 1
Sub GrpA()
'
' GrpA Makro
' Makro am 22.02.2002 von Kai Moczyk aufgezeichnet
'

'
    Range("BM31:BR35").Select
    Selection.Sort Key1:=Range("BM31"), Order1:=xlDescending, Key2:=Range( _
        "BR31"), Order2:=xlDescending, Key3:=Range("BO31"), Order3:=xlDescending _
        , Header:=xlNo, OrderCustom:=1, MatchCase:=False, Orientation:= _
        xlTopToBottom, DataOption1:=xlSortNormal, DataOption2:=xlSortNormal, _
        DataOption3:=xlSortNormal
End Sub

Re: Makro für alle Tabellenblätter

von Fireflash » So, 10.10.2010 14:47

Danke für eure Hilfe. Hab aber herausgefunden daß das Makro was ich hier rein habe gar nicht das richtige ist was zuständig ist für meine Berechnung. Diese Makro hier macht wohl das Richtige. Es steht aber als "VBA-Projekt" drin. Kann man das auch so ändern das auf allen Blättern immer gleich gerechnet wird?

Code: Alles auswählen

Rem Attribute VBA_ModuleType=VBADocumentModule
Option VBASupport 1


Private Sub CommandButton1_Click()
'
' GrpA Makro
' Makro am 22.02.2002 von Kai Moczyk aufgezeichnet
'

'
    Range("BM24:BS27").Select
    Selection.Sort Key1:=Range("BO24"), Order1:=xlDescending, Key2:=Range( _
        "BS24"), Order2:=xlDescending, Key3:=Range("BP24"), Order3:=xlDescending _
        , Header:=xlNo, OrderCustom:=1, MatchCase:=False, Orientation:= _
        xlTopToBottom
    Range("I34").Select
End Sub

Re: Makro für alle Tabellenblätter

von Karolus » Fr, 08.10.2010 21:20

Hallo
@Klaus
Dein "Rahmenwerk" nutzt dem aufgezeichnetem Code herzlich wenig, er wird trotzdem nur auf dem Tabellenblatt arbeiten das aktuell selektiert ist.

Code: Alles auswählen

sub copyall
oDoc = thisComponent
for i = 0 to odoc.sheets().count -1
    oquelle = odoc.sheets(i).getCellrangebyName("CZ27:EL31").getRangeAddress
    oziel = odoc.sheets(i).getCellrangebyName("CZ33").getcellAddress
    odoc.sheets(i).copyRange( oziel , oQuelle )
next i
end sub
abgewandelt aus http://www.dannenhoefer.de/faqstarbasic ... l#Zweig194

Gruß Karo

Re: Makro für alle Tabellenblätter

von kannenklaus » Fr, 08.10.2010 18:34

hallo fireflash,

packe deinen aufgegzeichneten code in die u.g. for/next-schleife.

Code: Alles auswählen

Sub AlleBlaetter
Dim i as Integer

oDoc = ThisComponent

	for i=0 to oDoc.Sheets.count-1
	
	REM dein code rein


	next i
end Sub
grüße klaus

Re: Makro für alle Tabellenblätter

von gripslund » Fr, 08.10.2010 16:50

hej,

nur ein Tipp:

Code: Alles auswählen

oSheet=Document.Sheets.getByName("Daten")
In dem Fall geht's zum Tabellenblatt "Daten".

oder:

Code: Alles auswählen

oSheet=Document.Sheets(n)
In dem Fall geht's zum Tabellenblatt mit der Nummer n (es wird bei 0 (Null) angefangen zu zaehlen).

gripslund

Makro für alle Tabellenblätter

von Fireflash » Fr, 08.10.2010 09:25

Hallo!

Ich habe ein Makro das auf allen Tabellenblättern ausgeführt werden soll. Im Moment macht es das nur auf dem 1. Blatt. Was muss ich denn ändern damit das funktioniert?

Code: Alles auswählen

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

Sub Main

End Sub



sub Tom
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 = "$CZ$27:$EL$31"

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

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

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


Moderation,4: Zweitposting im CALC-Bereich gelöscht; CODE-Tags gesetzt

Nach oben