2016-10-01から1ヶ月間の記事一覧
プログラミングの学習途中で、いくつか難しい概念にぶつかる。 インターフェースもその一つだと思う。このインターフェースは、フォームのボタンなどの、ユーザーインターフェースのことではない。 クラスモジュールなどで作ったオブジェクトに適用するイン…
プログラマーなら誰でもエラーで悩んだ経験があるだろう。特に初心者の頃はなかなか思ったように動かずにイライラしたことがあるハズだ。しかしエラーは本来、忌むべきものではない。 プログラムエラーは現実世界で問題が起きる前に、「それは間違っている」…
セルやブックの操作にSelectionやActiveWorkbookが多用されているコードを見かけることがある。特にマクロの記録を使った場合は顕著だ。 これはこれでちゃんと動くのだが、できればちゃんと変数に格納したほうが良いと思う。さて、いちいちSelectionを用いる…
以前から気になっていた書籍「プログラマ脳を鍛える数学パズル」を買ってきた。プログラマ脳を鍛える数学パズル シンプルで高速なコードが書けるようになる70問作者: 増井敏克出版社/メーカー: 翔泳社発売日: 2015/10/14メディア: 単行本(ソフトカバー)こ…
コンピューターは「電子計算機」と訳されるように、計算する機械である。 Youtubeを見ているときも音楽を聴いているときも、ゲームで遊んでいるときも、メールを読んでいるときも、CPUでは絶えず「計算」が行われている。さて、今回はそのコンピューターがど…
プロパティーに値を代入するという表現をよく見かける。 私もつい最近までそのように表現していたけれど、これって厳密には間違ってるんじゃないかと思い始めている。 というのも、Propertyプロシージャを学習する際、この「代入」という表現が理解を難しく…
今回はクラスモジュールを使って連結リストを作成してみる。 実験ではなく、必要性があって作ることになったのでそういう意味では実用的なサンプルとして紹介できるかと思う。 連結リストとは 情報処理技術者試験などで学習したことがある人も要ると思うが、…
さて、前回は自作クラスにEventを実装する方法について説明した。 thom.hateblo.jp前回紹介したマクロはMoveNextをクリックするたびにカーソルが下に移動するというものだったが、CursorオブジェクトのValueに上限・下限を設けていないためクリックし続ける…
今回はクラスモジュールに、自作のEventを実装し、シートモジュールでクラスのイベントを受け取る処理をやってみる。 まずはEventを使用しないクラスサンプル クラスモジュールを挿入し、以下のコードを貼り付け。 ※サンプルなのでクラスモジュールのオブジ…
※この記事はあくまで個人的な見解です。昨日、VBAカテゴリーの記事が200に到達しました。記念にいつもの「だ・である調」じゃなくて「です・ます調」で書いてみます。もともとこのブログに「だ・である調」を採用したのは、これまで苦手な文体だった為に慣れ…
私がクラスモジュールの使い方を知るまでのエピソード 私が初めてオブジェクト指向の便利さを理解したのは、なぜかVBScriptだった。ExcelファイルをVBScriptのファイルにドラッグ&ドロップすると内容を読み取ってAccessのデータベースに登録し、ドロップさ…
VBAの型名は英単語であるが、そのまま和訳しただけで意味が通じるものとそうでないものがあるので、一通り解説しておこうと思う。 Byte型 バイトと読む。 整数型で1~256を格納できる。 「2GBのメモリ」などデータサイズを表す用語としてもお馴染み。Byteは1…
前回、VBAを擬人化して、変数が記号表によって管理されているというところまで書いた。※読んでない方はこちら thom.hateblo.jpさて、今回はオブジェクトがメモリ上でどう扱われるのかという話。次のコードで説明しようと思う。 Dim c As Collection Set c = …
今回は変数とメモリの関係について書こうと思う。 ちょっと「記号表」とかいろいろ難しいモノが登場するのだが、ちょっとわかりやすく説明するためにVBAを擬人化しておこうと思う。 コンパイラー君とインタープリターさんの紹介 まずあなたがVBAコードを書く…
VBAの書籍を見ていると、だいたい標準モジュールにマクロを書くように指示されている。マクロの記録で保存されるのが標準モジュールということもその理由かもしれないし、そもそも「標準」という名前が「ふつうはここに書け」という指示に見えるのかもしれな…
これまでVBAについて色々記事を書いてきたけれど、VBAってそもそもどんな言語なのか、自分が学んできたことを整理する意味でひととおり書いておこうと思う。 VBAの歴史をざっくりと説明 VBAの祖先はアメリカのダートマス大学で作られたBASICという教育用言語…
これまでクラスモジュールについて扱ってきたけど、言葉の意味を知らないままクラスクラス言っててもなかなかその本質的なイメージをつかむことは難しいと思う。やはり人間、なじみのない言葉で何かを覚えようというのは無理がある。そこで今回はVBAは一旦脇…