ユーザ用ツール

サイト用ツール


youtube:vba-dll-001

文書の過去の版を表示しています。


Win32 APIのMessageBox関数を呼び出す

標準モジュール Win32

当方が使用しているExcel 2000ではLongPtrがサポートされていないため、ポインタが必要なところでLongにしています。 このような古いバージョンでなければLongPtrが使えるはずで、使うべきです。 MessageBoxADeclareの場合、hwndが該当します。

<codeprism lang=vba el=true css=full> Declare Function MessageBoxA Lib “user32.dll” (ByVal hwnd As Long, ByVal Text As String, ByVal Caption As String, ByVal Types As Long) As Long

Public Const MB_OK = &H0 Public Const MB_OKCANCEL = &H1 Public Const MB_RETRYCANCEL = &H5 Public Const MB_YESNO = &H4 Public Const MB_YESNOCANCEL = &H3

Public Const MB_ICONEXCLAMATION = &H30 Public Const MB_ICONWARNING = MB_ICONEXCLAMATION Public Const MB_ICONINFORMATION = &H40 Public Const MB_ICONATERISK = MB_ICONINFORMATION Public Const MB_ICONQUESTION = &H20 Public Const MB_ICONSTOP = &H10 Public Const MB_ICONERRO = MB_ICONSTOP Public Const MB_ICONHAND = MB_ICONSTOP

Function MessageBox(Text As String, Caption As String, Types As Long) As Long

  MessageBox = MessageBoxA(0, Text, Caption, Types)

End Function </codeprism>

ワークシート Sheet1

Sub test_Win32()
    Win32.MessageBox "Hello 世界 from Win32", "はろーはろーはろー", Win32.MB_YESNOCANCEL Or Win32.MB_ICONINFORMATION
End Sub

youtube/vba-dll-001.1710050618.txt.gz · 最終更新: 2024/03/10 15:03 by freemikan

特に明示されていない限り、本Wikiの内容は次のライセンスに従います: CC0 1.0 Universal
CC0 1.0 Universal Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki