原因が分かってると対処のしようがあるんですけどね、なにもいじってないのに、コードは同じなのに違う実行結果になるときが一番ストレス溜まるしプログラム書いてて嫌になります。
それでも経験から得た対処の方法を備忘録として残しておくと・・・
とりあえずステップ実行してみる。
該当マクロのところにカーソルを置いてF8で一行ずつ実行していってみる。これが本当に便利でかなりいろいろバグや不具合が取り除けます。
いらない行を削除する、コードの記述を各ステートメントごとにきっちりインデントする。
これは今回痛感しました。if節やfor節の入れ子が上手くいってないとビックリするくらいヘンな動きします(笑)今回はselect caseのいくつかのステートメントが飛び出していたらそこが実行されないでびっくりしました(笑)
なんというかそれぞれのモジュールごとにかなり分かりやすいようにコメントを残してさらには囲っておく。
今回///////////これで囲いながら作ったらあとでかなり見やすいしメンテナンスしやすかったです。
なんでもそうだけどメンテナンス性を高めたいならなるべく可能な限りシンプルにするべきかと思います。あとパーツごとに分ける。
変数や宣言、スコープなど基本的な事をしっかり踏まえて作る。
このサイトをさっき読んでいて、本当にこの辺の事を頭に入れてないと余計な時間とストレスがかかります。僕はブレイクポイントとイミディエイトウィンドウは全然使いこなせていないのだけれどこのへんも上手に使えばさらにストレスなく楽しくプログラミング出来るのかも。
もう本当に、こんなのが作りたい!!→あ、こんな感じにすれば実現できるかな?→コードが閃いて一気に書く。ここまでは本当に楽しいのだけれど、そのあとの不具合を直していくのがどうにもならないくらい苦痛で嫌いです。これがなければ趣味としてちょっとした開いてる時間にやったりして捗るのだけれど。
ひとつつぶす、また動かない、ひとつ潰す、今度は関係ないところが動かないの繰り返し。
まあでもやはり1回作った次の2つ目は自分では気づかないけれど各段にレベルアップしています。そして1度作ったモジュールというかサブルーチン?は自分のライブラリにして何度でも利用できるのでそれはすごい快感(笑)
0 件のコメント:
コメントを投稿