none
O97 VBA - willkürliche Meldung "Fortsetzung des Codes wird angehalten" RRS feed

  • Frage

  • Hallo!

    Regelmäßig passiert es, dass Word wie Excel mir die genannte Meldung auswerfen. Widerfährt es dem einen reagiert auch der andere. Ist es einmal passiert bleibt es so bis zum Reboot.

    Einen besseren Zusammenhang als Rechnerbelastung und (dringende Annahme) Auswerfen eines die Bildschirmanzeige belastenden Vorgangs (besser kann mans nicht beschreiben; Aufpoppen von Userforms, Aufruf einer CMD-Box via Shell, Ändern der Darstellung von Grafiken…) kann ich nicht erkennen bzw. nennen.

    Als ein Beispiel: ich zoome (im selben Dokument!) aus einem anderen Programm eingeklebte Diagramme (=Grafiken) per Button um ~1/3. Mal passiert nichts, dann muss ich 1x F wie Fortsetzen bemühen, dann 2x um das Mini-Makro zu beenden. Ohne Regelmäßigkeit, quasi völlig zufällig.

     Public Sub HundertdreißigProzent()
      On Error GoTo Pech'Nur gegen Fehlklicks
      Selection.ShapeRange.ScaleHeight 1.3, False
      Selection.ShapeRange.ScaleWidth 1.3, False
     Pech:
     End Sub

    Da 2x eine Grafikänderung stattfindet wäre es gemäß meiner Annahme  erklärbar warum es 1x oder 2x hakt.

    Da einem ein Reboot ungünstig käme, aber viele Grafiken zu zoomen wären (von Anderem nicht zu reden) suche ich nach einer Lösung.

    Word und Excel (weiteres mangels Notwendigkeit nicht getestet) zu beenden oder abzuschießen hilft so wenig wie andere Speicherfresser (erraten, die Grafikquelle) zu beenden. Es muss als eine Instanz die mit VBA in Berührung steht existieren die bei einem Reboot wieder auf Linie gebracht wird. Diese Instanz (SVCHOST?) würd eich zu gerne ermitteln und abschießen (in der Hoffnung, nicht Weiteres damit in den Abgrund zu reißen das ich noch brauche).

    Der Fehler verfolgt mich schon lange, ab W98SE über XP-SP2 bis SP3. Auf diversen Maschinen, Office hat alle Patches die es gibt. (Application.ScreenUpdating hilft nichts und wäre witzlos wenn man eine UserForm braucht.)

    Gibt es eine Lösung?

     


    Eric March Kenne die Vergangenheit! In der Unwissenheit über die Vergangenheit liegt das Verderben der Zukunft.
    Dienstag, 8. Juni 2010 09:55

Alle Antworten

  • Guten Tag Herr March,

    Ich habe folgendes Makro erfolgreich getestet:


    Public Sub HundertdreißigProzent()
     
      ActiveDocument.Shapes(1).ScaleHeight 1.3, False
      ActiveDocument.Shapes(1).ScaleHeight 1.3, False


    End Sub

    Meine Teste sind problemfrei auch fuer InlineShapes. Fuer diese Objekte koennte man auch einfach das Height und Width neu setzen.

    Freundliche gruesse,

    Vlad

    Dienstag, 22. Juni 2010 14:44
  • Falls du die Zeile «Als ein Beispiel:» überlesen haben solltest - das passiert mir überall (oder: bei jeder Sorte Code) wenn VBA in diesen Zustand gerät. Der Beispielcode selbst ist 100% einwandfrei.

     


    Eric March • »Kenne die Vergangenheit! In der Unwissenheit über die Vergangenheit liegt das Verderben der Zukunft.«
    Mittwoch, 23. Juni 2010 06:09