Makro nur beim ersten Aufruf der Datei ausführen
Schritt-für-Schritt-Anleitung
Um ein Makro zu erstellen, das nur beim ersten Aufruf der Datei ausgeführt wird, folge diesen Schritten:
-
Öffne den VBA-Editor:
-
Projekt-Explorer öffnen:
- Drücke
Strg + R
, um den Projekt-Explorer zu sehen.
-
DieseArbeitsmappe auswählen:
- Doppelklicke auf "DieseArbeitsmappe".
-
Makro einfügen:
- Füge den folgenden Code in das Fenster ein:
Private Sub Workbook_Open()
On Error GoTo Fehler
Dim sh1 As Worksheet
Set sh1 = Sheets("User")
Dim LR As Long
LR = sh1.Cells(Rows.Count, 1).End(xlUp).Row
Dim CN As String
CN = Environ("ComputerName")
If CN = "" Then CN = "Unbekannter Name"
Dim c As Range
Set c = sh1.Range("a:a").Find(CN, LookIn:=xlValues)
If Not c Is Nothing Then
' Keine MSGBOX
Else
Sheets("User").Cells(LR + 1, 1).Value = CN
MsgBox "Du bist das erste Mal hier!"
' Hier deine Einstellungen vornehmen
End If
Exit Sub
Fehler:
MsgBox "Blatt 'User' fehlt"
End Sub
-
User-Tabelle erstellen:
- Erstelle ein Blatt namens "User", in dem die Computer-Namen gespeichert werden.
-
Datei speichern:
- Speichere die Datei als Makro-fähige Datei (*.xlsm).
Häufige Fehler und Lösungen
Alternative Methoden
Eine andere Möglichkeit, ein Word Makro beim Öffnen auszuführen, besteht darin, die AutoExec
-Funktion in Word zu verwenden. Hierbei wird das Makro jedes Mal ausgeführt, wenn Word gestartet wird. Dies ist jedoch weniger spezifisch für die Datei als die oben beschriebene Excel-Methode.
Praktische Beispiele
Wenn du das Makro implementiert hast, kannst du folgende Schritte ausprobieren:
-
Datei auf einem neuen Rechner öffnen:
- Überprüfe, ob die Meldung "Du bist das erste Mal hier!" erscheint.
-
Wiederholte Öffnungen auf demselben Rechner:
- Stelle sicher, dass keine neue Meldung erscheint, solange der Computer-Name bereits in der "User"-Tabelle gespeichert ist.
Tipps für Profis
-
Verwende einen Zähler:
- Du kannst die Anzahl der verschiedenen Benutzer in einer separaten Zelle speichern, um eine Übersicht über die Nutzung der Datei zu haben.
-
Debugging erleichtern:
- Füge
Debug.Print
-Anweisungen hinzu, um den Code während der Ausführung zu überwachen und Fehler leichter zu identifizieren.
FAQ: Häufige Fragen
1. Kann ich das Makro auch in einer älteren Excel-Version verwenden?
Ja, das Makro sollte in den meisten Excel-Versionen ab 2007 funktionieren, solange du die Datei im richtigen Format speicherst.
2. Was passiert, wenn das Blatt 'User' gelöscht wird?
Das Makro gibt eine Fehlermeldung aus, wenn das Blatt nicht vorhanden ist. Du solltest das Blatt immer wiederherstellen, um die Funktionalität zu gewährleisten.