ich bin auf Blatt A und möchte vom Blatt A Macros mitdes Daten im Blatt B ausführen, ohne auf Blatt B zu wechseln. Danke im Voraus für jede konstruktive Hilfe. Gruß Dindu
ich verstehe ehrlich gesagt die Frage nicht so ganz. Du kannst doch jedes Makro aus jedem beliebigen Blatt heraus ausführen, ein Makro ist in der Ausführung niemals an ein Blatt gebunden (inhaltlich aber durchaus). Wenn du im Ribbon Ansicht, Gruppe Makros auf "Makros" klickst, kannst du jedes vorhandene Makro ausführen.
Mit der konstruktiven Hilfe ist es so eine Sache, denn deine Beispieldatei ist selbst alles andere als konstruktiv. Die enthält weder ein Makro noch einen aussagekräftigen Inhalt.
19.06.2019, 15:54 (Dieser Beitrag wurde zuletzt bearbeitet: 19.06.2019, 15:56 von Käpt'n Blaubär.)
Hallo Berni,
lieblicher hätte auch ich es nicht sagen / schreiben können. :05:
Hallo, ... versetze Dich mal in die Lage der Leute, die Du um Hilfe bittest und dann lies Dir Deinen Einstandspost noch mal durch. Bleibt die Frage, was soll von wo aus gestartet werden?
ich drücke es anders aus aus diesem Blatt "Arbeitsblatt"die Makros im Blatt"Macros" starten, die Makros sollen sollen die Daten vom Blatt "Macros" ändern ABER keine Änderung der Daten im Blatt "Arebitsblatt (siehe Details im Anhang)
19.06.2019, 18:12 (Dieser Beitrag wurde zuletzt bearbeitet: 19.06.2019, 18:20 von Gast 123.)
Hallo dindu
kurz und schmerzlos, wechsele bitte im Modul1 den Makro Recorder Code gegen meinen Code aus. Verlege beide Button in das "Arbeitsblatt", zum Starten. Und schau was passiert.
Zu Select: das verwendet der Makro Recorder, kein Programmierer! Wir schreiben Range und Cut zusammen, verzichten auch auf Selection, denn das ist nur bei aktiviertem Blatt möglich. Wir kopieren oder Schneiden Daten aus, OHNE das Blatt dafür zu aktivieren. Neu für dich ist auch die With Klammer, mit dem "." vor Range! Standard Wissen bei VBA. Lernt man aber erst wenn man lange genug programmiert hat.
mfg Gast 123
Code:
With Worksheets("Macros") .Range("C1").Cut Destination:=.Range("E21") With .Range("E21").Interior .Pattern = xlSolid .PatternColorIndex = xlAutomatic .Color = 255 .TintAndShade = 0 .PatternTintAndShade = 0 End With End With End Sub
Sub Makro2() With Worksheets("Macros") .Range("D1:D17").Cut Destination:=.Range("F1:F17") With .Range("F1:F17").Font .ThemeColor = xlThemeColorDark2 .TintAndShade = -0.899990844447157 End With With .Range("F1:F17").Interior .Pattern = xlSolid .PatternColorIndex = xlAutomatic .ThemeColor = xlThemeColorDark2 .TintAndShade = -0.249977111117893 .PatternTintAndShade = 0 End With End With End Sub
Nachtrag Kopierfehler!!
belm Kopieren des Codes fehlt im 1. Makro der Text: "Sub Makro1()" Bitte nicht vergessen einzufügen!
Folgende(r) 1 Nutzer sagt Danke an Gast 123 für diesen Beitrag:1 Nutzer sagt Danke an Gast 123 für diesen Beitrag 28 • dindu