Range.ClearContents löscht die Systemzwischenablage - Problemumgehung? (VBA / Excel)

Problem

Ein Datenblatt, an dem ich regelmäßig arbeite, möchte den Inhalt von Teilen der Ansicht zurücksetzen (damit er leer bleibt). In der Vergangenheit hatten wir Probleme mit Benutzern, die sagten, dieses Blatt lösche ihre System-Zwischenablage.

Es sieht so aus, als gäbe es ein Problem mit der VerwendungRange.ClearContents um diese Werte zu löschen.

# Grab some data from cells onto the clipboard

Sub ClearTheClipboardWhenTheUserIsntExpectingIt()
    Cells(1, 1).EntireRow.ClearContents    ' Or something like that
End Sub

Dies sollte ausreichen, um das Problem zu replizieren.

Umgehung

Meine Frage bezieht sich auf eine mögliche Problemumgehung:

Dim r as Range
...
r.Value2 = Empty

Fragen)

Gibt es einen offensichtlichen Grund dafür?nicht eine angemessene Problemumgehung?Gibt es eine kanonischere Möglichkeit, den Inhalt einer Reihe von Zellen zu löschen, ohne die Zwischenablage zu löschen?Ich benutze nurClearContents falsch?

Ich hasse es, eine große Codebasis zu durchlaufen und dieses Verhalten zu suchen / ersetzen, wenn sich später herausstellt, dass ich zurückgehen und es beheben muss, weil ich einen Fehler eingeführt habe.

Bearbeiten: Ich sollte erwähnen, dass ich Excel 2007 verwende

Antworten auf die Frage(2)

Ihre Antwort auf die Frage