Code aus Forum - in welches Modul |
|
|
Du hast einen Code aus einem Forum bekommen und möchtest diesen nun anwenden?
Hier ein Beispiel wie es geht.
Je nach Code, muss dieser in ein allgemeines Modul, in´s Tabellenblatt oder in "DieseArbeitsmappe".
Oft postet ein Antworter in einem Forum einen Code mit dem Hinweis, wo dieser eingefügt werden soll.
Beispiel 1) Code muss in ein allgemeines Modul
|
Du bist in Excel in deiner Datei. Nun drückst du die Tastenkombination: Alt + F11.
Es öffnet sich die sogenannte Entwicklungsumgebung. Links im Explorer siehst du nun alle geöffneten Dateien.
Mit einem Klick ( kein Doppelklick ) markierst du die Datei, in welcher das Makro eingefügt werden soll.
Nun im Menü Einfügen - Modul wählen
und es erscheint ein neues Fenster. Sollte dort nicht "Option Explicit" stehen, so spielt das erstmal keine Rolle und kann ignoriert werden.
Anmerkung:
Option Explicit eine Hilfe für den Programmierer, da so Schreibfehler bei den Variablen verhindert werden.
Das automatische Hinzufügen dieser Codezeile kann unter Extras - Optionen - Editor - Häkchen bei "Variablendeklaration erforderlich" eingestellt werden.
Nun kann es immer mal vorkommen, dass jemand einen Code ohne Variablendeklaration schreibt. Befindet sich in dem Fenster die Option Explicit Anweisung, so meldet sich bei einem Code wie dieser der Debugger
Public Sub Nicht_deklarierte_Variable()
For i = 1 To 5
MsgBox i
Next
End Sub
Die Variable ist nicht deklariert. Es fehlt die Zeile Dim i as integer.
Aber gehen wir davon aus, dass der Antworter ordentlich gearbeitet hat.
In dieses Fenster fügst du nun den Code ein.
Mit einem Klick auf das Excelsymbol oben links im Fenster ( Alternativ Alt + F11 ) wechselst du zurück nach Excel.
Hier kannst du nun über Extras - Makro - Makros ein Fenster mit allen verfügbaren Makros öffnen.
Sind bereits viele Dateien mit Makros geöffnet, dann besser aus Dropdownmenü "Diese Arbeitsmappe" wählen.
Hier siehst du jetzt das gerade eingefügte Makro und kannst es mit Klick auf "Ausführen" starten.
Soll das Marko an eine Schaltfläche gekoppelt werden, dann wie folgt:
Aus dem Menü Ansicht - Formular, die Formularsymbolleiste einblenden.
Hier nun mit einem Klick auf Schaltfläche einen Button wählen und anschließend ein Klick ins Tabellenblatt ( kein Drag and Drop )
Es erscheint im Tabellenblatt eine Schaltfläche und gleichzeitig ein Fenster, um das gewünschte Makro auszuwählen. Mit Klick auf OK kann das Makro nun per Schaltfläche ausgelöst werden.
Alternativ kann auch über Extras - Makro - Makros - Optionen eine Tastenkombination erstellt werden, falls man lieber keine Schaltfläche haben möchte.
Die zweite Möglichkeit, bei dem Code kam der Hinweis:
Beispiel 2) Code muss in´s Tabellenblatt oder in das Klassenmodul der Tabelle
In diesem Fall ist der schnellste Weg ein Rechtsklick auf den Tabellenreiter und "Code anzeigen" auswählen. Der gepostete Code kann nun einfach in das sich öffnende Fenster kopiert werden.
Mit einem Doppelklick im Projektexplorer auf die Tabelle käme man zum gleichen Ziel.
Hier ist der Code ( bei einer Ereignisprozedur ) nun an die Tabelle gebunden und bietet andere Möglichkeiten. Es kann z.B auf Berechnungen, Bewegungen oder einem Doppelklick etc des Users reagiert werden.
Wurde wie hier das Ereignis "Private Sub Worksheet_SelectionChange(ByVal Target As Range)" ausgewählt, so wird bei jedem Zellenwechsel auf Tabelle1 ein dort eingegebender Code ausgeführt.
In das Codefenster kann aber auch ein "allgemeiner" Code eingefügt werden, bei dem es sich nicht um eine Ereignisprozedur handelt.
Soll in diesem Fall mit einer Schaltfläche gearbeitet werden, so kann diese aus Ansicht - Symbolleisten - Steuerelement Toolbox gewählt werden.
Der Code muss dann in das entsprechende Steuerelement, z.B Commandbutton1.
Private Sub CommandButton1_Click()
MsgBox "Commandbutton1 wurde angeklickt"
End Sub
Beispiel 3) Code muss in diese Arbeitsmappe
Durch einen Doppelklick im Projektexplorer auf "DieseArbeitsmappe" öffnet sich ein Fenster, welches z.B einen Code beim Öffnen oder Schließen der Datei auslöst.
In diesem Beispiel würde bei jedem Öffnen der Datei die Meldung "Beispielcode" erscheinen.
Ich freue mich, wenn diese Beschreibung hilfreich war.
|