2016-06-16 11 views
-2

Ich habe ein Problem gefunden, wenn ich ein neues Blatt in eine Makro-Excel-Datei mit VBA hinzufügen. Es spielt keine Rolle, die Methode, die ich benutze:Fehler beim Hinzufügen eines neuen Blattes zu einer XLSM-Makro-Excel-Datei

  • Sheets.Add
  • Kopieren und Einfügen eines Blattes eine neue

Das neue Blatt wird erstellt (oder kopiert) zu schaffen, sondern Das Makro stoppt sofort, ohne einen Nachrichtenfehler, und der Rest des Codes wird nicht ausgeführt.

Ich habe versucht, die Datei in XLSX zu konvertieren, und jetzt, wenn ich den gleichen Code ausführen, wird das Blatt erstellt (wie zuvor) und die Codeausführung wird perfekt fortgesetzt.

Das ist der Grund, warum ich denke, dass es mit dem Macro Excel-Dateityp verwandt ist.

Hat jemand einen ähnlichen Fehler gefunden?

Vielen Dank im Voraus für jede Hilfe.

Alberto


UPDATE auf meiner früheren Anfrage

Ich habe eine erneute Überprüfung vorgenommen, die Prüfung genau den gleichen Code in anderem PC und Excel-Installation und ... es perfekt läuft.

Ich weiß nicht warum, aber jetzt ist das neue Blatt erstellt und der Code geht weiter. Der einzige Unterschied zwischen den beiden Geräten ist die Excel 2016-Version: Standard in einem und Profesional in dem anderen. Aber das kann natürlich nicht die Erklärung sein.

In jedem Fall muss ich untersuchen, was in einer dieser Installation passiert, die die Codeausführung stoppt.

+0

Sie müssen den entsprechenden Code anzeigen. So wie es aussieht, scheint deine Frage wie eine Bitte um psychisches Debugging zu sein. Persönlich tendiere ich dazu, besser zu debuggen, wenn ich den Code tatsächlich sehen kann. –

+0

Haben Sie Ereigniscode in der Arbeitsmappe, der Sie das Blatt hinzufügen? Oder irgendeine bedingte Formatierung, die UDFs verwendet? – Rory

+0

lassen Sie mich telethink ... ah .. es gibt ein "Ende" zwischen zwei Zeilen, sehen Sie das? : p – Rosetta

Antwort

0

Versuchen Sie diesen Code in Ihre xlsm Datei:

Dim ws As Worksheet 
Set ws = Sheets.Add(After:=Sheets(Sheets.Count)) 

Und lassen Sie mich wissen, wenn dies nicht funktioniert.

+0

Ich habe meine Frage aktualisiert. Bitte guck dir das an. Nur Sie, um zu bestätigen, habe ich versucht: Sheets.Add oder sheetSource.Copy After: = Sheets (Sheets.Count) ein Blatt Und in diesen beiden Fällen zu kopieren, das Makro stoppt nach der Erstellung/Kopieren des neuen Blattes. Aber, wie ich in meinem Update kommentiert habe, scheint es, dass es nur in meinem Büro PC geschieht Also, das ist etwas, was ich untersuchen muss. Danke – aacc

+0

Verwenden Sie die Arbeitsmappe die Multifunktionsleiste? Nur ein Gedanke, aber es könnte sein, dass das Hinzufügen und Kopieren eines Blattes einen anderen Prozess auslöst, den Ihr Code nicht durchläuft und das könnte der Fehler sein. – lonestorm

+0

Ja, es verwendet das Farbband. Kann ich falsch liegen, aber ich denke, dass es ein Bug sein kann. Ich habe gesehen, dass es einen Unterschied in der 2016 Excel Version ist: Im 16.0.4266.1001, stoppt die Ausführung nach dem neuen Blatt Hinzufügen Und im 16.0.6925.1016, setzt die Ausführung perfekt nach dem Hinzufügen. – aacc