• ベストアンサー

エクセルで通知音

株式で使っているんですが エクセルのif関数で ある一定以上及び以下の金額になったら セルに『買い』『売り』と表示させています。 ただ、表示だけだとモニタに 釘付けになっていないといけないので 『買い』『売り』が表示された場合 通知音を出したいのですが 何か方法はありますでしょうか? よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • skink
  • ベストアンサー率38% (7/18)
回答No.2

こんにちは。 IF セルの値が「売り」OR 「買い」  Beep END IF で鳴りませんか?

mobioya
質問者

お礼

VBが良くわからないので どこに書けばいいのか。。。 beepを使うと言う事がわかりましたので 後は本を買ってやります。 ありがとうございました。

mobioya
質問者

補足

お手数お掛けいたします。 どこに記述すればよろしいでしょうか?

その他の回答 (2)

回答No.3

Beepでもいいと思いますが、指定した音を出力したければ、ユーザー関数を追加 する事で実現できると思います。 会社なので、音がなるか確認できませんが、こんな感じでどうでしょうか? 'セルに指定する数式 =IF(A1>0,soundctl(),"") 'ユーザー関数追加 'サウンド再生・停止 Public Declare Function PlaySound Lib "winmm.dll" Alias "PlaySoundA" ( _ ByVal lpszname As String, _ ByVal hModule As Long, _ ByVal dwFlags As Long _ ) As Long Public Const SND_LOOP = &H8 ' 繰り返し再生オプション Public Const SND_ASYNC = &H1 ' 非同期再生オプション Public Const SND_NOSTOP = &H10 ' サウンド再生中の場合はそのまま再生を継続 Public Const SND_NODEFAULT = &H2 ' 警告音を発生させないで停止 Public Const SND_PURGE = &H40 ' 全サウンド停止 Function SoundCtl() Dim lpszname As String Dim dwFlags As Long lpszname = "c:\alarm.wav" 'ファイル名を指定 'サウンドオプションに 非同期 + ループ+再生中は継続 を指定 dwFlags = SND_ASYNC + SND_LOOP + SND_NOSTOP PlaySound lpszname, 0&, dwFlags 'サウンドを再生 DoEvents MsgBox "任意のメッセージ出力", vbInformation + vbOKOnly, "" PlaySound vbNullString, 0&, SND_NODEFAULT + SND_PURGE End Function

mobioya
質問者

お礼

beep音の方を試してできたら こちらの方も試したいと思います。 ありがとうございました。

  • periodayo
  • ベストアンサー率20% (64/315)
回答No.1

音をならすだけなら beep と記述します。 しかし、お使いのコンピュータにより 音は一定ではなく色々変わる事があります。

mobioya
質問者

お礼

ありがとうございました。

関連するQ&A

専門家に質問してみよう