【ハウツー】
前回までの説明で、VBAでマクロを作成し、実行することができるようになりました。今回からは、VBAのプログラムの書き方を勉強して行きたいと思います。前回の例題に出てきたものに、Cellsプロパティがありました。Excelのセルの内容を読み込んだり、セルにデータを設定したりできるものです。表を操作していろいろな作業をするのは、Excel(表計算プログラム)の得意とするところです。今回はExcel表におけるデータの操作に焦点を当てていきたいと思います。
ゼロからはじめるVBA - 基本編
ゼロからはじめるVBA - VBA事始め編
前回、セルを指定するための命令として、Cellsプロパティを紹介しました。セルを操作するために、まずは操作対象のセルを選択しておく必要があります。他に特定の範囲を指定するためのプロパティとしては、Rangeプロパティ、Rowsプロパティ、Columnsプロパティがあります。
また、セルの指定は現在アクティブになっているシートに対して行われます。他のシートのセルを扱うときは、Worksheets、Sheetsプロパティで扱いたいシートをアクティブにしてからセルを指定する必要があります。
以下では、これらのプロパティについて説明していきます。
シートを設定する方法を説明します
Sheets("Sheet1").Select '(1)
Worksheets("Sheet1").Activate '(2)
(1)(2)どちらもSheet1をアクティブにする指定です。どちらを使用してもかまいません。具体的にセルを指定する前に書きます。次に、セルの指定を説明します。
以下説明するリストはsample.lzhの中に「セル操作編例題.xlsm」「素材別カロリー表.xlsm」「他のBook.xlsx」として収録しています。サンプルとしてご活用ください。
セルを指定するプロパティです。
以下は、2行C列を指定します。
Sub range_01()
Sheets("Sheet1").Select
Range("C2").Select
End Sub
![]() |
図1:一つのセルを指定 |
以下は、1行A列と3行C列を指定します。
Sub range_02()
Sheets("Sheet1").Select
Range("A1,C3").Select
End Sub
![]() |
図2:複数のセルを指定 |
以下は、1行A列から3行C列を範囲指定します。
Sub range_03()
Sheets("Sheet1").Select
Range("A1:C3").Select
End Sub
![]() |
図3:セルの範囲を指定 |
セルを指定するプロパティです。
以下は2行C列を指定します。結果は、図1と同じです
Sub cells_01()
Sheets("Sheet1").Select
Cells(2, 3).Select
End Sub
以下は1行A列から3行C列を範囲指定します。Cellsプロパティはあくまでひとつのセルの指定するものですので、範囲指定したい場合はRangeプロパティと併用します。結果は、図3と同じです。
Sub cells_02()
Sheets("Sheet1").Select
Range(Cells(1, 1), Cells(3, 3)).Select
End Sub
| 【レポート】マカフィーの世界の専門家の意識調査「サイバー防衛報告書」とセキュリティソリューション [21:15 5/25] |
| アップル、Aperture 3.2.4を公開 - バグ修正、安定性向上など [20:51 5/25] |
| 【レポート】GTC 2012 - VGXでエンタープライズ環境でのGPU需要開拓を狙うNVIDIA [20:07 5/25] |
| デル、期間限定キャンペーンに特価アイテム追加、アップグレード無料も継続 [19:41 5/25] |
| 上海問屋、iPhoneとほぼ同じ薄さのバッテリ内蔵ヘッドホンアンプ [19:05 5/25] |
|
心理学のプロのお墨付き。本当に怖いホラー映画とは? [09:30 5/27] ホビー |
|
下田麻美、待望の1stシングルが6月27日発売! ジャケ写を紹介 [09:10 5/27] ホビー |
|
【連載】読む鉄道、観る鉄道 第9回 『サブウェイ・パニック』 - 1970年代のニューヨークと地下鉄の情景を描く [08:00 5/27] ライフ |
|
【連載】発音も聞けちゃう、知って得するidiom情報 第14回 call it a day [08:00 5/27] ライフ |
|
MINI、ロールスロイスにインスパイアされた最高級品質の特別仕様車を発売 [07:30 5/27] ライフ |