【簡単エクセルマクロ・VBA】セルへの値の入力/セルの値を取得|セルの基本操作 #001
いつもありがとうございます。
これは、ノンプログラマー向けのエクセルマクロ・VBA解説シリーズです。
本稿では、セルの基本操作のうち、「セルへの値の入力」と「セルの値を取得」を解説いたします。
ことばの意味
- セル
ワークシートのひとつひとつのマス目のことです。 - ノンプログラマー
プログラミングを本職としない人たちのことです。 - マクロ
VBAを使って作成される「機能」のことです。 - VBA
Visusal Basic for Application の略で、プログラミング言語のことです。
関連記事
筆者の記事関連経験/資格
- VBA使用経験 約20年
- Python 3 エンジニア認定基礎試験 合格
一般社団法人Pythonエンジニア育成推進協会によって運営・認定されている民間資格で、経済産業省が定めたガイドライン「ITスキル標準(ITSS)」において、職種:ソフトウェアディベロップメント、専門分野:応用ソフトのレベル1に掲載されています。
VBAにおける「セルの基本操作」の全体像
マクロを作成するにあたり、セルの操作は何かと必要になります。セルの基本操作の全体像は以下の記事で解説しております。
本稿では、セルの基本操作の一部である「セルへの値の入力」と「セルの値を取得」を解説いたします。
VBAで「セルへの値の入力/セルの値を取得」を行う方法
セルへの値の入力
セルに値を入力するには、以下のように記述します。
' Cells(1, 1)に "1" を入力する
ThisWorkbook.Worksheets("Sheet1").Cells(1, 1).Value = 1
このコードでは、ThisWorkbook ~ Cells(1, 1) というオブジェクトの Value というプロパティを "1" に設定しています。
実際にコーディングする際は、オブジェクトの部分を実際に操作したい対象に置き換えてください。
上記のコードを実行すると、以下の結果が出力されます。
尚、Cells(1, 1)とは以下の場所を表します。
Cellsの構文は、Cells(行番号, 列番号)となっています。行番号は縦方向の番号、列番号は横方向の番号を表します。
例えば、Cells(2, 1)であれば、以下の場所を表します。
ことばの意味
- オブジェクト
VBAで操作する対象のことです。 - プロパティ
オブジェクトの属性のことです。オブジェクトの状態を制御したり、情報を取得したりするために使用されます。
セルの値を取得
セルの値を取得するには、以下のように記述します。
' Cells(1, 1)の値を取得する
Debug.Print ThisWorkbook.Worksheets("Sheet1").Cells(1, 1).Value
このコードでは、Debug.Print というステートメント使って、Cells(1, 1)に入力されている情報をイミディエイトウインドウ(=デバッグウインドウ)に表示しています。Cells(1, 1)には、"1" が入力されている前提とします。
尚、イミディエイトウィンドウとは、コードの動作を確認するために、変数に格納されている値を表示したり、式の計算結果を表示したりする確認用のウィンドウです。
イミディエイトウィンドウは、エディタ(VBE、Visual Basic Editor)の「表示」→「イミディエイトウィンドウ」から表示できます。
変数に値を格納して表示する場合は、以下のようになります。
' 変数を宣言
Dim cell_value As Long
' 変数に値を代入
cell_value = ThisWorkbook.Worksheets("Sheet1").Cells(1, 1).Value
' イミディエイトウィンドウに値を出力
Debug.Print cell_Value
参考にMsgbox 関数を使用して、メッセージボックスに値を表示する場合のコードも例示します。
' Cells(1, 1)の値を取得する
MsgBox ThisWorkbook.Worksheets("Sheet1").Cells(1, 1).Value
ことばの意味
- ステートメント
VBAの中で何らかの固有の働きをすることを定義したものの呼称です。VBAには、Ifステートメント、For...Nextステートメント、Withステートメント、Subステートメントなど、様々なステートメントがあります。例えば、Subステートメントは、コードの始まりを定義するステートメントです。 - 関数
特定の処理をまとめたもののことです。入力値を受け取り、それに基づいた結果を出力します。
おわりに
ご覧いただきありがとうございました。
今回の記事では、セルの基本操作のうち、「セルへの値の入力」と「セルの値を取得」を解説いたしました。
お問い合わせやご要望等ございましたら、「お問い合わせ/ご要望」またはコメントにて、ご連絡いただければ幸いでございます。
少しでも皆様の人生に変化をもたらすきっかけとなれば幸いでございます。
VBAプログラミングスキルアップのための参考情報
ここでは参考図書を紹介いたしますが、これらに限らず自分に合うものを選ぶことが重要だと考えております。皆様の、より一層のご成功を心よりお祈りしております。
VBAプログラミングのスキルアップ
学習用としてもハンドブックとしても役立つ便利な書籍がこちらです。価格はやや高めですが、その内容は非常に充実しています。相応のスキルを身に付けるためには、こうしたしっかりとした書籍を一冊持っておくと良いでしょう。
入門書に関しては、どの書籍も大きな違いはありません。あまり迷うことに時間をかけるより、手頃なものを一冊選んでみると良いでしょう。VBAの入門書は数多く出版されていますので、興味がある方はぜひチェックしてみてください。
私は、迷った場合は、インプレス社の「いちばんやさしい」シリーズを購入することが多いです。
>>Amazon で VBA の書籍をでチェックする>>楽天市場 で VBA の書籍をチェックする
>>Yahoo!ショッピングでVBAの書籍をチェックする
VBAのプログラミング能力を客観的に証明したい場合には「VBAエキスパート試験」があります。この試験はVBAの知識を公式に認定するものです。VBAの総合的な能力獲得を目指す方に適しています。以下の公式テキストが販売されております。
プログラミングの一般教養
「独学プログラマー」というプログラミングの魅力を解説した書籍があります。これはVBAではなくPythonを題材としていますが、プログラミングの基本的な知識や思考法、仕事の進め方まで幅広く学べます。
こちらの記事でも紹介しております。もしよろしければご覧ください。