クリップボードに格納されているデータ形式を確認する。
クリップボードに格納されているデータ形式を確認するにはApplicationオブジェクトのClipboardFormats プロパティを利用します。
サンプルコードではテキスト形式とビットマップ形式の2種類を定数(xlClipboardFormatTexなど)を利用して判別していますが、他にもバイナリ形式(xlClipboardFormatBinary)やCSVフォーマット形式(xlClipboardFormatCSV)なども判別できます。
またクリップボードにデータが格納されていない場合はClipboardFormats プロパティからの取得した配列要素1の値が”-1″になります。
'******************************************************************
' クリップボードのデータ形式を確認
'******************************************************************
Sub ChkClipboard()
Dim vCBF As Variant
vCBF = Application.ClipboardFormats
If vCBF(1) = -1 Then
Debug.Print "クリップボードにデータは格納されていません。"
Exit Sub
End If
'形式を確認
Dim i As Long
For i = 1 To UBound(vCBF)
Select Case vCBF(i)
Case xlClipboardFormatText
Debug.Print "テキスト形式"
Exit For
Case xlClipboardFormatBitmap
Debug.Print "ビットマップ形式"
Exit For
Case Else
Debug.Print "テキスト、ビットマップ形式以外"
End Select
Next i
End Sub■実行結果



