- ベストアンサー
同じようなコードでもコードを一から書いたほうがいい
私はめんどくさがりやで、VBAを覚えたいのですが 一度使ったコードはメモ帳に書き溜めて、 同じようなコードを作るときにその書き溜めたものを探して、コピペしてアレンジしてしまうのですが この方法じゃいつまでたっても上達しないでしょうか? 本気で学習しようとするなら、 同じようなコードでもコードを一から書いたほうがいいですか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
> 同じようなコードを作るときにその書き溜めたものを探して、コピペしてアレンジ すばらしい。 あなたには、プログラミングの素質があると思います。 「プログラマの三大美徳」で検索してください。 http://ja.wikipedia.org/wiki/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9E#.E3.83.97.E3.83.AD.E3.82.B0.E3.83.A9.E3.83.9E.E3.81.AE.E4.B8.89.E5.A4.A7.E7.BE.8E.E5.BE.B3 「同じようなコードでもコードを一から書く」なんてのは、タイピングの練習にしかなりません。 技術を高めたいのなら「もっと楽する方法は無いか」を考えてください。 「コピペしてアレンジ」も面倒ですよね? 例えば、参照するセルが違うだけの同じ処理なら、セルを引数にしたプロシージャや関数を作れば、「アレンジ」する箇所を大きく減らせます。元のソースをコピペして、プロシージャ/関数の呼び出しの1箇所を変えるだけです。 ただ、プロシージャや関数の作り方を覚える必要があります。でも、覚えてしまえば、次の機会には楽になります。
その他の回答 (2)
- unacyo
- ベストアンサー率51% (35/68)
私は一応本職ですが、コードの書き溜めは私もやっていますよ。 動いているコードというのは実に重要で、実績のあるコードの書き溜めは非常に便利です。 ・作成時間の短縮化(これが一番大きい) ・動いていた実績も合わせてコピー(ものによりますが、これも重要です) ・コピー対象を熟知しているからコピーできる 一から作ると再度検証しなければならないので、その意味でも、コピーするほうが良いかと思っています。 まぁ当然ながら、コピーしたコードが動くのは、そのコードが正しく動く環境で動かしていることが前提ではありますが。 それにコピーするというのは、そのコードが、どういう環境で、どの様に呼ばれて、何をどう出力するか、を判っていないとできないことで、学習目的であれば、それだけ内容を習得できているということにもなるかと思います。 思った動きをしていない製品があるとき、「既に動いて出荷している製品からそのままコピーしてきたコードだから(うんぬん)」という言葉は、「一から作りました」よりは、他者にコードの正当性を説明する際、説得力があります!(^ ^; (まぁ、うちだけかもしれませんが) 復習をかねてもう一度最初から書くのであれば良いでしょうが、新しいことを習得しようとするのであれば、今まで通り、コピペ&改造でよいと思いますよ。
お礼
ありがとうございました。
- IDii24
- ベストアンサー率24% (1597/6506)
コピペで十分です。VBAぐらいでは暗記する必要もありません。 そもそもですが、プログラム言語なんていうものは5言語ぐらい書けて当たり前。つまり構文の意味だけ解れば問題なく、新しいコマンドがいくらでも出てきますから全てを暗記なんか出来ないし、する必要もない。 またプログラムの基本は過去に作られた、バグのないコードを応用することが大事なのです。そのためにDLLやクラス、継承などの構文があるのです。(VBAにはありませんそれが欠点です。) 大きなシステムではいかにバグを無くし素早くつくるか。つまり応用するものは全て応用する。これが大事です。
お礼
一から書かなくていいのですね。気が楽になりました。ご回答ありがとうございました。
お礼
>あなたには、プログラミングの素質があると思います。 すごくうれしいです。 もっと頑張ろうと思えました! >「もっと楽する方法は無いか」を考えてください。 超めんどくさがり屋なのでいつもどうやって楽をするかを考えています。 ご回答ありがとうございました。