- ベストアンサー
Excel VBAでBEEP音を鳴らす方法を教えて
skp026の回答
以下にExcel VBAで音を扱うサンプルがあります。 http://www.start-macro.com/55/w/s077.html ここのWin32APIのbeepを使った方法と、 メディアプレーヤーを使った方法が、 ご希望に近いと思います。 ご確認ください。 ご希望と違ったらごめんなさい。
関連するQ&A
- Excel VBAの、Beepの音量を上げたい
教えてください。 Excel VBAで、Call ApiBeep を使って音を鳴らしていますが、音量が小さいです。 VBAの引数などで音量を上げる方法があれば良いのですが、方法はないのでしょうか? または、このBeepは、Windowsのシステム上に存在する何かの音を使用しているのでは、と思います。 そのシステム上の音声ファイルを、もっと音量の大きい別の音声ファイルに差し替えてしまうことが可能でしょうか? やり方をご教示頂きたいです。 ちなみにPCの音量は最大にしています。 OSはWindowsは7、Excelのバージョンは2007です。
- 締切済み
- Visual Basic
- VBA で警告音
VBAで警告音を鳴らす際にBeepを使っています。 このたび、3種類の警告音が必要なったのですが、VBAのBEEPの場合 「一般の警告」がなるだけなので、数種類の警告音が出来ません。 何か良い方法はありませんか?
- ベストアンサー
- Visual Basic
- Excel VBA 一定の数値以下で音を鳴らす
一つのセル内の数値(VBAにより、1秒ごとに更新される流動的な数値です)において、-2以下になるとすぐにBEEP音が鳴る設定をしたいのですが、何故か1分ごとにしか鳴りません。 今のモジュールは、標準モジュールに Public Declare Function Beep Lib "kernel32" (ByVal dwFreq As Long, ByVal dwDuration As Long) As Long Sheet1に Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 1 Then If Range("Q6") < -2 Then Call Beep(2000, 500) Call Beep(2000, 500) End If End If End Sub と入力しています。 改善方法をどうかご教授願います。
- ベストアンサー
- オフィス系ソフト
- Excel:列中に特定の文字列を表示するセルが出たらBeep音を鳴らす
商品の品番の確認作業にエクセルを使っています。 作業の効率化にエクセルVBAを使いたいのですが、うまくいきません。 具体的な使用目的は以下の通りです。 納品された商品には製造メーカーのバーコードがついています。それをエクセルに読み込んで予定通りの商品であるか確認作業を行います。 まず、エクセルシートのA列にメーカーコードを入力しておきます、B列のセルをアクティブにした状態でメーカーのバーコードを読み取ります。するとセルにメーカーコードが自動入力されます。この文字列がA列の文字列と一致した場合にはC列のセルにOKの文字が出るように設定しています。コードが一致しない場合はNGが出ます。 現在はOKかNGかを目で確認しているのですが、商品数が多いので、NGの場合にBeep音が出るようになっていれば作業が早くなります。 過去の質問例を調べて、VBAのAMI関数を使うとBeep音を鳴らせることはわかりました。たとえば、セルC1にNGと表示された場合にBeep音を鳴らす、というところまではできたのですが、列CのいずれかのセルにNGと表示された場合にBeep音を鳴らす、という設定ができません。 わかる方アドバイスお願いします。 ちなみに、セルC1にNGと表示された場合にBeep音を鳴らすには以下のように設定しました。 標準モジュール Public Declare Function Beep Lib "kernel32" (ByVal dwFreq As Long, ByVal dwDuration As Long) As Long シートのモジュール Private Sub Worksheet_Change(ByVal Target As Range) If Range("C1") = "NG" Then Call Beep(2000, 500) End If End Sub
- ベストアンサー
- その他MS Office製品
- エクセルのVBAで、音をならす方法
こんばんは。私はエクセル2000を使用しています。 現在やろうとしていることは、 実験の測定データをエクセルに取り込み(測定データは文字列としてエクセルに取り込まれます)、D列の数字が100以上になったら音をならして知らせるようにしたいと考えております。 それで、以下のマクロを組んでやってみました。 Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 4 Then If IsNumeric(Target) And Target.Value > 100 Then Beep MsgBox "範囲外です" End If End If End Sub しかし、If IsNumeric(Target) And Target.Value > 100 Thenのところで、型が一致しませんとエラー?がでてしまいます。 まだ、VBAを勉強しはじめて2週間くらいなので、なにぶんわからないことだからで、もしわかる方がいらしたら教えてください。
- ベストアンサー
- Visual Basic
- エクセルVBAについて
エクセルVBAについて range("B5") = 1行の、選択したセルの値 というようなマクロを作成したいと思っています。 というのも、B5セルの値が、1行で選択したセルの値に変化できればと思っています。 ちなみに下のようなコードを書いてみたのですが、うまくいきません orz Private Sub Worksheet_SelectionChange(ByVal Target As Range) Range("B5") = Rows(1).ActiveCell.Value End Sub 初心者で申し訳ありませんが、よい方法がありましたら、 よろしくお願いいたします。
- ベストアンサー
- その他MS Office製品
- BEEP音
PCの電源を入れるとBEEP音(ぷー、ぷー、ぷー)が鳴り続け 15分以上経つと起動します。解決方法をお願い致します。 使用機種 : 富士通 デスクトップ ESPRIMO WH77/M Windows10 5年経過です。 ※OKWAVEより補足:「富士通FMV」についての質問です。
- ベストアンサー
- Windows 10
- Excel VBAのプロシージャについて
こんにちは、VBAを作成しているのですが、分からない所があるので、詳しい方からのご教授をお願いします。 A AF _______________________________________________________________________ 1| 1 2 3 4 5 ・・・ 31 ←日付 2| 鈴木 11 15 35 8 25 3| 斉藤 45 52 25 21 50 4| 伊藤 25 45 75 36 16 ・1行目のB1セルからAFセルまで日付が入っています。 ・2行目のA2セルからA4セルまで名前が入っており、横方向にランダムな数字が入っています。 上記の表から、日付とランダムな数字を指定し検索する事でmsgboxで氏名を返せるように作っています。(例えば3日25で検索すると、msgboxで斉藤とでるようにする)。 自分なりに作ってみたのは、まずvbaを実行すると、A1行をautofilterで日付を検索し、activecell(検索結果の日付セル)の列からランダムな数字を再度autofilterで検索するというものですが、もっと記述について他に方法があるのではないかと疑問に思っていますので、このようなプログラムを作成する場合、慣れた方ならどのように記述するのでしょうか?よろしければ教えていただければと思いますのでよろしくお願いします。 ※実際は検索boxを作成していますが、AHセルに検索したい日付、AIセルに検索したいランダムな数字を入力するものとさせて頂きます。 ※EXCEL2000を使用しています。 ※中傷するような回答は遠慮させていただきます。 よろしくお願いします。
- ベストアンサー
- Visual Basic
- VBAで10行おきにセルの下に罫線を引く方法
Excel2003のVBAを使用し、10行おきに太い罫線をセルの下側に引きたいのですが、ご存知な方教えて頂けないでしょうか? 出来る事なら、セルの中に×が入っている行は自動的に省いて(選ばず)10行おきに罫線を引きたいと思っています。
- ベストアンサー
- Visual Basic
お礼
最速のご回答に感謝して、御礼申し上げます。