その他

Access VBA 音を鳴らす PlaySound

音を鳴らす PlaySound

Access上で効果音を鳴らすプログラムコードを説明します。
PlaySoundという関数を使用しますが、WAVファイルのみが対応しています。

sound01

フォームの作成

フォームを作成しますがどんなフォームでも構いません。
今回はフォーム上にコマンドボタンをひとつだけ設置しています。

プログラムの作成

まず、宣言セクションに以下のプログラムを記述します。

Private Declare Function PlaySound Lib “winmm.dll” Alias “PlaySoundA” (ByVal lpszName As String, ByVal hModule As Long, ByVal dwFlags As Long) As Long

Private Const SND_SYNC = &H0 ‘同期再生
Private Const SND_ASYNC = &H1 ‘非同期再生
Private Const SND_LOOP = &H8 ‘繰り返し再生
Private Const SND_PURGE = &H40 ‘停止

次にフォーム上コマンドボタンのクリック時イベントに以下のプログラムを記述します。

Private Sub コマンド0_Click()

Call PlaySound(“\ピンポン.wav”, 0, SND_ASYNC)

End Sub

注意:WAVファイルのフルパスを指定します。

プログラムの説明

・同期再生
Call PlaySound(“\ピンポン.wav”, 0, SND_SYNC)
「同期再生」とは音を鳴らしている間は他の操作が一切出来ません。

・非同期再生
Call PlaySound(“\ピンポン.wav”, 0, SND_ASYNC)
「非同期再生」とは音を鳴らしている間も他の操作をすることが出来ます。

・繰り返し再生
Call PlaySound(“\ピンポン.wav”, 0, SND_ASYNC + SND_LOOP)
WAVファイルを繰り返し再生します。「非同期再生」時にしか繰り返し再生は出来ません。

・停止
Call PlaySound(“\ピンポン.wav”, 0, SND_PURGE)
音を停止させます。

いかがでしょうか?
WAVファイルしか再生は出来ませんが効果音を出す程度であれば問題なく使えるプログラムコードです。

こちらの記事もおすすめ!