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

Fehler Kompilieren Objekt erforderlich

Forumthread: Fehler Kompilieren Objekt erforderlich

Fehler Kompilieren Objekt erforderlich
22.05.2003 11:48:35
Nathalie
Dim iMonth As Integer, iDay As Integer
Dim iDummy As Integer

Set wksMy = ThisWorkbook.Worksheets("Feiertage")
For iMonth = 1 To 12
Set iDummy = CInt(vYear)
Set wks = Worksheets(iDummy)

Hallo Leute, kann mir jemand sagen, das an dem oben aufgelisteten Code falsch ist. Andauernd krieg ich den Fehler geschrieben, das noch ein Objekt erforderlich ist! Ich habe nur die Zeile mit dem Dim iDummy as Integer hinzugefügt und außerdem
iDummy den Wert von CINT(vyear) zu gewiesen.

Bei vyear handelt es sich um eine Globale Variable

Dank Euch Nathalie

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Fehler Kompilieren Objekt erforderlich
22.05.2003 11:53:20
Marti Beck

Hallo Nathalie,

ungetestet: Laß mal das Set vor iDummy weg.

Gruß
Martin Beck

Re: Fehler Kompilieren Objekt erforderlich
22.05.2003 11:56:30
Knut

iDummy ist kein Objekt!
iDummy = CInt(vYear)
Knut

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Infobox / Tutorial

Fehler beim Kompilieren: Objekt erforderlich in Excel VBA


Schritt-für-Schritt-Anleitung

  1. Code Überprüfung: Überprüfe deinen VBA-Code auf Syntaxfehler. Achte besonders auf die richtigen Variablendeklarationen. In deinem Fall könnte das Problem durch die Zeile Set iDummy = CInt(vYear) verursacht werden, da iDummy kein Objekt ist.

  2. Variablen korrekt deklarieren: Stelle sicher, dass alle Variablen korrekt deklariert sind. Verwende Dim für die Deklaration von Variablen und achte darauf, dass du Set nur für Objekte verwendest.

  3. Set-Anweisung entfernen: Bei Nicht-Objekten, wie in deinem Beispiel iDummy, solltest du die Set-Anweisung weglassen. Ändere die Zeile in:

    iDummy = CInt(vYear)
  4. Globale Variablen prüfen: Vergewissere dich, dass die globale Variable vYear korrekt initialisiert ist, bevor du sie verwendest.

  5. Code ausführen: Führe den Code aus, um sicherzustellen, dass der Fehler behoben ist.


Häufige Fehler und Lösungen

  • Fehler: "Objekt erforderlich": Dies tritt häufig auf, wenn du versuchst, eine Variable mit Set zu initialisieren, die kein Objekt ist. Denke daran, dass primitive Datentypen wie Integer keine Objekte sind.

  • Lösung: Entferne die Set-Anweisung vor nicht-objektbasierten Variablen und stelle sicher, dass die Objektvariablen korrekt initialisiert sind.


Alternative Methoden

  • Verwendung von Option Explicit: Füge am Anfang deines Moduls die Zeile Option Explicit hinzu. Dies zwingt dich, alle Variablen zu deklarieren, was das Risiko von Fehlern wie "Objekt erforderlich" verringert.

  • Debuggen mit der Debug.Print-Anweisung: Verwende Debug.Print zur Ausgabe von Variablenwerten im Direktfenster. So kannst du leichter herausfinden, wo der Fehler auftritt.

Debug.Print vYear

Praktische Beispiele

Hier ist ein einfaches Beispiel zur Veranschaulichung des Problems und der Lösung:

Dim iMonth As Integer
Dim iDay As Integer
Dim iDummy As Integer
Dim vYear As Integer

vYear = 2023  ' Stelle sicher, dass vYear initialisiert ist

For iMonth = 1 To 12
    iDummy = CInt(vYear)  ' Setze Set weg
    ' Hier kannst du weitere Operationen durchführen
Next iMonth

In diesem Beispiel wird iDummy korrekt zugewiesen, ohne dass die Set-Anweisung verwendet wird.


Tipps für Profis

  • Regelmäßige Codeüberprüfung: Halte deinen Code sauber und überprüfe regelmäßig auf unbenutzte Variablen oder falsche Zuweisungen.

  • Fehlermeldungen analysieren: Nutze die Fehlermeldungen von Excel VBA, um gezielt nach Lösungen zu suchen. Oft sind sie sehr spezifisch und helfen dir, das Problem schnell zu identifizieren.

  • Dokumentation nutzen: Konsultiere die Microsoft-Dokumentation zu VBA-Objekten, um ein besseres Verständnis für die Verwendung von Objekten und Variablen zu bekommen.


FAQ: Häufige Fragen

1. Was bedeutet der Fehler "Objekt erforderlich"? Der Fehler tritt auf, wenn du versuchst, eine Variable mit Set zu initialisieren, die kein Objekt ist. Achte darauf, nur Objekte mit Set zuzuweisen.

2. Wie kann ich den Fehler beim Kompilieren beheben? Überprüfe deinen Code auf korrekte Variablendeklarationen und entferne die Set-Anweisung bei nicht-objektbasierten Variablen. Stelle sicher, dass alle Objekte korrekt initialisiert sind.

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