Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Makro mit Makro ausführen

Makro mit Makro ausführen
23.01.2021 11:07:34
Robert
Hallo liebe Exelgemeinde.
Hätte mal wieder ein Frage und Bitte. Ich habe folgendes Makro aufgezeichnet. Es funktioniert _ auch aber nur im in der Tabelle1. Was muss ich tun das ich mehrere Arbeitsblätter mit diesem Makro einrichten möchte.

Sub Schaltfläche1_Klicken()
' Schaltfläche1_Klicken Makro
Application.Run "Lohn2021.xlsm!breiter1"
Application.Run "Lohn2021.xlsm!KopfHoch2"
Application.Run "Lohn2021.xlsm!Zellenverbindenkopf3"
Application.Run "Lohn2021.xlsm!Zellenformatieren4_1"
Application.Run "Lohn2021.xlsm!AB_X_Formatieren4_2"
End Sub

Für Eure Mühen danke ich im voraus.
LG Robert
Anzeige

14
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro mit Makro ausführen
23.01.2021 11:13:20
Hajo_Zi
Hallo Robert,
Zu Deiner Datei kann ich nichts schreiben, was wohl daran liegt das ich nicht auf fremde Rechner schaue.Ich baue keine Datei nach.
Sollte die Datei verlinkt werden?
Wenn du an Stelle einer Demomappe deine Originalmappe hochladen willst, diese aber sensible Daten enthält, kannst du diese Daten
http://www.ms-office-forum.de/forum/showthread.php?t=322895
ändern.
Bilder lade ich mir nicht runter, da Excel damit nichts anfangen kann.
http://www.excel-ist-sexy.de/bilder-statt-datei/
Hochgeladene Bilder können zwar als solche in Excel importiert werden, sind jedoch bei der Lösung von Problemen nicht sehr hilfreich, da man die eigentlichen Daten nicht ohne große und zeitraubende Umwege direkt in die Tabelle übertragen kann.
Das ist nur meine Meinung zu dem Thema.
http://www.excel-ist-sexy.de/bilder-statt-datei/
Hochgeladene Bilder können zwar als solche in Excel importiert werden, sind jedoch bei der Lösung von Problemen nicht sehr hilfreich, da man die eigentlichen Daten nicht ohne große und zeitraubende Umwege direkt in die Tabelle übertragen kann.
Das ist nur meine Meinung zu dem Thema.
Falls Link nicht ausgeführt wird:
1. Link kopieren
2. rechte Maustaste neues Fenter.
3. Umschaltstaste drücken und Klick auf den Link
4. STRG+ Link mit Maus aktivieren

Anzeige
AW: Makro mit Makro ausführen
23.01.2021 11:48:49
Werner
Hallo,
das liegt dann wohl an deinen Makros breiter1, KopfHoch2.....
Aber die kennen wir nicht.
Gruß Werner
AW: Makro mit Makro ausführen
23.01.2021 12:14:41
Robert
Hallo Werner!
Ich lade mal die Datei nach oben und hoffe das Ihr dann helfen könnt.
Vielen Dank im voraus.
LG Robert
https://www.herber.de/bbs/user/143255.xlsm
Anzeige
AW: Makro mit Makro ausführen
23.01.2021 13:28:21
Mullit
Hallo,
im Prinzip so:
Sub breiter1()
Dim wksSheet As Worksheet
For Each wksSheet In ThisWorkbook.Worksheets
With wksSheet
.Range("A:A,F:F,J:J,X:X,AK:AK,AX:AX,BK:BK,BX:BX").ColumnWidth = 30
.Range("B:B,K:K,S:S,T:T,Y:Y,AL:AL,AY:AY,BL:BL,BY:BY").ColumnWidth = 13.5
.Range("C:C,D:D,E:E,L:L,M:M,N:N,O:O,P:P,Q:Q,R:R,S:S,Z:Z,AA:AA,AB:AB,AC:AC,AD:AD,AE:AE, _
AM:AM,AN:AN,AO:AO,AP:AP,AQ:AQ,AR:AR,AZ:AZ,BA:BA,BB:BB,BC:BC,BD:BD,BE:BE,BM:BM,BN:BN,BO:BO,BP:BP,BQ:BQ,BR:BR,BZ:BZ,CA:CA,CB:CB,CC:CC,CD:CD,CE:CE").ColumnWidth = 13.5
.Range("S:S,T:T,AF:AF,AG:AG,AS:AS,AT:AT,BF:BF,BG:BG,BS:BS,BT:BT,CF:CF,CG:CG"). _
ColumnWidth = 15
End With
Next
End Sub
Sub KopfHoch2()
Dim wksSheet As Worksheet
For Each wksSheet In ThisWorkbook.Worksheets
With wksSheet
.Rows("1:1").RowHeight = 30
.Rows("2:2").RowHeight = 20
End With
Next
End Sub

Gruß, Mullit
Anzeige
AW: Makro mit Makro ausführen
23.01.2021 13:32:08
Werner
Hallo Mullit,
da müsste dann aber wohl jeweils ThisWorkbook noch gelöscht werden.
Der TE ruft ja die Makros aus einer anderen Mappe heraus auf und wenn ich ihn richtig verstehe, dann sollen die Makros in der aktiven Mappe ausgeführt werden.
Gruß Werner
AW: Makro mit Makro ausführen
23.01.2021 13:42:42
Mullit
Hallo Werner,
deswegen ja im Prinzip, hehe, laß ihn doch mal selbst kreativ werden, in seiner Vorlage referenziert er ja auch auf Thisworkbook, könnte also sein, daß er von außerhalb auf die vorliegende Mappe über Run zugreift...Du kennst doch des Kaisers famous last words: Schaun mer mal...
Gruß, Mullit
Anzeige
AW: Makro mit Makro ausführen
23.01.2021 19:22:39
Robert
Hallo Ihr beiden!
Habe jetzt versucht meine Kreativität einzusetzen. Bin aber nur bis zur Fehlermeldung end with ohne with. Leider. Vielleicht gibt es noch einen Weg.
LG Robert
AW: Makro mit Makro ausführen
23.01.2021 20:22:14
Mullit
Hallo,
yup, dann hast Du den Code falsch kopiert, zeig mal deinen akt. Code....
Gruß, Mullit
Anzeige
AW: Makro mit Makro ausführen
24.01.2021 09:52:21
Robert
Hallo Ihr Lieben.
Habe diesen Code verwendet um erstmal überhaupt zu testen. Da tritt besagter Fehler auf.
Sub breiter1()
Dim wksSheet As Worksheet
For Each wksSheet In ThisWorkbook.Worksheets
With wksSheet
.Range("A:A,F:F,J:J,X:X,AK:AK,AX:AX,BK:BK,BX:BX").ColumnWidth = 30
.Range("B:B,K:K,S:S,T:T,Y:Y,AL:AL,AY:AY,BL:BL,BY:BY").ColumnWidth = 13.5
.Range("C:C,D:D,E:E,L:L,M:M,N:N,O:O,P:P,Q:Q,R:R,S:S,Z:Z,AA:AA,AB:AB,AC:AC,AD:AD,AE:AE,  _
_
AM:AM,AN:AN,AO:AO,AP:AP,AQ:AQ,AR:AR,AZ:AZ,BA:BA,BB:BB,BC:BC,BD:BD,BE:BE,BM:BM,BN:BN,BO:BO,BP:BP, _
BQ:BQ,BR:BR,BZ:BZ,CA:CA,CB:CB,CC:CC,CD:CD,CE:CE").ColumnWidth = 13.5
.Range("S:S,T:T,AF:AF,AG:AG,AS:AS,AT:AT,BF:BF,BG:BG,BS:BS,BT:BT,CF:CF,CG:CG"). _
ColumnWidth = 15
End With
Next
End Sub
Sub KopfHoch2()
Dim wksSheet As Worksheet
For Each wksSheet In ThisWorkbook.Worksheets
With wksSheet
.Rows("1:1").RowHeight = 30
.Rows("2:2").RowHeight = 20
End With
Next
End Sub

LG Robert
Anzeige
AW: Makro mit Makro ausführen
24.01.2021 11:23:02
Werner
Hallo,
Sub breiter1()
Dim wksSheet As Worksheet
For Each wksSheet In Worksheets
With wksSheet
.Range("A:A,F:F,J:J,X:X,AK:AK,AX:AX,BK:BK,BX:BX").ColumnWidth = 30
.Range("B:B,K:K,S:T,Y:Y,AL:AL,AY:AY,BL:BL,BY:BY").ColumnWidth = 13.5
.Range("C:E,L:L,M:S,Z:Z,AA:AE,AM:AR,AZ:AZ,BA:BE,BM:BR,BZ:CE").ColumnWidth = 13.5
.Range("S:T,AF:AG,AS:AT,BF:BG,BS:BT,CF:CG").ColumnWidth = 15
End With
Next
End Sub
Sub KopfHoch2()
Dim wksSheet As Worksheet
For Each wksSheet In Worksheets
With wksSheet
.Rows(1).RowHeight = 30
.Rows(2).RowHeight = 20
End With
Next
End Sub
Gruß Werner
Anzeige
noch was eingekürzt
24.01.2021 11:26:41
Werner
Hallo,
.Range("C:E,L:L,M:S,Z:AE,AM:AR,AZ:AZ,BA:BE,BM:BR,BZ:CE").ColumnWidth = 13.5
Gruß Werner
AW: noch was eingekürzt
25.01.2021 17:48:37
Robert
Hallo Werner!
Ich danke Dir von ganzen Herzen für Deine Hilfe. Es funktioniert gut.
LG Robert
AW: Makro mit Makro ausführen
25.01.2021 17:49:27
Robert
Hallo Mullit!
Ich danke Dir von ganzen Herzen für Deine Hilfe.
LG Robert
Anzeige
Gerne u. Danke für die Rückmeldung. o.w.T.
25.01.2021 17:58:59
Werner
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige