Excel VBAでセルの操作をやりたい…
セルを選択とか文字入力とか…!?
基本だけを覚えたら大丈夫!?
少しだけ、基本的なことを書いてみようと思います。![]()
Excelを弄っていたら・・・「VBAで思い通りに操作できたら良いな・・・」なんて思いますよね。
手っ取り早いのがマクロを記録して行うのが速いとは思うのですが・・・
- 【VBAの3基本】
- 何(オブジェクト名) . 属性名(オブジェクトの性質)
※ セルA1の「セル内容」が知りたい場合・・・
セルA1.内容と記述します。 - 何(オブジェクト名) . 属性名(オブジェクトの性質)=値
※ セルA1の内容を「50」にしたい場合・・・
セルA1.内容=50と記述します。 - 何(オブジェクト名) . 動作名(オブジェクトへの命令)
※ セルA1を「選択」したい場合・・・
セルA1.選択と記述します。
即ち、セル(Range)、シート(worksheet)、ブック(Workbook)等々のことですね。
そして、オブジェクトの特徴や性質を示すものに「プロパティ」があり、セルのプロパティにはValue プロパティというセルの内容を示すプロパティが使用できるんです。
さらにもう一つは、オブジェクトの動作を指示する「メソッド」というものがあり、セルに対してはSelect(セルを選択する)、Delete(セルを削除する)、Insert(セルを挿入する)が使用できます。
ということで、今迄の説明を踏まえてVBAを使用して以下のことをやってみます。
- 好みのセル範囲を指定して選択させます。
- そして、選択したセル範囲のセル全てに「値」という文字を入力させます
今日はそのやり方を書いて置こうと思います。
- 【VBAでセルを選択し文字を入力する方法】
-
- 先ず、リボン上の『開発』タブをクリックします。
- 開いたメニューのコード項目の『Visual Basic』を選択します。
- するとMicrosoft Visual Basic for Applicationsが開きますので『挿入』タブを選択します。
- メニューの中から『標準モジュール』を選択します。
- すると、『モジュール』が表示されます。
-
- 先ず、『Sub』+『半角スペース』+『マクロ名(日本語)』+『半角( )』と入力します。
- そして、『Enter』で確定しますと一行空けて『End Sub』と入力されます。
-
- 今回はセルB2:D6を選択してみますのでセルのオブジェクト『Range』と入力し選択範囲ダブルクォーテーションで囲んでドットを入力し『Range("D2:D6").』とします。
- すると、どの操作をするのかメニューが出ますので、今回はセルを選択したいので『Select』をダブルクリックします。
-
- 『Range("B2:D6").Select』と入力されてますのでMicrosoft Visual Basic for Applications上のSub /ユーザーフォームの実行の『▲』ボタンをクリックしてみます。
- すると、Excelシート上の『セルB2:D6』のセル範囲が選択されました。
-
- 続いて、一行下にセルの内容を示すValueプロパティを使用して『Range("B2:D6").Value』と入力します。
- 続いて、値という内容を表示させたいので=で繋いでダブルクォーテーションで囲んで『Range("B2:D6").Value="値"』と入力します。
- そして、再度『▲』ボタンをクリックしてみます。
-
- すると、マクロのダイアログが出ますので複数のマクロが表示されてる場合は現在のマクロを選択して『実行』ボタンをクリックします。
-
- すると、選択されたセル範囲全てのセルに文字の『値』が入力されました。
-
VBAの基本が解れば、それなりに工夫出来て楽しくなると思いますよ。
是非、VBAにも挑戦してみて下さいね!