145:マクロ素材 自分を知る

130:マクロ素材

エクセルを使っていて、今の状態のディレクトリであったり、ファイル名であったり、セル番地等を知りたいときがあると思います。その現在の状態を調べるときに使えるマクロ構文をご紹介いたします。

ディレクトリ(パス)を調べる構文

ディレクトリ = ActiveWorkbook.Path

「ディレクトリ」は、変数です。

ファイル名を調べる構文

ファイル名 = ActiveWorkbook.Name

「ファイル名」は、変数です。

現在の入力セル番地を調べる構文

入力セル番地 = ActiveCell.Address(ColumnAbsolute:=False, RowAbsolute:=False)

入力セル行を調べる

入力セル行 = ActiveCell.Row

入力セル列を調べる

入力セル列 = ActiveCell.Column

この時、列はABCではなく、数字でかえってきます。

現在の選択セル番地を調べる構文

選択セル番地 = Selection.Address(ColumnAbsolute:=False, RowAbsolute:=False)

「選択セル番地」は変数です。

選択セル番地 = Selection.Address(ColumnAbsolute:=False, RowAbsolute:=False) の”False”を”true”にすると、$がついて絶対セル番地となります。また、 ”true” の場合であれば()括弧の中の引数は省略できます。

まとめたマクロ

Sub 自分を知る()
'
' 自分を知る Macro

Cells(5, 2) = "ディレクトリ"
ディレクトリ = ActiveWorkbook.Path
Cells(5, 4) = ディレクトリ

Cells(6, 2) = "ファイル名"
ファイル名 = ActiveWorkbook.Name
Cells(6, 4) = ファイル名

Cells(7, 2) = "入力セル番地"
入力セル番地 = ActiveCell.Address(ColumnAbsolute:=False, RowAbsolute:=False)
Cells(7, 4) = 入力セル番地

Cells(8, 2) = "入力セル行"
入力セル行 = ActiveCell.Row
Cells(8, 4) = 入力セル行

Cells(9, 2) = "入力セル列"
入力セル列 = ActiveCell.Column
Cells(9, 4) = 入力セル列

Cells(10, 2) = "選択セル番地"
選択セル番地 = Selection.Address(ColumnAbsolute:=False, RowAbsolute:=False)
Cells(10, 4) = 選択セル番地

End Sub

説明

Cells(5, 4) はD5セルのこと、 Cells(6, 4) はD6セルのこと、 Cells(7, 4) はD7セルのことです。

マクロを動かすと、現在のエクセルシートのD5にディレクトリ(パス)を入れて、D6にファイル名、D7に入力セル番地等が入力されます。B列には、それぞれの項目名が入ります。

145:マクロ素材 自分を知る

コメント

タイトルとURLをコピーしました