人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

エクセルファイルのセルQ2に計算式が無いっていて通常は空白ですが、1分に1回更新しており、1又は-1の数値が出たら異なるアラームを鳴らしたいと思います。
エクセルマクロは分かりませんので、出来ればUWSCを使用して鳴らすスクリプトを教えて下さい。

●質問者: iwana1999
●カテゴリ:コンピュータ
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● きゃづみぃ
●500ポイント
Excel = XLOPEN("C:\TEST.xls")
XLACTIVATE(Excel, "Sheet1")
dd = XLGETDATA(Excel, "Q2")
if dd=1 then
print "1です。"
sound("BEEP")
endif
if dd=-1 then
print "-1です。"
sound("BEEP")
endif
XLCLOSE(Excel)

未確認ですみませんが、こんな感じでできると思います。

ちなみにエクセルのシートを参照するなら UWSCは pro版の使用となります。


iwana1999さんのコメント
回答を頂きまして有り難うございます。 しかし、BEEPが出るときと出ないときにありますが、理由が分かりますでしょうか?

きゃづみぃさんのコメント
どういう値の時にBEEPが出たのか わかりますでしょうか? もしくは 出なかったときの 値は 何なのか わかりますでしょうか?

iwana1999さんのコメント
Q2に1及び-1を入れて、uwsを起動しますが、音が出る場合と出ない場合があります。 音が出ない場合、1も-1も同じような頻度です。 音が出るのは、それぞれ1/5回くらいでしょうか。

きゃづみぃさんのコメント
新しく 回答を追加しました。 内容が 正しく表示されるか "1です。"や "-1です。" が正しく表示されるか 音が それに付随してちゃんとなるのか 確認してみてください。

iwana1999さんのコメント
回答者様の回答及び他の回答者様の回答を参考して、1及び-1毎に*wavファイルをしてして音が出るようになりました。 有り難うございました。

質問者から

計算式が無いっていて → 計算式が入っていて、の間違いです。


2 ● oil999
●500ポイント ベストアンサー

UWSCによるスクリプトです。
お試しください。

//鳴らす音ファイル
const sp = "C:\WINDOWS\MEDIA\CHIMES.WAV"
//Excelファイル名
const fn = "C:\hoge.xls" 
//Excelシート名
const st = "Sheet1"

//エクセルのファイルを開く
Excel = CREATEOLEOBJ("Excel.Application")
Excel.visible = False
Excel.WorkBooks.Open(FileName :=fn)
Excel.Sheets(st).Range("Q2").select
x = Excel.selection.value
if x=(-1) or x=1 then sound(sp)

iwana1999さんのコメント
回答を頂きまして有り難うございます。 しかし、音が全く聞こえませんが理由が分かりますでしょうか? 因みに、Excelとファイル名は変えて、Dドライブのルートにおいてあります。 ファイルは開いている様です。

3 ● きゃづみぃ
●0ポイント
>||
Excel = XLOPEN("C:\TEST.xls")
XLACTIVATE(Excel, "Sheet1")
dd = XLGETDATA(Excel, "Q2")

print "内容は" + dd + "です。"

if dd=1 then
print "1です。"
sound("BEEP")
endif
if dd=-1 then
print "-1です。"
sound("BEEP")
endif
XLCLOSE(Excel)

セルQ2の内容を出力するようにしました。
これで何が入っていたから BEEPが ならなかったのか わかるはずです。


iwana1999さんのコメント
回答者様の回答及び他の回答者様の回答を参考して、1及び-1毎に*wavファイルをしてして音が出るようになりました。 有り難うございました。
関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ