2009年08月07日

エクセルマクロ(VBA);フォロー

先日息子の誕生日の事を書きましたが、
誕生日ケーキを買いに行ったときの話。

CMの「ダイワハウチュ」みたいな出来事に
遭遇しました。

ケーキを2個買いメッセージを書いてもらいました。

店員さんが、
「メッセージの確認をお願いします」
とメッセージを読み上げた。

「〇〇君お誕生日おめれとうございます。」
えっ!今、「おめれとう」って言った?って心の中で
耳を疑っていましたが、

2個目も同じように
「確認お願いします」
と読み上げてくれた。

「○○君お誕生日おめれとうございます。」

やはり「おめれとう」だった。

なんで、「おめれとう」なんだ?って
「ダイワハウチュ」のCMが
頭の中で繰り返し浮かんできました。

*--------------*

では、本題です。

自分で作ったプログラムが実際に現場で使われているのを
見ると嬉しいものです。

私の場合、勉強のつもりでやっているのでもちろん無償です。
だからといって、作りっぱなしではいけないと思っています。
フォローはきちんとしてあげたいですね。
もちろん無償ですが
空き時間での対応という事にさせてもらってますし
ある程度のミスも許してもらってます。
それなので、独学で結構楽しく勉強させてもらってます。

*--------------------------------------*

昨日、突然電話がありました。

「毎日データを入力していてとても助かっています。・・・が
突然、残高が表示されなくなって困っています。
なんとかできないでしょうか。」

エクセルマクロ(VBA);フォロー

って、優しくお願いされると
単純な私は、「なんとかしてあげたい」って思ってしまいます。
で早速対応させて頂きました。それも、夜の8時から。

私が作った会計のプログラムですが

今まで手書きでやっていたものを、
収入と支出のデータさえ入力すれば、
出納帳、総勘定元帳、予算執行状況等が
自動的に計算されて出てきます。

素人が作っているので、画面上見栄えは
きれいではありませんが、機能的には
これで充分と喜んで使ってもらってます。

エラーは、
動きを見てすぐ見当がつきました。
残高計算のイベントプロシージャが動いていない様です。

メンテナンス用に準備していたモジュールの中の
イベント発生用のプロシージャを実行したら
うまく計算されました。

Sub イベント発生()

Application.EnableEvents = True

End Sub

エクセルマクロ(VBA);フォロー

しかし、残高を計算させるという対応はそれでいいのですが、
原因を見つけなければ又、同じ現象が発生します。

どこかにイベントを停止させる原因が潜んでいるはずです。

一つずつボタンを押しながら処理を確認していきました。
すると、みつかりました。
データバックアップです。
バックアップ用のファイルが存在しないとのメッセージ。

エクセルマクロ(VBA);フォロー

何度もテストしたはずなのに?何故
ここでエラーが発生してイベントを停止させた状態のまま終了したようです。

エクセルマクロ(VBA);フォロー


これは明らかに私のプログラムの修正ミスでした。
テスト中のフォルダーとファイルを使っていて本番用に修正して
いませんでした。

今回の対応は、新にバックアップ用のフォルダーとファイルを作ったところ、
無事正常終了しました。

エクセルマクロ(VBA);フォロー


エクセルマクロ(VBA);フォロー

でも、エラーが出た場合の対処もプログラムに組み込んでおく
必要がありそうです。

その辺は次回書きたいと思います。


同じカテゴリー(VBA)の記事

Posted by ミール at 11:00│Comments(0)VBA
 
<ご注意>
書き込まれた内容は公開され、ブログの持ち主だけが削除できます。