Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Aufruf Userform = Laufzeitfehler 13

Aufruf Userform = Laufzeitfehler 13
13.11.2017 14:31:31
online
Hallo zusammen,
Habe mal vor ppar Jahren ein kleines Excel Programm mit Makro geschrieben.
Nachdem die Datei Umgezogen ist und Office14 installiert worden ist tut diese nicht mehr.
Das Problem ist folgendes:
Ich drücke einen Button in meiner Excel Tabelle, dieser sollte ein Menü öffnen (userform1)aber es kommt zur Fehlermeldung:
Laufzeitfehler 13
Typen unverträglich
Userform1.show
Und beim Debuggen steht das Programm in der Zeile Userform1.show, jetzt weiss ich nicht mehr weiter. Es soll doch nur die Userform1 geöffnet werden.
Wenn ich eine neue Userform2 anlege und diese öffnen lasse ist es kein Problem.
In der Userform1 werden paar Daten in Labels und Textboxen geschrieben und diese können geändert werden und mit einem Button bestätigt und in meine Excel Tabelle eingetragen werden.
Es ist bei mir schon lange her als ich das gemacht habe und jetzt tappe ich im dunkeln.
Habt Ihr eine Idee?
Gruss
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Aufruf Userform = Laufzeitfehler 13
13.11.2017 14:34:18
Crazy
Hallo
starte die Userform aus dem Editor mit F5
dann wird dir wahrscheinlich ein Fehler im Userform_Initialize angezeigt
MfG Tom
AW: Aufruf Userform = Laufzeitfehler 13
13.11.2017 14:46:39
online
Hallo,
Da kommt die Gleiche Fehlermeldung!
Habe jetzt im Quellcode alle Userform1 in Userform2 ersetzt.
Userform2 weird aufgerufen (leere Userform) in der nächsten Zeile bei Userform1.show kommt wieder die Gleiche Fehlermeldung.
Ich werde verrückt!
Anzeige
AW: Aufruf Userform = Laufzeitfehler 13
13.11.2017 15:04:10
Nepumuk
Hallo,
wähle im VBA-Editor - Menüleiste - Extras - Optionen - Allgemein - Unterbrechen bei Fehlern - die Option "In Klassenmodul".
Starte anschließend das Userform erneut.
Jetzt bleibt der Debugger in der fehlerauslösenden Zeile stehen.
Gruß
Nepumuk
AW: Aufruf Userform = Laufzeitfehler 13
13.11.2017 15:35:36
online
Super!
Danke somit konnte ich den Fehler schnell finden.
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Laufzeitfehler 13 in Excel VBA beheben


Schritt-für-Schritt-Anleitung

  1. Öffne den VBA-Editor:

    • Drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Wähle das Userform aus:

    • Suche in der Projektansicht nach dem entsprechenden Userform (z.B. Userform1).
  3. Starte die Userform:

    • Klicke auf die Userform und drücke F5, um sie aus dem Editor zu starten.
  4. Debugging aktivieren:

    • Gehe zu Extras > Optionen > Allgemein und aktiviere die Option „In Klassenmodul unterbrechen bei Fehlern“.
  5. Fehler identifizieren:

    • Starte die Userform erneut. Der Debugger sollte nun in der fehlerauslösenden Zeile stehen und dir helfen, den Laufzeitfehler 13 zu lokalisieren.

Häufige Fehler und Lösungen

  • Laufzeitfehler 13 – Typen unverträglich:

    • Dieser Fehler tritt häufig auf, wenn du versuchst, Daten eines Typs in eine Variable eines anderen Typs zuzuweisen. Überprüfe, ob alle Variablen in deinem Code korrekt deklariert sind.
  • Unzureichende Initialisierung:

    • Stelle sicher, dass alle erforderlichen Werte in den Labels und Textboxen der Userform initialisiert werden, bevor die Userform angezeigt wird.
  • Kompatibilitätsprobleme nach Office-Upgrade:

    • Wenn du von einer älteren Version auf Office 2014 gewechselt hast, überprüfe, ob alle Objekte und Steuerelemente der Userform noch kompatibel sind.

Alternative Methoden

  • Erstellen einer neuen Userform:

    • Wenn der Fehler weiterhin auftritt, erstelle eine neue Userform (z.B. Userform2) und kopiere die Steuerelemente von Userform1. Teste dann, ob der Fehler dort auch auftritt.
  • Verwendung von Debugging-Tools:

    • Nutze die Debug.Print Anweisung, um Werte von Variablen vor dem Auftreten des Fehlers zu überprüfen.

Praktische Beispiele

  1. Typen unverträglich Fehler:

    Dim myString As String
    myString = 123 ' Dies verursacht einen Laufzeitfehler 13

    Korrektur:

    Dim myString As String
    myString = CStr(123) ' Konvertiere die Zahl in einen String
  2. Initialisierung von Steuerelementen:

    Private Sub Userform_Initialize()
       Me.TextBox1.Value = "Bitte eingeben"
    End Sub

    Stelle sicher, dass TextBox1 korrekt benannt ist und existiert.


Tipps für Profis

  • Halte deine VBA-Umgebung sauber, indem du regelmäßig nicht benötigte Userforms und Module löschst.
  • Verwende Option Explicit am Anfang jedes Moduls, um sicherzustellen, dass alle Variablen deklariert werden, was Laufzeitfehler 13 verhindern kann.
  • Nutze Fehlerbehandlungsroutinen, um den Code robuster zu machen und Fehler zu protokollieren.

FAQ: Häufige Fragen

1. Was ist ein Laufzeitfehler 13 in Excel VBA?
Der Laufzeitfehler 13 tritt auf, wenn es einen Typkonflikt zwischen Variablen gibt, z.B. wenn du versuchst, eine Zahl als Text zu verwenden.

2. Wie kann ich Laufzeitfehler 13 in Excel VBA vermeiden?
Achte darauf, dass alle Variablen korrekt deklariert sind und verwende Datentypen, die zu den Werten passen, die du zuweist. Implementiere auch die Option Option Explicit.

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