2
Application.CutCopyMode=False
在windows excel中清除虛線和剪貼板數據丟失,這是可取的。如何清除mac上的剪貼板excel vba
但是對於Mac OS也是如此。在Mac上清除虛線,但剪貼板數據不會丟失。
是否有單行或任何方法可以清除mac和windows上的剪貼板?
Application.CutCopyMode=False
在windows excel中清除虛線和剪貼板數據丟失,這是可取的。如何清除mac上的剪貼板excel vba
但是對於Mac OS也是如此。在Mac上清除虛線,但剪貼板數據不會丟失。
是否有單行或任何方法可以清除mac和windows上的剪貼板?
我發現這個代碼here,我沒有或使用Mac,所以我不能測試這個,但從閱讀代碼它將分配「」(沒有換句話說)到剪貼板。
希望這個作品,或者至少可以讓你在正確的方向
Public Function ClearMacClipBoard() As Boolean
Dim myDO As DataObject
On Error GoTo EndCMCB
Set myDO = New DataObject
myDO.SetText ""
myDO.PutInClipboard
Application.CutCopyMode = False
ClearMacClipBoard = True
EndCMCB:
On Error GoTo 0
End Function
編輯:
從評論稍有變化,試圖在Windows和Mac
工作都這應該跳過任何無法正常運行的代碼行,因此當您嘗試在Windows上運行Mac代碼時,它只會跳過它,反之亦然
Public Function ClearMacClipBoard() As Boolean
Dim myDO As DataObject
On Error GoTo Resume Next
Set myDO = New DataObject
myDO.SetText ""
myDO.PutInClipboard
Application.CutCopyMode = False
ClearMacClipBoard = True
On Error GoTo 0
End Function
但這不適用於Windows的權利?我需要兩個系統兼容的東西 – newguy
您是否正在使用適用於Mac和Windows版本Excel的單行代碼?因爲'Application.CutCopyMode = False'將清除Windows和'myDO.SetText'「''myDO.PutInClipboard'將清除Mac,只需將'On error Goto EndCMCB'更改爲'On error resume next' –
否我追求任何能在兩個系統上運行的東西。目前你的例子不會在Windows上工作。示例:假設我必須在不同的系統上運行相同的宏,那麼它不應該給我任何錯誤。 – newguy