2017-11-21 1 views
0
gwbkEach.Worksheets(6).Range(rngDeleteStart, rngDeleteEnd.Offset(-1)).EntireRow.Delete 

Der obige Code löscht Zeile 11-54 ($ 11: $ 54). Aber die Formen, die hinter Row-54 liegen, verschieben sich nicht nach oben. Für alle Shapes ist die placement-Eigenschaft auf xlMoveAndSize festgelegt.Zeilen werden durch Excel VBA-Code gelöscht, aber Formen werden nicht neu ausgerichtet

  • Wenn ich die Zeilen manuell lösche, positionieren sich die Shapes entsprechend wie erwartet.
  • Seltsamerweise, wenn ich einen Break-Point in der obigen Zeile des Codes dann alles funktioniert gut und die Formen positionieren sich als erwartet.
  • Ich habe versucht, DoEvents, Application.Wait um die obige Codezeile zu verwenden, aber nichts scheint zu funktionieren. Bitte hilf mir Jungs.

    Antwort

    0

    Das Problem behoben wurde, wenn ich einen Code hinzugefügt, um das Blatt zu aktivieren:

    gwbkEach.Worksheets(6).Activate ' FIXED THE ISSUE 
    gwbkEach.Worksheets(6).Range(rngDeleteStart, rngDeleteEnd.Offset(-1)).EntireRow.Delete 
    

    Hinweis: Sie müssen vermeidenApplication.ScreenUpdating = False, um die obige Lösung mit arbeiten

    Verwandte Themen