• ベストアンサー

エクセルでVAB

エクセルでとりあえずVBAを組むにはどの様にしたらよいのでしょうか?マクロを組んで、表示画面を開き手を加えるというのではなく、いきなりVBAで組んで動かす方法は。あとアルゴリズムのセンスを磨くいい方法はないでしょうか。実は自分は文系であまり数学とか詳しくやりませんでした。(特別嫌いだったわけではないですが)アルゴリズムの記述に関する外国の書籍の翻訳本を見た事がありますが文章もとっつきづらいですし、自分にはまだレベルが高いと思いました。基本情報処理技術者レベルだとやれば出来るかもしれませんが、もっと踏み込んでみたい気がするのです。この分野、出来る方々は凄まじい技術をもっていらっしゃるのでしょうし、簡単に完成形を全て理解出来るものではないでしょうがMS Officeの平均的な(といっても幅広いですよね)ユーザーがスキルアップできるのに役立つ本や方法はないでしょうか。私立文系学生だったものが取り組んでいけるコースを教えて頂けると、助かりますし、うれしいのですが。宜しくお願いいたします。

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

  • ベストアンサー
  • bizen1
  • ベストアンサー率17% (15/88)
回答No.1

>を組んで、表示画面を開き手を加えるというのではなく、いきなりVBAで組んで動かす方法は この意味するところがよく判りません。 アルゴリズムのセンスですが、処理の流れを頭の中でイメージできるかによると思います。 処理のスタートから終了までの簡単なフロー図を頭の中で描けるか。 これはとにかく自分でプログラムを何本か作ってみるしかないです。 紙に手書きで簡易フローを書いて考えながらプログラムを作るのもいいかと思います。 スキルアップですが、参考書等沢山ありますが、まずは実践の数をこなすことです。VBAなら、自分でエクセルの家計簿を作ってみるとか、計算機を作ってみるとか。(計算機はアクセサリにあるとは思いますが、実際作ってみると、案外奥が深いです。) 最後にプログラミングに文系・理系は関係有りません。 計算はほとんどが四則演算のみなので。

noname#54768
質問者

お礼

有難う御座います。ただ某工科系の単科大の方が、理数系の基礎がないと言語と簡単なアルゴリズムから入ってもやがて行き詰ると・・・ちょうどデータベースとかをいじり始めた時で結構苦労し、トラウマになっさてます。やっぱり理系のヒトは違うんだろうな~って思ってきたのですが。少しやる気が出てきました。

その他の回答 (1)

  • yukika-37
  • ベストアンサー率39% (26/66)
回答No.2

こんばんは。プログラマとしてVBAの仕事も経験した者です。 >マクロを組んで、表示画面を開き手を加えるというのではなく、いきなりVBAで組んで動かす方法は。 「新しいマクロの記録」を使わず、エディタ上で1からソースを書く方法、と解釈しました。間違っていたらすみません。 http://www.officepro.jp/excelvba/ini/index.html 上記のサイトは全体的に初心者向けに分かりやすく書かれていると思います。 順番に読みながら理解を深めていかれると良いかと。 >あとアルゴリズムのセンスを磨くいい方法はないでしょうか。 個人的には、プログラミングスキル向上への道は実践あるのみだと思います。 「こんなソフトがあったら便利だなー」と思うものを作ってみると良いでしょう。 特になければ、家計簿ソフト辺りを作るのがオススメですかね。 (ちなみに私は親に頼まれて、VBAでオークション支援ソフトを作ったことがありますが…) あとは逆に、自動で生成されたマクロを解読しながら、綺麗に書き直してみるというのも勉強になるかもしれません。 自動生成されたマクロって、何というか、かなり……変です。(そのまま手を加えないで動かすと、物凄く動作が重い…) それをいかにコンパクトに書くか、高速化させるか…を考えるのも、特にVBAでは勉強になります。 http://www.officetanaka.net/excel/vba/speed/index.htm >実は自分は文系であまり数学とか詳しくやりませんでした。 結構文系プログラマって多いと思いますよ。 私も数学は数I、数II、数Aしか知りませんが、今のところ特に問題ありません。 実際、ほとんど簡単な四則演算くらいしか使っていないような…。 確かに向き不向きというのは大なり小なりあると思いますが、文系か理系かくらいの違いなら、やる気でカバーできると思います。 学生だと勝手に課題が出されるのでやらざるを得ない。 仕事だと、それはそれでやらざるを得ない。 趣味で極めるのが一番モチベーションが必要で大変だと思います。頑張ってください!

noname#54768
質問者

お礼

どうも有難う御座います。数学を真面目にやっていたのは中学までです。確かに事務系の道具として使うなら、微分積分も三角関数も必要ないですよね。多分あまり。それよりも離散数学と言われるものが必要だとか。あまり目にしませんが、中学・高校で散々やった証明問題とかはあまり必要ないでしょうね。要は論理的な思考能力でしょうか。

関連するQ&A