プログラム講座ゼロからはじめるやさしいVBA教室メニューホーム基本編お問い合わせ本文までスクロール投稿プロシージャを理解する前回は簡単なプログラムを作成して、そのプログラムを実行するところまでを解説させて頂きました。その中で耳慣れない「プロシージャ」という言葉があったかと思いますが、憶えていますでしょうか。解説の中でも補足はしましたが、プロシージャについてまだまだ説明が足りていませんので今回のテーマとして「プロシージャ」を取り上げてみたいと思います。VBAのプログラミングの第1歩としてプロシージャについての理解を深めましょう。続きを読む「マクロの記録」を使ってみるExceの作業を自動化する場合、VBAでプログラムを作成する方もいますが、「マクロの記録」を使って自動化を目指す方法があるのはご存知でしょうか。「ここはVBAのプログラム講座なので別のやり方は関係ないのでは?」と感じてしまう方もいらっしゃるかもしれませんが、実はそうとも言い切れないんです。この「マクロの記録」を使った作業の自動化のやり方を知っておくとVBAのプログラムを作成する上で非常に有利に働きます。世の中のVBAプログラマーのほとんどは「マクロの記録」のことを十分に理解した上で実践の場でその知識を活かして有利に作業に取り組んでいます。「マクロの記録」について正しい知識と活かし方をしっかり習得して頂いてVBAの使い手としてのスキルを高めていきましょう。続きを読むVBAを実行してみるいよいよ待ち焦がれていたVBAのプログラムを記述して実際に実行をしてみるステップに突入いたしました。プログラムを実行するからといって、いきなり難しい内容に突入するわけではないのでその点はご安心ください。ここでは簡単なVBAのプログラムを作成するところから実際に実行するところまでを段階的に詳しくご説明していきたいと思います。Editor」という存在があります。略称は「VBE」です。「VBエディタ」と呼ばれます。「VBA」やら「VBE」と似たようなキーワードが並んで混乱してしまいそうですね。VBEについてはVBAと切っても切れない関係性なので、この先いやでも勝手に覚えていってしまうのでご安心ください。今回はこの「VBE」が「いったい何なのか?」、「何ができるのか?」についてご紹介していきたいと思います。続きを読むVBAを学習する前の準備VBAのプログラムを作成する前にOfficeのアプリケーション上での設定を変更しておく必要があります。この作業をしておかないと、実際にいざプログラムを作ろうとしたり、作ったプログラムを実行しようとしたりするときになってつまづくことになるでしょう。「あぁ、自分には才能がないのかなぁ。「やっぱりやめとけばよかったなぁ」など気持ちが後ろ向きになってしまい、VBA学習を途中であきらめてしまう原因につながってしまいます。これは非常に残念なことです。やることはたった2つの設定変更だけです。最初でつまづかないように今回解説するOfficeのアプリケーションの設定を変更した上でVBA学習のコマを進めてください。これからVBAを学習していこうと考えている方々にとっては、まず「VBA」ってそもそも何なのか疑問に感じるところからがスタート地点だと思います。普通に疑問に思ってください。その疑問を解決していく過程がそのまま学習のプロセスへとつながっていきます。現時点でVBAのことは分からなくてもいいです。疑問に感じること疑問を調べて理解していくことVBAの学習はひたすらこれの繰り返しです。難しそうと感じないでください。理解度の進捗は人それぞれですので、ゆっくりかみ砕いて自身のペースで理解を進めてください。続きを読む[VBA][Technic][Dictionary]レイアウト変更に負けないロジック例えば、EXCELのシートを読み取ってデータ加工をするツールをVBAで作ったとします。うまく作れて結果も上々、これで出来上がりかと思いきや。読み取るシートは他の担当者から受領するファイルなのだが、シートのレイアウトが毎回異なり、うまく処理できないシチュエーションに遭遇することってありませんか?項目は揃っているが項目の並び順が変わっていたり、よく分からない項目が追加されていたり。これではせっかく作ったVBAのプログラムがうまく動いてくれません。要するにレイアウト変更があることを想定したVBAのロジックが作れれば対応できる話なのだが。今回はExcelのリストをVBAのDictionaryに取り込む方法について考えてみたいと思います。以下のような表があったとします。VBAのDictionaryで取り込むにしてもどうやって取り込んだらいいのだろう?Dictionaryオブジェクトは「Key」と「Item」で構成された連想配列なのだが、表のような項目をどうやってDictionaryへ取り込むことが出来るのだろう?悩ましいですよね。これを解決するにはちょっとした発想の転換が必要かもしれません。続きを読む[VBA][HowTo][Dictionary][Sort]連想配列をソートするやり方VBAのDictionaryオブジェクトにソート機能があったらさらに使い勝手のいいオブジェクトになるんだけどなぁ~...と考えたことが何度あったことか。実はVBAのDictionaryオブジェクトはソート機能をサポートしていません。その事実を踏まえた上で、如何にしてソートさせていくかの方法論のひとつを紹介していきたいと思います。やり方はいくつか考えられるのですが、その中で比較的簡単なロジックで作成可能なソート方法の紹介です。ご興味のある方は続きをお読み下さい。今回はVBAのDictionaryオブジェクトを取り上げてみたいと思います。VBAを作成中に配列を操作している時次のようなことを思ったことはないでしょうか?キーと値の組み合わせで配列を管理したい。複数のリストをキーで突合して処理したい。配列内を検索しながら大量の繰り返し処理が必要になった。普通の配列だと配列内をループ処理で対象を見つけていくことしか出来ませんが、これから紹介するDictionaryはこれらの問題を解消してくれる手段の一つとして有効かもしれません。Dictionaryを正しく使いこなして、処理の効率化を目指してください。PMこのサイトについてここには、自己紹介やサイトの紹介、あるいはクレジットの類を書くと良いでしょう。WordPressTranslate。