![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
例えば
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Sub test()
Dim Handle As Long
Handle = FindWindow("IEFrame", vbNullString)
Debug.Print Handle
End Sub
と言うコードでウィンドウハンドルを取得する場合、
参照設定のどこにもチェックを入れませんが、なぜ参照設定しなくても使えるのでしょうか?
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long
が参照設定の代わりになるのですか?
![「APIを使う時は参照設定は不要?」の質問画像](http://oshiete.xgoo.jp/_/bucket/oshietegoo/images/media/6/28504878_5497c35c3b235/M.jpg)
No.1ベストアンサー
- 回答日時:
こんにちは。
>参照設定
参照設定されるタイプライブラリやオブジェクトライブラリは、別に用意されたプログラムで、参照設定によって、そのクラスが呼び出され、VBAの中にその機能が組み込まれます。
Win(32) APIは、あくまでもWindowsそのものが持っている機能の一部で直接呼び出しできる関数です。[()がついているのは、32だけではなく64もあるからです。]
なお、画像の中の赤線の囲いのMessenger API Type Library は、Microsoft Messenger のことかと思います。Win32 APIとは関係ありません。APIは、Application Programming Interface の略で、Dllファイルなどでも、外部から使用できるようになっているものもあります。
なお、確か、以下は、IE のWindow を最大化させるために使うという内容の質問の時のものだと思いますが、
>Dim Handle As Long
>Handle = FindWindow("IEFrame", vbNullString)
>Debug.Print Handle
あえてこういうコードは必要ないのではないか、と思いました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) Vba Userformを前面に出すについて 3 2022/04/15 12:29
- Visual Basic(VBA) Vba LongPtrについて教えてください 2 2022/08/19 11:14
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る バッチからEXEの結果を受け取りたいのですが、 下記のバッ 1 2023/07/04 15:13
- Visual Basic(VBA) 別シートから年齢別の件数をカウントしたいの続き 5 2023/01/24 00:16
- Visual Basic(VBA) VBAでファイル名を指定して保存するとき 4 2023/03/26 21:55
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る EXEの実行内容の結果によって、戻り値を0か1かで返したい 1 2023/07/04 16:40
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
- Visual Basic(VBA) 別シートのデータを参照して値を入れたい。 まとめデータシートのC列D列の値を商品一覧シートのコードが 7 2022/08/17 13:20
- Excel(エクセル) 【マクロ】スクショ印刷がうまく動かない件 5 2022/12/06 17:37
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/15 15:12
このQ&Aを見た人はこんなQ&Aも見ています
-
「環境が人を育てる」って本当?環境によって人格や生き方は本当に変わるのか
環境が人生に与える影響は実際どれほどのものなのか、専門家の田宮由美さんに伺った。
-
VBSでuser32.dll(Win32API)を使用する方法を教えてください。
Visual Basic(VBA)
-
オブジェクト(dll)のレジストリ登録について
Visual Basic(VBA)
-
vbaから他のアプリを終了
Visual Basic(VBA)
-
-
4
VBA 1次元配列を2次元に追加する
Visual Basic(VBA)
-
5
エクセル、 名前の定義に関数を使用すると参照できない
Excel(エクセル)
-
6
EXCEL VBA API宣言でコンパイルエラー
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ワードに「URL」を貼り付けると...
-
Wordで行送りがmm単位にならない
-
APIを使う時は参照設定は不要?
-
2.7 ?2.8?
-
エクセルのカーソル位置表示色...
-
Wordでこのような三角が出てく...
-
エクセルで薄く透ける文字を入...
-
印刷用紙の中央に点線をいれた...
-
スケッチスタイルの有効化
-
改行すると一段、間が開いてし...
-
例えはワードで「10の3乗」...
-
Excelの集計がSUM関数で、1円...
-
【エクセル】コメントの初期(...
-
ワードで定型レイアウトを崩さ...
-
Excelのグラフ作成 『軸ラベル...
-
EXCELで一覧表のデータを個別に...
-
WORD中の赤色文字を、通常の黒...
-
XChange Viewerで文字サイズの変更
-
WORD ある縦線が消せない
-
カンマを改行に変換する方法
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ワードに「URL」を貼り付けると...
-
【Wordの初期化についてお願い...
-
ヘッダーとフッターがクリック...
-
エクセルのカーソル位置表示色...
-
Access2000VBAでOLE/DDEタイム...
-
Word2000、オートコレクト、オ...
-
Excelのアドインと参照設定の違...
-
エクセルで入力後のセルの移動...
-
goo blog パソコンで見ると字が...
-
APIを使う時は参照設定は不要?
-
ファンクションキー
-
エクセルで「Ctrlキー + クリ...
-
Wordで「バックスラッシュ」を...
-
エクセル ショートカットキー...
-
エアトレック20Vのセキュリティ...
-
Wiiペアレンタルコントロールの...
-
Windows 10の標準アプリ「アラ...
-
メイプルストーリーでの顔文字登録
-
画面が暗くならないようにした...
-
エクセル2007のフィルハン...
おすすめ情報