• ベストアンサー

タスクバーでお知らせ

Visual Basicは全くの初心者です 例えば、前日帰る前にホワイトボードに「10時 ○○さんと待ち合わせ」と書いていたとします。 しかし、当日PCを使っての資料づくり等で忙しくホワイトボードを見なかったため待ち合わせに行くことが出来なかった。。 自分の職場でもこういう失敗があります。 で、前置きが長くなりましたが、質問はEXCELを使いセルに日付を入力していると、その当日PCの電源を入れるとデスクトップ右下のタスクバーに「ポコッ!」っとでてくるようにできないでしょうか? 自分も色々試してスケジュールソフトなんか使ってやってみたんですが、EXCEL(予定と実績を保管している)とスケジュールソフトに二重で日付を入力するのは面倒くさいのでやめてしまいました。 やはり、EXCEL・Visual Basic ではむりでしょうか?

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

  • ベストアンサー
  • nicotinism
  • ベストアンサー率70% (1019/1452)
回答No.3

起動時にメッセージを出すだけなら、こんなんでも使えるかな? マイドキュメントフォルダに『 予定.xls 』があり 『 予定 』シートにデータがある。 A列に日付 2007/3/2 B列に時間 12:00 C列に内容 ひるめしだ (A列の途中に空白のセルは無いこと) とすれば 下記内容を、適当名前で拡張子を VBS にして保存。 スタートアップフォルダに入れておけば、毎朝メッセージボックスが出てきます。 Set xlAp = CreateObject("Excel.Application") trgFile = CreateObject("Wscript.Shell") _   .SpecialFolders("MyDocuments") & "\予定.xls" Set BK = xlAp.Workbooks.Open(trgFile) Set WS = BK.Sheets("予定") For Each r In WS.Range("A:A")   If r.Value = "" Then Exit For      If r.Value = Date Then   i = i + 1   msg = msg _     & CDate(r.Offset(0, 1)) & " " _     & r.Offset(0, 2) _     & Chr(13) & Chr(10)   End If Next If i > 0 Then   msg = "---" & Day(Date) & "日の予定---" & Chr(13) & Chr(10) _     & msg & Chr(13) & Chr(10) _     & "予定表を開きますか?" Else   msg = Day(Date) & "日の予定は有りません" _     & msg & Chr(13) & Chr(10) _     & "予定表を開きますか?" End If If MsgBox(msg, vbYesNo) = vbYes Then   xlAp.Visible = True Else   xlAp.Quit End If

その他の回答 (2)

回答No.2

お世話になります。 定期的に Excel を読み込んで、 条件に合致したら、タスクトレイにバルーンチップを出したい って事ですよね? VB の バージョンがわかりませんけど、 .NET Framework 2.0(VS2005)だったら NotifyIcon とか使えば割と簡単に実装できるような... まぁ、全くの初心者 とのことですので、 #1 の方がおっしゃるようにお勉強は必須ですけどもね。

noname#78947
noname#78947
回答No.1

それってWindows Updateの更新通知みたいにふきだしで出したいということですか?だとすると多分難しいです。ただ、単純にメッセージボックスを出すのなら出来ると思います。 1. 毎回予定を書き込むファイルやシート名が変わるとどれを読み込むか指定できないので予定を保存するEXCELのファイル名とシート名を固定します。 2. ファイルに入力するデータの項目を決めます。今回の場合だと日付(入力形式はYYYY/MM/DDがやり易い)、時間(入力形式はHH:MMがやり易いが基本的に何でも良い)、予定内容だけで十分でしょう。 3. EXCELから日時と予定内容を読み込むプログラムを作ります。その中に現在の日付と登録されている予定の日付が同じなら表示するメッセージに追加するようにします。 4. 3.で追加されたメッセージを全て1つのメッセージボックスに表示します。このときに件数が多い場合は複数回に分けるほうが良いかもしれません。 実際のプログラムはここの文字制限内で書き込むのは難しそう、質問者さんが使用できる開発環境が何か分からない、自分はVisualBasicでのプログラミングの仕事をしているがこのプログラムの作成とテストにはそれなりに時間が掛かる、などの理由から乗せることが出来ません。上記を参考にご自分で開発してください。ただ、VisualBasicの開発環境があってプログラミングに慣れている人が開発してもそれなりに(これだけに集中しても最短で半日以上は掛かりそう)時間が掛かります。初心者の場合はVisualBasicを勉強しながらになるので1ヶ月ぐらい掛かりそうなです。 http://hanatyan.sakura.ne.jp/ もし、VisualBasicを勉強するつもりがあるのなら上記のサイトを参考にしてください。ここはVisualBasicに関する情報サイトでサンプルプログラムや簡易リファレンスなどがあります。また、ここの管理人や訪問者はVisualBasicに詳しい人ばかりなので質問にも答えてくれます。まあ、さすがにプログラム全てを教えてくれと言うのは非常識ですが例えば「EXCELからデータを読み込む方法は?」などといった自分で調べても分からなかったところを聞けます。少し調べれば分かるような内容での質問は良い印象を持たれないし回答も付かないことがあるので自分で努力することは忘れないように。 あと、たとえメッセージを表示するプログラムを作っても見落とすことや忘れることはあります。どんな場合でも複数回予定を確認することが必要です。まずは忙しくても1日のはじめにその日の予定を確認するようにすることが重要なのではないでしょうか?

関連するQ&A