Office: Makro

Helfe beim Thema Makro in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo, weiß jemand wie man Schaltflächen die makros auslösen an eine Excel Datei "binden" kann? Ich habe nen Excel Datei mit Makros die durch... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von User, 13. Oktober 2007.

  1. Makro


    Hallo,

    weiß jemand wie man Schaltflächen die makros auslösen an eine Excel Datei "binden" kann?
    Ich habe nen Excel Datei mit Makros die durch Schaltflächen in der Symbolleiste ausgelöst werden. Jetzt möchte ich das Excel Dokument weitergeben.

    jonny

    :)
     
  2. hiho

    programmieren *Smilie

    Code:
     
    chris-kaiser, 15. Oktober 2007
    #2
  3. Hi Jonny!

    Um Commandbuttons aus der Steuerelemente-Toolbox auf ein Tabellenblatt zu bringen sind folgende Schritte notwendig:

    1. gewünschte Tabelle öffnen und TAbellenblatt aktivieren
    2. "Ansicht" -> "Symbolleisten" -> "Steuerelemente Toolbox"
    3. auf dieser Symbolleiste erstes Icon von links: "Entwurfsmodus" aktivieren
    4. Klick auf Befehlsschaltfläche (gleiche Symbolleiste 6. Icon) Mauszeiger wird zum Kreutz
    5. auf dem Tabellenblatt eine Befehlsschaltfläche mit der Maus platzieren (ziehen)
    6. Auf der neuen Befehlsschaltfläche (Commandbutton 1) Rechtsklick -> "Code anzeigen"
    7. Jetzt bist du an der richtigen Stelle, um die Prozeduren per VBA aufzurufen Code:
    Grüße, Ulrich
     
    losgehts, 15. Oktober 2007
    #3
  4. Makro

    Hallo jonny,

    unter dem Pfad C:\Dokumente und Einstellungen\DeineUserID\Anwendungsdaten\Microsoft\Excel\ findest du eine Datei mit der Dateiendung .xlb (bis Excel2003). In dieser sind deine Symbolleisten gespeichert. D.h. wenn du diese Datei jemandem gibst und er öffnet sie in Excel, dann erscheinen in seiner Excelinstallation deine Symbolleisten.

    Daher ist es auch unbedingt erforderlich, die Makrosymbole auf eine eigene Symbolleiste zu ziehen, da du den Adressaten sonst ihre Symbolleisten, die sie vielleicht selbst schon verändert haben, zerschiesst. Und das gibt dann mächtig Ärger. Am Besten du packst alle relevanten Schaltflächen auf eine neue Symbolleiste, der du einen kryptischen Namen gibst, um zu verhindern, dass dieser Symbolleistenname bei einem der Adressaten bereits vorhanden ist. Dann würdest du nämlich diese Symbolleiste überschreiben. Blende dann alle anderen Symbolleisten aus und kopiere erst dann die .xlb-Datei woanders hin. Damit hast du deine xlb-Datei zum mitschicken. Bei den Adressaten werden nach dem Öffnen der xlb-Datei ebenfalls alle anderen Symbolleisten ausgeblendet. Aber diese wieder einzublenden ist ja kein Hexenwerk.

    Ich würde dir aber dringend raten, die Finger davon zu lassen, wenn du dir nicht absolut sicher bist, d.h. das Ganze bei einem willigen Opfer erfolgreich getestet hast !!!

    Gruß Ingolf
     
  5. Na, Jonny, wie ich sehe, hast Du jetzt drei völlig unterschiedliche Antworten. Falls Dir keine geholfen hat, wäre es sicherlich gut, wenn Du unter anderem noch einmal genau beschreibst, wo die Makro´s stehen, die Du übergeben willst (in einer Datei, die auch Daten enthält, welche vielleicht auch übergeben werden sollen, oder vielleicht ein Addin...?)

    Und falls wir/einer Dir geholfen hat freuen wir uns (ich hoffe, das kann ich für alle sagen) über ein Feedback *wink.gif*

    Grüße, Ulrich
     
    losgehts, 15. Oktober 2007
    #5
  6. Hi,

    danke an alle!! Werds morgen früh mal testen.
    Die Lösung von Ingolf hört sich am ehesten danach an was ich meinte, ich glaube das was du meinst Ulrich sind buttons auf einem Tabellenblatt, ich meine aber Schaltflächen. Du weißt schon als Standard ist da dieses Smiley für Makros.
     
    jonny1207, 15. Oktober 2007
    #6
  7. Hallo, jonny,

    der Vollständigkeit halber (auch wenn ich persönlich nichts davon halte): eine eigene Symbolleiste erstellen und dies über das Kontextmenü der Symbolleisten an die Mappe anbinden. Ich würde aber eine auf die Mappe eingestellte Vorgehensweise bevorzugen, wie von chris-kaiser vorgeschlagen.
     
    jeder mann, 15. Oktober 2007
    #7
  8. Makro

    hiho

    die eigene Symbolleiste kann ja auch über Extras ->anpassen -> Symbolleiste
    an die jeweilige Arbeitsmappe angefügt werden.

    NUR ist diese nicht Mappengebunden und es wird immer der komplette Pfad der Datei auf der Schaltfläche zurückgegeben...

    Wenn nun jemand die Mappe verschiebt indem zuerst ein neuer Name vergeben wird und die Orgnialdatei gelöscht wird) geht das Icon nicht mehr..
    Nach einer Serverumstellung bei uns im Hause war ich stundenlang im Einsatz *Smilie

    seit dieser Zeit vermeide ich es diese Variante zu nehmen.
     
    chris-kaiser, 15. Oktober 2007
    #8
  9. Hi,

    hab die (erste) Lösung von chris-kaiser genommen. Funktioniert einwandfrei *biggrin.gif*

    Für alle die das copy-and-paste übernehmen möchten, da fehlt die Deklaration der Variable intWorkSheetMenuBarWidth, also:
    dim intWorkSheetMenuBarWidth as integer


    Vielen Dank für eure Hilfe!!

    jonny
     
    jonny1207, 15. Oktober 2007
    #9
  10. hiho

    wenn Du noch ein passendes FaceID benötigst da hilft das weiter *Smilie
    lieste alle möglichen ID's auf und zeigt das Bild dazu an.

    Code:
     
    chris-kaiser, 15. Oktober 2007
    #10
  11. Hi,

    ja das Makro hab ich auch schon *tongue.gif*

    Danke!

    jonny
     
    jonny1207, 15. Oktober 2007
    #11
  12. Hallo *Smilie

    genau dieses Thema passt zu meinem Problem. *Smilie
    Getestet und funktioniert auch mit diesem einen Menüpunkt.

    Jetzt aber eine andere Frage:
    Ich möchte mir so eine Art kleine Toolbar mit verschiedenen Untermenüs aufbauen. Über die "reguläre" Möglichkeit über Excel funktioniert das ja auch wunderbar.
    Wie mach ich das denn hier beim Programmieren? Wie füge ich denn da so ein Untermenü ein und versehe sie dann mit Menüpunkten?

    Der letzte Post von Chris-Kaiser hab ich nicht so ganz verstanden. Was macht denn diese Makrosammlung?
     
    Marty257, 18. Oktober 2007
    #12
  13. Makro

    Hallo Marty!

    Anregung:

    Wenn du das in Excel schon einmal erfolgreich gemacht hast, warum machst du das nicht einfach nochmal und zeichnest das Ganze dabei als Makro auf?

    Da kommt dann sowas in der Art raus:

    Code:
     
  14. chris-kaiser, 18. Oktober 2007
    #14
  15. Die Lösung von Chris ist ja fast wieder prima. :-)

    Nur so ganz passt es nicht, das fügt sich ja dann in die Menüleiste ein, rechts neben dem ?.
    Als Symbolleiste wäre mir das lieber. Was muss ich denn da umbenennen, damit es auch als Symbolleiste angezeigt wird?

    Auch habe ich jetzt das Problem, dass die Makros nicht mehr gefunden werden. Der Einstein meldet immer die Fehlermeldung
    »Microsoft Excel kann das Makro "[Arbeitsmappenname]!Makroname" nicht finden«.

    Ich habe hier einfach das »besserist« durch mein Makroname ersetzt...


    ---
    Nochmal zurück zu Post #10 von Chris.

    Ich hab den VBA-Code mal 1:1 übernommen und in ein Modul einer Excelmappe kopiert.
    Darauf bin ich in Excel auf Makro ausführen und hab dann versucht, jedes Makro auszuführen. Bei jedem Versuch ist Excel abgestürzt.
    Wie kann ich das denn unterbinden? Oder liegt es an meiner Uralt-Excel-Version aus dem Jahre 97?

    Ich habe hier auch schon die beiden Zeilen

    Private Const MaxBefehle = 1000 'XL2000
    Private Const MaxFaceIds = 1000

    auf 1000 runtergesetzt, aber immer noch Excel-Absturz. *frown.gif*
     
    Marty257, 19. Oktober 2007
    #15
Thema:

Makro

Die Seite wird geladen...
  1. Makro - Similar Threads - Makro

  2. Makro einer Befehlsschaltfläche zuordnen

    in Microsoft Word Hilfe
    Makro einer Befehlsschaltfläche zuordnen: Hallo Zusammen, ich habe eine Frage : Ich habe eine Befehlsschaltfläche activeX Steuerelenz in der Word Datei eingefügt und möchte, dass beim Anklicken ein vorhandenes Makro ausgelöst wird. Wie...
  3. excel 365: Symbol mit benutzerdefinierten Makro

    in Microsoft Excel Hilfe
    excel 365: Symbol mit benutzerdefinierten Makro: Hallo ! ich war noch nicht fertig! Ich habe ein Problem! Ich habe ein Makro1 in Excel in einer Mappe1 aufgezeichnet. Danach habe ich den Zugriff auf das Makro1 in die Symbolleiste der Mappe1...
  4. Access Datei wird per Makro nicht gespeichert

    in Microsoft Access Hilfe
    Access Datei wird per Makro nicht gespeichert: Hallo zusammen, anbei mein Makro: Private Sub Speichern_Click() Dim Dateiname As String Dim Kuerzel Kuerzel = DLookup("mitarbeiterkürzel", "tbl_mitarbeiter", "mitarbeiterid = " &...
  5. Auswertung aus mehreren Registern erstellen (nur die Gelbmarkierten oder mit Datum von akt. Woche)

    in Microsoft Excel Hilfe
    Auswertung aus mehreren Registern erstellen (nur die Gelbmarkierten oder mit Datum von akt. Woche): Hallo zusammen, ich arbeite mit einer Excel-Arbeitsmappe, die mehrere Tabellenblätter enthält. Jedes Blatt dokumentiert bestimmte Vorgänge, und die Struktur der Daten ist in allen Blättern...
  6. Name der Datei durch Excel geändert

    in Microsoft Excel Hilfe
    Name der Datei durch Excel geändert: Hallo und guten Abend, Die Datei wird mittels Button (VBA) zwischen gesichert. Das Makro sichert zuvor die Datei und erstellt zus. eine Sicherungsdatei mit der Erweiterung Beispiel-"Sich"....
  7. Ein Makro für mehrere Register

    in Microsoft Excel Hilfe
    Ein Makro für mehrere Register: Moin, ich habe ein Makro wo Daten aus dem Register Master kopiert werden und Register, das mit einem Datum beschriftet ist. Ich möchte in Jedem Register ein Button haben was Daten aus dem Master...
  8. Makro öffnet unerwartete Datei

    in Microsoft Excel Hilfe
    Makro öffnet unerwartete Datei: Hallo Forum, ich brächte euer Schwarmwissen. Arbeite mit Excel eine Auftragsbearbeitung. Dort habe ich mir einen Button mit Makro erstellt und nutze diesen schon lange. Das Makro generiert ein...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden