Laufzeitfehler ‚14‘

Dies ist ein Fehler, der auftritt, wenn ein Makro versucht, eine Zeichenfolge zu bearbeiten, und nicht genügend Speicher zum Speichern des Ergebnisses verfügbar ist. Dieser Fehler tritt auf, wenn VBA nicht mehr genügend Arbeitsspeicher zum Speichern der Zeichenfolge hat, entweder weil die Zeichenfolge zu groß ist oder weil auf dem Computer nicht genügend Arbeitsspeicher verfügbar ist.

Dies sind die drei möglichen Ursachen des Fehlers:

  • Große Seiten
  • String-Verkettung
  • Begrenzter Speicher

Wir werden uns jede dieser möglichen Ursachen ansehen und eine Lösung anbieten.

Was verursacht den Fehler?

Bevor Sie mit der Behebung des Fehlers fortfahren, müssen Sie die Fehlerursache in Ihrem VBA-Code identifizieren. Die Codezeile, die den Fehler verursacht, wird gelb hervorgehoben, sobald die Debug-Schaltfläche gedrückt wird.

Hier ist ein Beispiel-Code, der den Fehler verursacht: 

MeinText = "Hallo"
For Count = 1 To 100
MeinText = MeinText & MeinText
Next Count

Ursache 1: Große Seiten

Eine der häufigsten Ursachen für diesen Fehler ist, wenn ein Makro mit großen Zeichenfolgen arbeitet. Wenn die Zeichenfolge zu groß ist, um in den Speicher zu passen, löst VBA den Fehler aus.

Lösung:

Versuchen Sie, die Größe der Zeichenfolge zu verringern. Sie können dies tun, indem Sie die Zeichenfolge in kleinere Zeichenfolgen aufteilen oder einen anderen Datentyp verwenden, um die Zeichenfolge zu speichern, z. B. ein Array oder eine Variant.

Ursache 2: Zeichenfolgenverkettung

Eine weitere häufige Ursache für diesen Fehler ist, wenn ein Makro mehrere Zeichenfolgen zu einer einzigen Zeichenfolge verkettet. Wenn die kombinierte Länge der Zeichenfolgen den verfügbaren Speicher überschreitet, löst VBA den Fehler aus.

Lösung:

Versuchen Sie, Zeichenfolgen nicht zu verketten. Versuchen Sie stattdessen, ein Array zum Speichern der Zeichenfolgen zu verwenden, und fügen Sie das Array dann bei Bedarf zu einer einzigen Zeichenfolge zusammen.

Ursache 3: Begrenzter Speicher

Eine dritte häufige Ursache für diesen Fehler ist begrenzter Arbeitsspeicher auf dem Computer. Wenn der Computer nicht über genügend Arbeitsspeicher verfügt, um die Zeichenfolge zu speichern, wird VBA den Fehler auslösen.

Lösung:

Versuchen Sie, den auf dem Computer verfügbaren Arbeitsspeicher zu erhöhen. Dies kann durch Hinzufügen von mehr Arbeitsspeicher zum Computer oder durch Optimieren der Computerleistung erfolgen.

Benötigen Sie einen VBA Programmierer?

Wir als exact construct programmieren mit einem Team von rd. 20 Mitarbeitern seit über 10 Jahren Excel-Tools. Wir sind ein Nischenanbieter der spezialisiert auf Makros/VBA-Codes ist. Daneben unterstützen wir auch als 3rd Level Support die IT-Abteilungen rund um Probleme bei MS Office (Excel, Word, PowerPoint, etc.).

Haben Sie ein Excel-Problem? Benötigen Sie einen Makro-Programmierer? Rufen Sie uns unverbindlich an +41 52 511 05 25 oder kontaktieren Sie uns via Kontaktformular.

 

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Nach oben scrollen