
いつもお世話になります
クリップボードのクリアについてWebで調べてみると下記の二つのやり方があります
①
Application.CutCopyMode = False
②
Public Declare PtrSafe Function OpenClipboard Lib "user32" (ByVal hwnd As Long) As Long
Public Declare PtrSafe Function EmptyClipboard Lib "user32" () As Long
Public Declare PtrSafe Function CloseClipboard Lib "user32" () As Long
Sub ClearClipboard()
OpenClipboard (0&)
EmptyClipboard
CloseClipboard
End Sub
後者はAutoCadで”COPYHIST"でコピーして読み込んだ後、
クリップボードをクリアするときに使っていますが
今さながら違いについて疑問を持ち、投稿させていただきました
①と②の違い、使い分け等について分かりましたら教えてください
以上、よろしくお願い申しあげます
No.1ベストアンサー
- 回答日時:
1:Application.CutCopyMode = False:
VBA (Visual Basic for Applications) で使用される方法です。
このコードは、ExcelなどのOfficeアプリケーション内でクリップボードのコピー操作を終了するために使用されます。
例えば、データをコピーした後、このコードを実行することで、クリップボードの履歴がクリアされます。
一般的に、Officeアプリケーション内でのクリップボード操作に適しています。
2:Public Declare PtrSafe Function...:
Windows API を使用する方法です。
OpenClipboard、EmptyClipboard、CloseClipboard の3つの関数を使用しています。
VBAだけでなく、他のプログラムやスクリプトでも使用できます。
AutoCADのようなアプリケーションで、特定の操作(例:COPYHIST)の後にクリップボードをクリアする場合に適しています。
使い分けについて:
VBA を使用する場合は、Officeアプリケーション内での操作に限定されます。
Windows API を使用する場合は、他のアプリケーションやスクリプトでも利用できます。
どちらを選択するかは、具体的な状況と使用するアプリケーションによります。必要に応じて選択してください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) Vba Userformを前面に出すについて 3 2022/04/15 12:29
- Excel(エクセル) 【VBA】 Alt+PrintScreenにてアクティブウィンドウのスクショを貼付する方法 4 2022/12/08 20:53
- Visual Basic(VBA) VBA リボンののリカバリーでオーバーフローエラーになります 2 2023/07/04 19:07
- Visual Basic(VBA) Vba LongPtrについて教えてください 2 2022/08/19 11:14
- Excel(エクセル) 【マクロ】スクショ印刷がうまく動かない件 5 2022/12/06 17:37
- Visual Basic(VBA) M365環境での動作エラー、及び対応相談 1 2023/01/27 04:18
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る バッチからEXEの結果を受け取りたいのですが、 下記のバッ 1 2023/07/04 15:13
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る EXEの実行内容の結果によって、戻り値を0か1かで返したい 1 2023/07/04 16:40
- Visual Basic(VBA) 別シートから年齢別の件数をカウントしたいの続き 5 2023/01/24 00:16
- Access(アクセス) こんにちは。Accessのことで教えてください。M365環境で、Private Declare Fu 1 2023/01/09 14:59
このQ&Aを見た人はこんなQ&Aも見ています
-
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
エクセルVBAでクリップボード内容をクリア
その他(プログラミング・Web制作)
-
アクセス マクロ クリップボードを空っぽにしたい
Access(アクセス)
-
-
4
Excelの終了時に「クリップボードに…」を出なくする方法
Excel(エクセル)
-
5
EXCEL マクロ クリップボードクリア方法
Excel(エクセル)
-
6
Access VBA クリップボードの内容を
Access(アクセス)
-
7
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
8
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
9
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
10
エクセルのVBAでクリップボードにコピーした画像をpng(or jpg or bmp)保存したい
Visual Basic(VBA)
-
11
Wordのマクロでクリップボードの内容を取得する方法
Visual Basic(VBA)
-
12
エクセルのエラーメッセージ「400」って?
Visual Basic(VBA)
-
13
EXCEL VBA マクロ 実行する度に処理速度がどんどん遅くなる原因が知りたい
Excel(エクセル)
-
14
B列の最終行までA列をオートフィル
Visual Basic(VBA)
-
15
「Columns(A:C")」の列文字を数字にして表記したい"
Excel(エクセル)
-
16
「クリップボードを空にできません。他のアプリケーションが利用している可能性があります。」というエラー
Excel(エクセル)
-
17
エクセル2010、図が大きすぎますとメッセージが
Excel(エクセル)
-
18
エクセルVBAでセルに入力したパスでブックを開く
Excel(エクセル)
-
19
エクセルvbaでの図形のカット(コピー)ペーストについて
Excel(エクセル)
-
20
エクセルVBAで、MsgBox やInputBox は、画面の中央以外に表示させたい。
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
vba クリップボードクリアにつ...
-
IISワーカープロセスが原因でCP...
-
java起動時の日本語引数文字化...
-
open ssl 脆弱性について
-
JVM(JRE)の再配布?について。
-
予約システムの開発ツール
-
javaでウィンドウサイズの制御...
-
使用しているJUnitのバージョン...
-
XCODE コンソールのクリア
-
CrystalReportsのバージョン確...
-
gitでバージョン指定してダウン...
-
正規表現について質問です。 カ...
-
MSCOMCTL.OCXのアップデートの方法
-
VBAの「for i=1 to cells(…」...
-
JSPファイルで生じるエラーをど...
-
VBAでDVDのトレイを開く。、
-
Selenium/VBA/Chrome エラーで...
-
visual stadio 参照問題
-
プログラミングの入門者・初心...
-
Javaって何を使って開発するの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
vba クリップボードクリアにつ...
-
IISワーカープロセスが原因でCP...
-
unzip32.dllの利用について(64b...
-
帳票出力について
-
JAVAプログラムをWEB表示させる...
-
プラグインとパッチの違いは?
-
AccessとVBの違いについて
-
C#のメモリマップドファイルに...
-
Mac用 アプリケーション作成 ウ...
-
SurfaceViewの一時停止や再開方法
-
アプレットの利点について。
-
ログオフ中でもアプリケーショ...
-
意味が分からないエラー
-
MacでJavaゲーム作り JJEdit
-
IIS6.0アプリケーションプール...
-
java起動時の日本語引数文字化...
-
javaアプレットって??
-
2冊目のJAVA本
-
Java(Servlet,JSP)を使用して...
-
RELAX NG
おすすめ情報