Zwischenablage per VBA leeren


Wenn Sie größere Datenmengen über die Zwischenablage in Excel per VBA kopieren, kann dies zu Problemen beim Schließen der Datei führen. Excel gibt beispielsweise die Meldung "Das Bild ist zu groß und wird abgeschnitten" aus. Häufig friert Excel dabei ein und kann nur noch über den Task-Manger beendet werden.

Um dieses Problem zu vermeiden sollten Sie vor dem Beenden der Datei die Zwischenablage (Clipboard) leeren. 
Dazu können Sie folgenden VBA-Code in einem Code-Modul verwenden:

Private Declare Function OpenClipboard& Lib "user32" (ByVal hwnd As Long)
Private Declare Function EmptyClipboard Lib "user32" () As Long
Private Declare Function CloseClipboard& Lib "user32" ()

Public Sub ClearClipboard() 
OpenClipboard 0&
EmptyClipboard
CloseClipboard
End Sub


Aufgerufen kann der Code beispielsweise vor dem Beenden der Datei aufgerufen werden. Tragen Sie dazu folgenden Code in das Modul "DieseArbeitsmappe" ein.

Private Sub Workbook_BeforeClose(Cancel As Boolean)
ClearClipboard
End Sub


Damit wird die Zwischenablage geleert und der Hinweis wird beim Schließen der Datei nicht mehr angezeigt.

Partnerlinks

Relevante Artikel

Wir benutzen Cookies
Ihre Zufriedenheit ist unser Ziel, deshalb verwenden wir Cookies. Mit diesen ermöglichen wir, dass unsere Webseite zuverlässig und sicher läuft, wir die Performance im Blick behalten und Sie besser ansprechen können. Cookies werden benötigt, damit technisch alles funktioniert und Sie auch externe Inhalte lesen können. Des Weiteren sammeln wir unter anderem Daten über aufgerufene Seiten, getätigte Käufe oder geklickte Buttons, um so unser Angebot an Sie zu Verbessern. Mehr über unsere verwendeten Dienste erfahren Sie unter „Weitere Informationen“. Mit Klick auf „Akzeptieren“ erklären Sie sich mit der Verwendung dieser Dienste einverstanden. Ihre Einwilligung können Sie jederzeit mit Wirkung auf die Zukunft widerrufen oder ändern.