Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: VBA: Fehler, Variable nicht definiert

VBA: Fehler, Variable nicht definiert
25.02.2016 16:28:16
Dieter(Drummer)
Guten Tag VBA Spezialisten,
ich rufe einen Kalender (Original aus: excelwerkstatt.de) auf und es kommt ein Fehlerhinweis "Fehler beim kompilieren, Variable nicht definiert", im Code (Markierung FETT):
  • 
    Private Sub UserForm_Initialize()
    Dim iCounter
    Dim LB As Control
    Dim LabelCount1 As Integer
    aktDat = Date
    Heute_zeigen.Caption = "Heute: " & Date
    For Each LB In KalForm.Controls
    If TypeName(LB) = "Label" Then
    LabelCount1 = LabelCount1 + 1
    If LabelCount1 > 6 And LabelCount1 

  • Kann mir Bitte jemand den Fehler im Code korrigieren.
    Mit Gruß, Dieter(Drummer)

    Anzeige

    9
    Beiträge zum Forumthread
    Beiträge zu diesem Forumthread

    Betreff
    Datum
    Anwender
    Anzeige
    AW: VBA: Fehler, Variable nicht definiert
    25.02.2016 16:39:40
    ransi
    HAllo Dieter,
    Die Fehlermeldungen die Excel so raushaut sind manchmal echt kryptisch.
    Aber deine Fehlermeldung ist so klar, klarer gehts nicht...
    Versuch mal so:
    Private Sub UserForm_Initialize()
    Dim iCounter
    Dim LB As Control
    Dim LabelCount1 As Integer
    Dim aktDate As Date
    aktDate= Date
    .
    .
    .
    ransi

    Anzeige
    im Original: Public aktDat as Date owT
    25.02.2016 16:48:38
    Helmut

    AW: im Original: Public aktDat as Date owT
    25.02.2016 16:58:31
    Dieter(Drummer)
    Danke Helmut für Rückmeldung. Habe es mal so einsetzt, aber es geht nicht:
  • 
    Private Sub Userform_Initialize()
    Dim iCounter
    Dim LB As Control
    Dim LabelCount1 As Integer
    Public aktDat As Date
    aktDat = Date
    Heute_zeigen.Caption = "Heute: " & Date
    For Each LB In KalForm.Controls
    If TypeName(LB) = "Label" Then
    LabelCount1 = LabelCount1 + 1
    If LabelCount1 > 6 And LabelCount1 


  • Gruß, Dieter(Drummer)

    Anzeige
    Hier..
    25.02.2016 17:16:32
    Helmut
    Public cLabel() As New clsLabel
    Public aktDat As Date
    Diese Zeilen in Modul 1 nach Option Explicit eintragen.
    Damit in allen Modulen gültig...
    Gruß

    AW: Topp! Helmut, das wars ...
    25.02.2016 17:29:03
    Dieter(Drummer)
    ... Danke Helmut für den Hinweis, jetzt klappt es prima!
    Noch einen schönen Abend und auch Dank an Ransi für Hilfe.
    Gruß, Dieter(Drummer)

    Anzeige
    AW: VBA: Fehler, Variable nicht definiert
    25.02.2016 16:51:06
    Dieter(Drummer)
    Danke Ransi für Rückmeldung.
    Das hatte ich auch schon versucht, aber der Fehler bleibt. Hier mal meine ganze Datei mit Makros. Bei Klick auf grünen Button kommt ein Rechner mit Button für Kalender.
    Würde mich freuen, wenn es klappt. https://www.herber.de/bbs/user/103881.xlsm.
    Danke für evtl. weitere Hilfe.
    Gruß, Dieter(Drummer)

    Anzeige
    AW: Dateübertragung war wohl nicht ok
    25.02.2016 17:30:05
    Peter
    Hallo Dieter,
    füge Public aktDat As Date in das Modul1 gleich hinter Option Explicit, dann sollte es funktionieren.
    Gruß Peter

    Anzeige
    AW: Danke Peter ...
    25.02.2016 17:35:56
    Dieter(Drummer)
    ... auch für deinen Hinweis, den hatte ich gerade schon so eingesetzt und es klappt.
    Einen schönen Abend noch ...
    Gruß, Dieter(Drummer)
    ;

    Forumthreads zu verwandten Themen

    Anzeige
    Anzeige
    Anzeige

    Infobox / Tutorial

    VBA-Fehler: Variable nicht definiert beheben


    Schritt-für-Schritt-Anleitung

    1. Öffne den VBA-Editor: Drücke ALT + F11 in Excel.
    2. Navigiere zu Deinem Modul: Finde das Modul, in dem der Fehler auftritt.
    3. Überprüfe den Code: Suche nach der Zeile, die den Fehler "Fehler beim kompilieren, Variable nicht definiert" verursacht.
    4. Definiere die Variable: Stelle sicher, dass die Variable, die den Fehler auslöst, ordnungsgemäß deklariert ist. Beispiel:
    Dim aktDat As Date
    1. Füge die Deklaration hinzu: Falls die Variable nicht definiert ist, füge sie gleich hinter Option Explicit hinzu, um sicherzustellen, dass sie in allen Modulen gültig ist.
    2. Speichere und teste den Code: Speichere Deine Änderungen und führe den Code erneut aus, um zu sehen, ob der Fehler behoben ist.

    Häufige Fehler und Lösungen

    • Variable nicht definiert vba: Dieser Fehler tritt auf, wenn Du versuchst, eine nicht deklarierte Variable zu verwenden. Stelle sicher, dass alle Variablen korrekt deklariert sind.
    • Fehler beim kompilieren variable nicht definiert: Überprüfe, ob Du Option Explicit am Anfang Deines Moduls verwendest. Dies zwingt Dich, alle Variablen zu deklarieren.
    • Typfehler: Achte darauf, dass der Datentyp der Variablen mit dem Wert übereinstimmt, den Du ihr zuweisen möchtest.

    Alternative Methoden

    • Verwendung von Option Explicit: Füge Option Explicit am Anfang jedes Moduls hinzu, um sicherzustellen, dass Du alle Variablen deklarierst. Dies hilft, Fehler wie "variable nicht definiert" zu vermeiden.
    • Debugging-Tools: Nutze die Debugging-Tools im VBA-Editor, um den Code Schritt für Schritt zu durchlaufen und zu beobachten, wo der Fehler auftritt.

    Praktische Beispiele

    Hier ist ein einfaches Beispiel, wie Du eine Variable korrekt definierst und verwendest:

    Option Explicit
    
    Public aktDat As Date
    
    Private Sub UserForm_Initialize()
        aktDat = Date
        Heute_zeigen.Caption = "Heute: " & aktDat
    End Sub

    In diesem Beispiel wird aktDat als Public-Variable deklariert, sodass sie im gesamten Projekt verfügbar ist.


    Tipps für Profis

    • Nutze die AutoVervollständigung: Während Du im VBA-Editor tippst, hilft Dir die AutoVervollständigung, Variablen korrekt zu benennen und Tippfehler zu vermeiden.
    • Kommentiere Deinen Code: Verwende Kommentare, um den Zweck von Variablen zu erklären, besonders in umfangreichen Projekten, um Missverständnisse zu vermeiden.
    • Fehlerprotokollierung: Implementiere eine Fehlerprotokollierung, um festzustellen, wo und warum ein Fehler auftritt. Dies ist besonders nützlich, wenn Du mit komplexen VBA-Projekten arbeitest.

    FAQ: Häufige Fragen

    1. Was bedeutet "variable nicht definiert vba"? Dieser Fehler tritt auf, wenn Du versuchst, eine Variable zu verwenden, die nicht deklariert wurde. Stelle sicher, dass Du alle Variablen vor ihrer Verwendung deklarierst.

    2. Wie kann ich den Fehler "Fehler beim kompilieren, variable nicht definiert" beheben? Überprüfe Deinen Code auf alle nicht deklarierten Variablen und füge entsprechende Dim-Anweisungen hinzu, um sie zu definieren.

    3. Sollte ich immer Option Explicit verwenden? Ja, es wird empfohlen, Option Explicit zu verwenden, da es hilft, Fehler zu vermeiden, indem es Dich zwingt, alle Variablen zu deklarieren.

    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