• 締切済み

Excel VBAをどのようにして覚えましたか?

表題の通り、ExcelのVBAを皆さんはどのようにして覚えたか、使い始めたかを教えてください。 知人から「VBAを覚えたいがどうすればいいか」と相談されたのですが、私自身が業務で必要だったので『キーボードマクロ&日本語プログラム言語"なでしこ"』という奇怪な組み合わせから入ったので参考にはなりません。 一応参考サイトなどを教えましたし、分からない部分は聞いてくれ、でこの話自体は終わりました。 ただ世の中には書籍や講座・スクールその他も色々ありますし、ふと世間の皆さんはどんなふうに覚えたのかなぁ、と気になりました。

みんなの回答

回答No.5

勉強中の身の上では偉そうな事は書けませんが、文法的構文を理解しないと、プログラムは書けません。文献など見るのだとして、英文を見る機会は個人にはありませんし、入れ子構造を理解していく感じで、どういう意味があり結果が出てくるか? ExcelのVBAなので、単純に自動化を図りたいのか、操作を固定したいだけなのかでも、、記述は長くも短くもなりますよね? プログラムはセンスがいるし、生産性が無ければ続きません。 目的に合った学習が良いとされています。 前出の方の通り、真似るところや、既存の必要性のプログラムでの具体化が早道であり、そうしています。 人様に聞いてみて見識を高めるのも1つの方法ですよね!

回答No.4

Q、ExcelのVBAをどのようにして覚えましたか? A、超ド素人ですが・・・。  まだ、いわゆる開発のマクロを開いてVBAとやらを書いたのは一回だけ。で、どうやってExcel固有のVBAを覚えたらよいのか?苦心惨憺しているところです。で、結論は、 https://docs.microsoft.com/ja-jp/office/vba/api/overview/excel を通読するのが一番だって結論に至っています。  なお、その前にプログラミングの基礎をしっかりと一ヶ月だけ学んだ方が良いと思います。で、それは、「プログラミング言語 C II」の例題を JavaScript でぜーんぶ書いてみるという学習方法です。  以下をメモ長にコピペして拡張子 html で保存して開いてみて下さい。全く、C言語環境下でテストするのと同じ結果を得られます。つまり、RubyとかBasicとかの言語環境を整えることなく、プログラミング作法を一通りマスターする一番の近道が、JavaScriptで「プログラミング言語 C II」の例題を書くです。  上記、リファレンスを通読するのはその後がお勧め。だって、プログラムのイロハを知った上でのExcelのVBAですから・・・。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"> <html> <title>文字の出現回数を数える 1</title> <meta http-equiv="Content-script-Type" content="type">   <script type="text/javascript">   function charcount(text) {     var c, i, l;     var n = new Array(3);     n[0]=n[1]=n[2]=0;     l = text.length;     for (i=0; i<l; i++) {       c=text.charAt(i);       if (c >= "0" && c <= "9")        ++n[0];       else if (c == " " || c == " ")        ++n[1];       else        ++n[2]      }      digits.value=n[0];      space.value=n[1];      other.value=n[2];   }   </script>   <body>     文字列: <input type="text" size=24 onKeyup="charcount(this.value)"><br/>     数 字: <input type="text" id="digits" size=10 readonly"><br/>     空 白: <input type="text" id="space" size=10 readonly"><br/>     その他: <input type="text" id="other" size=10 readonly"><br/>   </body> </html>

kon555
質問者

お礼

>>プログラミングの基礎をしっかりと 耳が痛い。私はなでしこ→VBAという三角とびのようなルートで習得しましたが、場当たり学習なので基礎力は不足しているんだろうな、と感じています。 まあVBAの場合、A=アプリケーションの動作知識が絡むのが注意点らしいですが。

noname#252332
noname#252332
回答No.3
kon555
質問者

お礼

そうなんですよね、大体検索すると解説してくれてるページがある。または、自分と似た事をやろうとしてる人のコードがひっかかる。便利です。

  • f272
  • ベストアンサー率46% (8467/18126)
回答No.2

他人の書いたものを読むだけなら,初見ですぐにわかります。自分で書きたいときは参考サイトを見れば例が載っていますので,まねればよいだけです。 最初から難しいことをするのではなく,簡単なことを1つだけVBAに置き換えてみることから始めるのが吉です。

kon555
質問者

お礼

>>書いたものを読むだけなら,初見ですぐにわかります 他言語のスキルが元々ある方ですかね? 参考サイトは私もよく利用しています。

  • ryou_ny
  • ベストアンサー率32% (11/34)
回答No.1

マクロの記録 で 使用者の操作を記録して マクロの実行 で さっき行った事と同じことをマクロで実行できます あとは、この自動生成されたマクロを改造してみるところから入りました。 あとは、マクロのサンプル集とその解説をみて1行継ぎ足しては実行して・・ ほしい機能を作っていたらいつのまにかって感じです。

kon555
質問者

お礼

マクロの記録と実行&改造と継ぎ足し。私がなでしこ→VBAのルートで覚えた時もこのパターンでしたが、基本はやはりこれですかね。