エクセル」カテゴリーアーカイブ

Introduction to Excel VBA

Excel VBA is a programming language used in the macro function that automates Excel operations.

VBA is short for “Microsoft Visual Basic Applications”

In this VBA introductory series As an introduction to macro VBA which is required in practice, we will explain VBA in general from basic to application.

Beginners and beginners should read from the beginning.
Even if there are parts that you don’t understand, it is also important to move forward.
Going forward, you may be able to understand what you couldn’t understand before.
By reviewing from time to time, you should be able to realize that your understanding has progressed.

For intermediate / advanced users, please refer to the required items from the table of contents.

Basics of VBA introduction

1.What is a macro? What is VBA?
2.First prepare to use Macro VBA
3.Macro recording
4.Where is the macro written (VBE startup)
5.VBE Set Options (Option Explicit)
6.Let’s write it anyway (Sub, End Sub)
7.To run a macro (F5)
8.What is putting a character in a cell (Range, Value)
9.How to specify cells in Range
10.Specification method other than Range (Cells, Rows, Columns)
11.How to use Range and Cells
12.Variables and data types (Dim)
13.Constants and type declaration characters (Const)
14.Character concatenation and continuation line
15.Four arithmetic operations and annotations (comments)
16.Iterative processing (For Next)
17.Iterative processing (Do Loop)
18.Get last row (End, Rows.Count)
19.General practice question 1

新着記事一覧(2019年1月~)

Withステートメントの実行速度と注意点|VBA技術解説(2019年6月6日)
マクロVBAにおいてWithステートメントはとても重要です、可読性(読みやすさ、理解しやすさ)、実行速度においては、その役割はとても大きいものになります。本記事では、Withステートメントを使うか使わないかでのマクロ実行速度の差に焦点を絞って検証します。

VBA+SeleniumBasicで検索順位チェッカー(改)|VBA技術解説(2019年6月2日)
VBAでSeleniumBasicを使って検索順位チェッカーを作り、Google検索順位の履歴を管理します、既に作成解説した、VBA+SeleniumBasicで検索順位チェッカー作成こちらの改訂版になります。SEO対策として各キーワードでの検索順位チェックは欠かせません。

マクロでShift_JIS文字コードか判定する|VBA技術解説(2019年6月1日)
環境依存文字・機種依存文字をチェックしたいという話は時々聞くことなのですが、何をもってして判別するかという事が実はとても難しい問題になります、①②もIMEでは[環境依存]と表示されますが、通常これが問題になる事はないでしょう。

Shift_JISのテキストファイルをUTF-8に一括変換|VBAサンプル集(2019年5月31日)本サイトの文字コードは開設当初からShift_JISでしたが、昨今の事情を考えてUTF-8に変更することにしました。そこで既存記事全てを一括で変換することになり、これをVBAでやりましたので、その時のマクロVBAコードを掲載しておきます。

「VBAによる解析シリーズその2 カッコ」をやってみた|エクセル(2019年5月21日)ツイッターで出たVBAのお題をやってみました。もとネタはこちら、VBAによる解析シリーズその2カッコ 関連ツイート なかなか楽しかったので、VBAコードを掲載しておきます。ExcelマクロVBAとエクセル関数についての私的雑感

VBA+SeleniumBasicで検索順位チェッカー作成|VBA技術解説(2019年5月18日)VBAでSeleniumBasicを使って検索順位チェッカーを作ってみます。SEO対策として各キーワードでの検索順位チェックは欠かせませんが、簡単に使えてキーワードを大量に指定できる良いツールがなかなかありません。

テーブル操作のVBAコード(ListObject)|VBA入門(2019年5月12日)テーブル操作の具体的なVBAコードをパターン別に掲載します、テーブルの全体的な構成は ・テーブル全体 ・見出し行 ・データ範囲 ・集計列 ・集計行 VBAでは、これらのオブジェクトを使い各要素にアクセスします。

テーブル操作の概要(ListObject)|VBA入門(2019年5月12日)テーブルのVBAでの操作で使用するオブジェクトの概要の説明です、テーブルは、セルの範囲を表(テーブル)に変換することで、関連するデータの管理と分析を容易にできるエクセルの機能で、以前はリストと呼ばれていました。

VBAのスクレイピングを簡単楽にしてくれるSelenium|VBA技術解説(2019年5月6日)VBAでWebスクレイピングする方法としてIE自動操作がありますが、VBA記述が結構面倒になります、もっと簡単にスマートにVBAを書きたいと思ったら…SeleniumBasicを使ってみましょう。

Excelワークシート関数一覧(2010以降)|VBAリファレンス(2019年4月22日)Excelワークシート関数の一覧と解説です。Excel2010以降に追加された関数一覧になります。

クラスとCallByNameとポリモーフィズム(多態性)|VBA技術解説(2019年4月6日)VBAの使い方が進んでいくとクラスを使うようになっていきます。クラスを使うようになるとオブジェクト指向という言葉に出会い、オブジェクト指向を学んでいくとポリモーフィズム(多態性)という言葉に出会います。

VBAでのタイマー処理(SetTimer,OnTime)|VBA技術解説(2019年4月3日)VBAでタイマー処理(一定時間間隔で処理)を行う方法についての解説です。最も一般的な方法は、Application.OnTimeを使う方法になりますが、今回の主題としては、WindowsAPIのSetTimerを紹介します。

クラスとイベントとマルチプロセス並列処理|VBA技術解説(2019年4月2日)エクセルVBAではマルチスレッドによる並列処理はサポートされていません、つまり通常は順序良く直列に処理していくしかありません。しかし処理時間が多大にかかるような処理も現実には存在しているため、エクセルVBAで並列処理したいという要望も出てきます。

エクセルの日付と時刻のまとめ|エクセル関数超技(2019年3月6日)エクセルに入力するデータとしては、数値、文字、日付時刻などがありますが、日付時刻はかなり特殊なものとなっています。日付時刻の扱いは独特であり、エクセルのワークシートだけでなくマクロVBAでも他のプログラミング言語でも扱いが面倒なものです。

Excelシートの複雑な計算式を解析するVBA|VBAサンプル集(2019年2月18日)セルに入力されている数式が折り返されていて複数行(ときに3行以上)になっている場合、数式バーで見ていたのでは、どんな数式なのかがさっぱりわからなくなります。このような複雑な数式を分解し、分かり易く表示するVBAを作成しました。

VBAクラスの作り方:独自Rangeっぽいものを作ってみた|VBA技術解説(2019年2月16日)クラスの作成は、標準モジュールで作成していた時とは様相が違い戸惑う部分も多いと思います、それは、初めてVBAに取り組んだ時の戸惑いと同じかもしれません。最初はとにかく慣れることが一番です、細かい文法や機能は、少し慣れてから改めて学んでも遅くはありません。

VBAクラスの作り方:列名のプロパティを自動作成する|VBA技術解説(2019年2月14日)クラスに列名のプロパティを作成することで、入力支援が使えてコーディングが楽になりますが、列数が多くなればVBAの記述量が増え、コーディングが大変になります。入力支援が使えるのは良いが、その事前準備があまりに大変ではやる気が失せてクラス作るのが面倒になってしまいます。

VBAクラスの作り方:列名の入力支援と列移動対応|VBA技術解説(2019年2月11日)クラスを使う良さとして、入力支援が使えてコーディングが楽になるという利点があります、列番号をクラスに持てば、列名が候補表示されて非常に便利です。しかし、これを実装するには、かなりの手間がかかります。

クラスを使って他ブックのイベントを補足する|VBA技術解説(2019年2月6日)VBAでイベントを使う場合は、通常はイベントが発生するオブジェクト(ブックやシート等)のモジュールに記載します、つまり、各ブックの中にマクロを入れなければなりません。他ブックのイベントを処理するには、WithEventsキーワードを付けた変数宣言を使います。

Excelアドインの作成と登録について|VBA技術解説(2019年2月3日)Excelアドインの作成方法と登録方法についての手順と注意点、そして対応するマクロVBAコードについて紹介します。具体的にどんなアドインを作成するかではなく、一般的なアドインの作成と登録についての概要の解説とVBAコードのサンプルになります。

参照設定、CreateObject、オブジェクト式の一覧|VBA技術解説(2019年1月20日)VBAでエクセル外のオブジェクトを使うときには、事前バインディングと遅延バインディング(実行時バインディング)の2通りがあります、この時それぞれ何を指定したらよいのか、指定する文字列が長いので結構探してしまうことが度々あります。

VBAでファイルを規定のアプリで開く方法|VBA技術解説(2019年1月20日)
Excelマクロで、エクセル以外のファイルを規定のアプリケーションで開く場合の方法について何通りか解説します、VBAでファイルを単純に開くだけの場合についてになります。ファイルを開いた後に、そのファイルに対して何らかの操作をしたい場合は、対応するアプリケーション毎に

ドキュメントプロパティ(BuiltinDocumentProperties,CustomDocumentProperties)|VBA技術解説(2019年1月19日)
ブックのドキュメントプロパティには、組み込みドキュメントプロパティとユーザー設定のドキュメントプロパティがあります。VBAで扱うときは、それぞれ以下のコレクション・オブジェクトを使います。

他ブックへのリンクエラーを探し解除|VBAサンプル集(2019年1月15日)
リンクエラーが見つけられない・・・「リンクの編集」で、「リンクの解除」を選択してもリンクが削除できない・・・こんな経験をした人は多いのではないでしょうか。エクセルをいろいろと操作していると、意図せずに参照先が別ブックになってしまい、かつ、その参照先のブックが無くなって

特殊フォルダの取得(WScript.Shell,SpecialFolders)|VBA技術解説(2019年1月1日)
デスクトップのフォルダ、スタートメニューのフォルダ、個人用ドキュメントのフォルダなど、Windowsの特殊フォルダを取得するには、ネイティブのWindowsシェルへのアクセスを提供するWScript.ShellのSpecialFoldersプロパティを使用します。

マクロでShift_JIS文字コードか判定する|VBA技術解説(2019年6月1日)
環境依存文字・機種依存文字をチェックしたいという話は時々聞くことなのですが、何をもってして判別するかという事が実はとても難しい問題になります、①②もIMEでは[環境依存]と表示されますが、通常これが問題になる事はないでしょう。

Shift_JISのテキストファイルをUTF-8に一括変換|VBAサンプル集(2019年5月31日)
本サイトの文字コードは開設当初からShift_JISでしたが、昨今の事情を考えてUTF-8に変更することにしました。そこで既存記事全てを一括で変換することになり、これをVBAでやりましたので、その時のマクロVBAコードを掲載しておきます。

「VBAによる解析シリーズその2 カッコ」をやってみた|エクセル(2019年5月21日)
ツイッターで出たVBAのお題をやってみました。もとネタはこちら、VBAによる解析シリーズその2カッコ 関連ツイート なかなか楽しかったので、VBAコードを掲載しておきます。

VBA+SeleniumBasicで検索順位チェッカー作成|VBA技術解説(2019年5月18日)
VBAでSeleniumBasicを使って検索順位チェッカーを作ってみます。SEO対策として各キーワードでの検索順位チェックは欠かせませんが、簡単に使えてキーワードを大量に指定できる良いツールがなかなかありません。

テーブル操作のVBAコード(ListObject)|VBA入門(2019年5月12日)
テーブル操作の具体的なVBAコードをパターン別に掲載します、テーブルの全体的な構成は ・テーブル全体 ・見出し行 ・データ範囲 ・集計列 ・集計行 VBAでは、これらのオブジェクトを使い各要素にアクセスします。テーブル全体のオブジェクトがListObjectで、シート,Excelマクロの基礎と応用

テーブル操作の概要(ListObject)|VBA入門(2019年5月12日)
テーブルのVBAでの操作で使用するオブジェクトの概要の説明です、テーブルは、セルの範囲を表(テーブル)に変換することで、関連するデータの管理と分析を容易にできるエクセルの機能で、以前はリストと呼ばれていました。

VBAのスクレイピングを簡単楽にしてくれるSelenium|VBA技術解説(2019年5月6日)
VBAでWebスクレイピングする方法としてIE自動操作がありますが、VBA記述が結構面倒になります、もっと簡単にスマートにVBAを書きたいと思ったら…SeleniumBasicを使ってみましょう。

Excelワークシート関数一覧(2010以降)|VBAリファレンス(2019年4月22日)
Excelワークシート関数の一覧と解説です。Excel2010以降に追加された関数一覧になります。

クラスとCallByNameとポリモーフィズム(多態性)|VBA技術解説(2019年4月6日)
VBAの使い方が進んでいくとクラスを使うようになっていきます。クラスを使うようになるとオブジェクト指向という言葉に出会い、オブジェクト指向を学んでいくとポリモーフィズム(多態性)という言葉に出会います。

VBAでのタイマー処理(SetTimer,OnTime)|VBA技術解説(2019年4月3日)
VBAでタイマー処理(一定時間間隔で処理)を行う方法についての解説です。最も一般的な方法は、Application.OnTimeを使う方法になりますが、今回の主題としては、WindowsAPIのSetTimerを紹介します。

クラスとイベントとマルチプロセス並列処理|VBA技術解説(2019年4月2日)
エクセルVBAではマルチスレッドによる並列処理はサポートされていません、つまり通常は順序良く直列に処理していくしかありません。しかし処理時間が多大にかかるような処理も現実には存在しているため、エクセルVBAで並列処理したいという要望も出てきます。

エクセルの日付と時刻のまとめ|エクセル関数超技(2019年3月6日)
エクセルに入力するデータとしては、数値、文字、日付時刻などがありますが、日付時刻はかなり特殊なものとなっています。日付時刻の扱いは独特であり、エクセルのワークシートだけでなくマクロVBAでも他のプログラミング言語でも扱いが面倒なものです。

Excelシートの複雑な計算式を解析するVBA|VBAサンプル集(2019年2月18日)
セルに入力されている数式が折り返されていて複数行(ときに3行以上)になっている場合、数式バーで見ていたのでは、どんな数式なのかがさっぱりわからなくなります。このような複雑な数式を分解し、分かり易く表示するVBAを作成しました。

VBAクラスの作り方:独自Rangeっぽいものを作ってみた|VBA技術解説(2019年2月16日)
クラスの作成は、標準モジュールで作成していた時とは様相が違い戸惑う部分も多いと思います、それは、初めてVBAに取り組んだ時の戸惑いと同じかもしれません。最初はとにかく慣れることが一番です、細かい文法や機能は、少し慣れてから改めて学んでも遅くはありません。

VBAクラスの作り方:列名のプロパティを自動作成する|VBA技術解説(2019年2月14日)
クラスに列名のプロパティを作成することで、入力支援が使えてコーディングが楽になりますが、列数が多くなればVBAの記述量が増え、コーディングが大変になります。入力支援が使えるのは良いが、その事前準備があまりに大変ではやる気が失せてクラス作るのが面倒になってしまいます。

VBAクラスの作り方:列名の入力支援と列移動対応|VBA技術解説(2019年2月11日)
クラスを使う良さとして、入力支援が使えてコーディングが楽になるという利点があります、列番号をクラスに持てば、列名が候補表示されて非常に便利です。しかし、これを実装するには、かなりの手間がかかります。

クラスを使って他ブックのイベントを補足する|VBA技術解説(2019年2月6日)
VBAでイベントを使う場合は、通常はイベントが発生するオブジェクト(ブックやシート等)のモジュールに記載します、つまり、各ブックの中にマクロを入れなければなりません。他ブックのイベントを処理するには、WithEventsキーワードを付けた変数宣言を使います。

Excelアドインの作成と登録について|VBA技術解説(2019年2月3日)
Excelアドインの作成方法と登録方法についての手順と注意点、そして対応するマクロVBAコードについて紹介します。具体的にどんなアドインを作成するかではなく、一般的なアドインの作成と登録についての概要の解説とVBAコードのサンプルになります。

参照設定、CreateObject、オブジェクト式の一覧|VBA技術解説(2019年1月20日)
VBAでエクセル外のオブジェクトを使うときには、事前バインディングと遅延バインディング(実行時バインディング)の2通りがあります、この時それぞれ何を指定したらよいのか、指定する文字列が長いので結構探してしまうことが度々あります。

VBAでファイルを規定のアプリで開く方法|VBA技術解説(2019年1月20日)
Excelマクロで、エクセル以外のファイルを規定のアプリケーションで開く場合の方法について何通りか解説します、VBAでファイルを単純に開くだけの場合についてになります。ファイルを開いた後に、そのファイルに対して何らかの操作をしたい場合は、対応するアプリケーション毎に個別…

ドキュメントプロパティ(BuiltinDocumentProperties,CustomDocumentProperties)|VBA技術解説(2019年1月19日)
ブックのドキュメントプロパティには、組み込みドキュメントプロパティとユーザー設定のドキュメントプロパティがあります。VBAで扱うときは、それぞれ以下のコレクション・オブジェクトを使います、BuiltinDocumentProperties, CustomDocument,VBAの問題点と解決策

他ブックへのリンクエラーを探し解除|VBAサンプル集(2019年1月15日)
リンクエラーが見つけられない・・・「リンクの編集」で、「リンクの解除」を選択してもリンクが削除できない・・・こんな経験をした人は多いのではないでしょうか。エクセルをいろいろと操作していると、意図せずに参照先が別ブックになってしまい、かつ、その参照先のブックが無くなって…

特殊フォルダの取得(WScript.Shell,SpecialFolders)|VBA技術解説(2019年1月1日)
デスクトップのフォルダ、スタートメニューのフォルダ、個人用ドキュメントのフォルダなど、Windowsの特殊フォルダを取得するには、ネイティブのWindowsシェルへのアクセスを提供するWScript.ShellのSpecialFoldersプロパティを使用します。

VBA+SeleniumBasicで検索順位チェッカー(改)|VBA技術解説(2019年6月2日)
VBAでSeleniumBasicを使って検索順位チェッカーを作り、Google検索順位の履歴を管理します、既に作成解説した、VBA+SeleniumBasicで検索順位チェッカー作成こちらの改訂版になります。SEO対策として各キーワードでの検索順位チェックは欠かせません。

マクロでShift_JIS文字コードか判定する|VBA技術解説(2019年6月1日)
環境依存文字・機種依存文字をチェックしたいという話は時々聞くことなのですが、何をもってして判別するかという事が実はとても難しい問題になります、①②もIMEでは[環境依存]と表示されますが、通常これが問題になる事はないでしょう。

Shift_JISのテキストファイルをUTF-8に一括変換|VBAサンプル集(2019年5月31日)
本サイトの文字コードは開設当初からShift_JISでしたが、昨今の事情を考えてUTF-8に変更することにしました。そこで既存記事全てを一括で変換することになり、これをVBAでやりましたので、その時のマクロVBAコードを掲載しておきます。

「VBAによる解析シリーズその2 カッコ」をやってみた|エクセル(2019年5月21日)
ツイッターで出たVBAのお題をやってみました。もとネタはこちら、VBAによる解析シリーズその2カッコ 関連ツイート なかなか楽しかったので、VBAコードを掲載しておきます。

VBA+SeleniumBasicで検索順位チェッカー作成|VBA技術解説(2019年5月18日)
VBAでSeleniumBasicを使って検索順位チェッカーを作ってみます。SEO対策として各キーワードでの検索順位チェックは欠かせませんが、簡単に使えてキーワードを大量に指定できる良いツールがなかなかありません。

テーブル操作のVBAコード(ListObject)|VBA入門(2019年5月12日)
テーブル操作の具体的なVBAコードをパターン別に掲載します、テーブルの全体的な構成は ・テーブル全体 ・見出し行 ・データ範囲 ・集計列 ・集計行 VBAでは、これらのオブジェクトを使い各要素にアクセスします。

テーブル操作の概要(ListObject)|VBA入門(2019年5月12日)
テーブルのVBAでの操作で使用するオブジェクトの概要の説明です、テーブルは、セルの範囲を表(テーブル)に変換することで、関連するデータの管理と分析を容易にできるエクセルの機能で、以前はリストと呼ばれていました。

VBAのスクレイピングを簡単楽にしてくれるSelenium|VBA技術解説(2019年5月6日)
VBAでWebスクレイピングする方法としてIE自動操作がありますが、VBA記述が結構面倒になります、もっと簡単にスマートにVBAを書きたいと思ったら…SeleniumBasicを使ってみましょう。

Excelワークシート関数一覧(2010以降)|VBAリファレンス(2019年4月22日)
Excelワークシート関数の一覧と解説です。Excel2010以降に追加された関数一覧になります。

クラスとCallByNameとポリモーフィズム(多態性)|VBA技術解説(2019年4月6日)
VBAの使い方が進んでいくとクラスを使うようになっていきます。クラスを使うようになるとオブジェクト指向という言葉に出会い、オブジェクト指向を学んでいくとポリモーフィズム(多態性)という言葉に出会います。

VBAでのタイマー処理(SetTimer,OnTime)|VBA技術解説(2019年4月3日)
VBAでタイマー処理(一定時間間隔で処理)を行う方法についての解説です。最も一般的な方法は、Application.OnTimeを使う方法になりますが、今回の主題としては、WindowsAPIのSetTimerを紹介します。

クラスとイベントとマルチプロセス並列処理|VBA技術解説(2019年4月2日)
エクセルVBAではマルチスレッドによる並列処理はサポートされていません、つまり通常は順序良く直列に処理していくしかありません。しかし処理時間が多大にかかるような処理も現実には存在しているため、エクセルVBAで並列処理したいという要望も出てきます。

エクセルの日付と時刻のまとめ|エクセル関数超技(2019年3月6日)
エクセルに入力するデータとしては、数値、文字、日付時刻などがありますが、日付時刻はかなり特殊なものとなっています。日付時刻の扱いは独特であり、エクセルのワークシートだけでなくマクロVBAでも他のプログラミング言語でも扱いが面倒なものです。

Excelシートの複雑な計算式を解析するVBA|VBAサンプル集(2019年2月18日)
セルに入力されている数式が折り返されていて複数行(ときに3行以上)になっている場合、数式バーで見ていたのでは、どんな数式なのかがさっぱりわからなくなります。このような複雑な数式を分解し、分かり易く表示するVBAを作成しました。

VBAクラスの作り方:独自Rangeっぽいものを作ってみた|VBA技術解説(2019年2月16日)
クラスの作成は、標準モジュールで作成していた時とは様相が違い戸惑う部分も多いと思います、それは、初めてVBAに取り組んだ時の戸惑いと同じかもしれません。最初はとにかく慣れることが一番です、細かい文法や機能は、少し慣れてから改めて学んでも遅くはありません。

VBAクラスの作り方:列名のプロパティを自動作成する|VBA技術解説(2019年2月14日)
クラスに列名のプロパティを作成することで、入力支援が使えてコーディングが楽になりますが、列数が多くなればVBAの記述量が増え、コーディングが大変になります。入力支援が使えるのは良いが、その事前準備があまりに大変ではやる気が失せてクラス作るのが面倒になってしまいます。VBAの問題点と解決策

VBAクラスの作り方:列名の入力支援と列移動対応|VBA技術解説(2019年2月11日)
クラスを使う良さとして、入力支援が使えてコーディングが楽になるという利点があります、列番号をクラスに持てば、列名が候補表示されて非常に便利です。しかし、これを実装するには、かなりの手間がかかります。

クラスを使って他ブックのイベントを補足する|VBA技術解説(2019年2月6日)
VBAでイベントを使う場合は、通常はイベントが発生するオブジェクト(ブックやシート等)のモジュールに記載します、つまり、各ブックの中にマクロを入れなければなりません。他ブックのイベントを処理するには、WithEventsキーワードを付けた変数宣言を使います

Excelアドインの作成と登録について|VBA技術解説(2019年2月3日)
Excelアドインの作成方法と登録方法についての手順と注意点、そして対応するマクロVBAコードについて紹介します。具体的にどんなアドインを作成するかではなく、一般的なアドインの作成と登録についての概要の解説とVBAコードのサンプルになります。

参照設定、CreateObject、オブジェクト式の一覧|VBA技術解説(2019年1月20日)
VBAでエクセル外のオブジェクトを使うときには、事前バインディングと遅延バインディング(実行時バインディング)の2通りがあります、この時それぞれ何を指定したらよいのか、指定する文字列が長いので結構探してしまうことが度々あります。

VBAでファイルを規定のアプリで開く方法|VBA技術解説(2019年1月20日)
Excelマクロで、エクセル以外のファイルを規定のアプリケーションで開く場合の方法について何通りか解説します、VBAでファイルを単純に開くだけの場合についてになります。ファイルを開いた後に、そのファイルに対して何らかの操作をしたい場合は、対応するアプリケーション毎に個別…

ドキュメントプロパティ(BuiltinDocumentProperties,CustomDocumentProperties)|VBA技術解説(2019年1月19日)
ブックのドキュメントプロパティには、組み込みドキュメントプロパティとユーザー設定のドキュメントプロパティがあります。VBAで扱うときは、それぞれ以下のコレクション・オブジェクトを使います。

他ブックへのリンクエラーを探し解除|VBAサンプル集(2019年1月15日)
リンクエラーが見つけられない・・・「リンクの編集」で、「リンクの解除」を選択してもリンクが削除できない・・・こんな経験をした人は多いのではないでしょうか。エクセルをいろいろと操作していると、意図せずに参照先が別ブックになってしまい、かつ、その参照先のブックが無くなって…

特殊フォルダの取得(WScript.Shell,SpecialFolders)|VBA技術解説(2019年1月1日)
デスクトップのフォルダ、スタートメニューのフォルダ、個人用ドキュメントのフォルダなど、Windowsの特殊フォルダを取得するには、ネイティブのWindowsシェルへのアクセスを提供するWScript.ShellのSpecialFoldersプロパティを使用します。

クラスの使い方、クラスの作り方

VBAのクラスとは(Class,Property,Get,Let,Set)|VBA技術解説
VBAを覚えて、いろいろ作りながらネットで調べたりしていると、クラスやらオブジェクト指向やらという言葉に出くわします。いくら言葉を尽くしても…

VBAクラスの作り方:列名の入力支援と列移動対応|VBA技術解説
クラスを使う良さとして、入力支援が使えてコーディングが楽になるという利点があります、列番号をクラスに持てば、列名が候補表示されて非常に便利です。しかし…

VBAクラスの作り方:列名のプロパティを自動作成する|VBA技術解説
クラスに列名のプロパティを作成することで、入力支援が使えてコーディングが楽になりますが、列数が多くなればVBAの記述量が増え、コーディングが大変になり…

VBAクラスの作り方:独自Rangeっぽいものを作ってみた|VBA技術解説
クラスの作成は、標準モジュールで作成していた時とは様相が違い戸惑う部分も多いと思います、それは、初めてVBAに取り組んだ時の戸惑いと同じかもしれません…

クラスを使って他ブックのイベントを補足する|VBA技術解説
VBAでイベントを使う場合は、通常はイベントが発生するオブジェクト(ブックやシート等)のモジュールに記載します、つまり、各ブックの中にマクロを入れなければなりません…