ExcelWork.info

Excel(エクセル)のマクロ・VBA・関数・操作などのメモ

セル・セル範囲に名前を定義・削除(Name プロパティ・Names コレクション)

      2017/11/01

セル・セル範囲に名前を定義(Name プロパティ)

Range オブジェクトName プロパティを使用して、セルやセル範囲に、「名前」を定義します。

Name プロパティを使用し「名前」を定義すると、「ブックレベルの名前」として登録されます(エクセルの「名前管理」ダイアログボックスを表示した時、「範囲」の列に「ブック」と表示されます)。

Name プロパティ

【書式】

<取得>
result = Object.Name

<設定>
Object.Name = string

引数・戻り値

  • object  ・・・  対象となる Range オブジェクト
  • string  ・・・  セル・セル範囲に定義する「名前」を指定します。(文字列)
  • result  ・・・  セル・セル範囲に定義されている「名前」。指定した範囲に「名前」が定義されていない場合はエラーとなります。


セル・セル範囲に名前を定義・削除(Names コレクション)

Names コレクションは、セルやセル範囲に、「名前」を定義したり、削除したりすることができます。

Names コレクションAdd メソッドを使用して「名前」を定義した場合は、「ブックレベルの名前」または、「ワークシートレベルの名前」のいずれかで登録することができます。(エクセルの「名前管理」ダイアログボックスを表示した時、「ブックレベル」の場合は、「範囲」の列に「ブック」と表示され、「ワークシートレベル」の場合は、「シート名」が表示されます)。

Names コレクション(Add メソッド)

【書式】

Object.Names.Add ( [ Name, RefersTo, Visible, MacroType, ShortcutKey, Category, NameLocal, RefersToLocal, CategoryLocal, RefersToR1C1, RefersToR1C1Local ] )

引数・戻り値

  • object  ・・・  対象となる Names オブジェクト
    ここに、Workbook オブジェクトを指定すると、「ブックレベル」の Names コレクションを、Worksheet オブジェクトを指定すると、「シートレベル」の Names コレクションを、取得・設定することができます。
  • Name  ・・・  「名前」として使用する文字列を指定します。(省略可)
  • RefersTo  ・・・  「名前」と関連付けるセル範囲を指定します。参照が存在しない場合は、Nothing が返されます。(省略可)
  • Visible  ・・・  「名前」を表示する場合は True を指定、非表示にする場合は False を指定します。非表示の場合は、[名前の定義]、[名前の貼り付け]、および [ジャンプ] ダイアログ ボックスに表示されません。既定値は True です。(省略可)
  • MacroType  ・・・  マクロの種類を、次のいずれかの値で指定します。
    1・・・ユーザー定義関数 (Function プロシージャ)
    2・・・マクロ (Sub プロシージャ)
    3・・・なし (定義した名前はユーザー定義関数またはマクロを参照しません)
    既定値は 3 です。(省略可)
  • ShortcutKey  ・・・  マクロが設定されている場合のショートカットキーを指定します。(省略可)
  • Category  ・・・  引数 MacroType1 または 2 のときに、「名前」が参照するマクロや関数の分類を指定します。(省略可)
  • NameLocal  ・・・  引数 Name が指定されていない場合は、名前として使用する文字列(日本語等)を指定します。名前には、スペースを含めることはできません。(省略可)
  • RefersToLocal  ・・・  引数 RefersToRefersToR1C1、および RefersToR1C1Local が指定されていない場合は、A1 形式の表記法を使用して、文字列で名前の参照先を指定します。(省略可)
  • CategoryLocal  ・・・  引数 Category が指定されていない場合は、ユーザー設定関数の分類を示す文字列を指定します。(省略可)
  • RefersToR1C1  ・・・  引数 RefersToRefersToLocal、および RefersToR1C1Local が指定されていない場合は、R1C1 形式の表記法を使用して名前の参照先を指定します。(省略可)
  • RefersToR1C1Local  ・・・  引数 RefersToRefersToLocal、および RefersToR1C1 が指定されていない場合は、R1C1 形式の表記法を使用して文字列(日本語等)で名前の参照先を指定します。(省略可)
  • result  ・・・  作成した「名前」を表す Name オブジェクト

Names コレクション(Item メソッド)

【書式】

Object.Names.Item ( [ Index, IndexLocal, RefersTo ] )

引数・戻り値

  • object  ・・・  対象となる Names オブジェクト
  • Index  ・・・  対象の定義名またはインデックス番号を指定します。
  • IndexLocal  ・・・  定義名の名前を日本語等(ユーザーの言語)で指定します。
  • RefersTo  ・・・  「名前」が参照するセル範囲を指定します。
  • result  ・・・  コレクションに含まれる Name オブジェクト

3つの引数は、省略可能ですが、必ず 1 つだけ引数を指定するようにしてください。

Names コレクション(プロパティ)

【書式】

Object.Names.Application

Object.Names.Count

Object.Names.Creator

Object.Names.Parent

項目の説明

  • object  ・・・  対象となる Names オブジェクト
  • Application  ・・・  オブジェクトを返すプロパティです。対象となるオブジェクトが指定されない場合は、Excel アプリケーション (Application オブジェクト) を返します。対象となるオブジェクトが指定された場合は、指定されたオブジェクトを作成した Application オブジェクトを返します。値の取得のみ可能です。
  • Count  ・・・  コレクションに含まれるオブジェクトの数を表す長整数型(Long)の値を返します。
  • Creator  ・・・  指定されたオブジェクトを作成したアプリケーションを、32 ビットの整数値で返します。値の取得のみ可能です。長整数型(Long)の値を使用します。
  • Parent  ・・・  指定されたオブジェクトの親オブジェクトを返します。値の取得のみ可能です。


「名前付きセル範囲」使用例

サンプルVBAソース

実行結果

作成した「名前付き範囲」の名前・アドレスを表示

Name プロパティ・Names コレクション 例1

修正した「名前付き範囲」の名前・アドレスを表示

Name プロパティ・Names コレクション 例2

シートレベルの「名前付き範囲」を削除したあとの「名前付き範囲」を表示

Name プロパティ・Names コレクション 例3

すべての「名前付き範囲」を削除

Name プロパティ・Names コレクション 例4



まとめ

「名前」の作成


「名前」の情報取得


「名前」のセル範囲取得・セル範囲の変更


「名前」の削除


 - セルの操作 , , , , , , ,

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

  関連記事

オートフィルタの状況を確認(AutoFilterMode, FilterMode)

AutoFilterMode プロパティ AutoFilterMode プロパテ …

入力規則(Validation オブジェクト)

Validation オブジェクト セル範囲に入力できる値を制限するには 入力規 …

任意の行または列を参照(Rows プロパティ,Columns プロパティ)

Rows プロパティ・Columns プロパティ Rows プロパティは、オブジ …

セルが選択されているか確認する(TypeName 関数)

セルが選択されているか確認する方法と使用例 TypeName 関数の引数に、Se …

配列数式を取得または設定する(FormulaArray プロパティ)

FormulaArray プロパティ FormulaArray プロパティは、対 …

FormulaHidden プロパティ 例1
数式を非表示にする(FormulaHidden プロパティ)

FormulaHidden プロパティ 数式が入力されたセルを選択するとその数式 …

ReferenceStyle プロパティ 例01
A1参照形式、R1C1参照形式の設定・取得(ReferenceStyle プロパティ)

ReferenceStyle プロパティ ReferenceStyle プロパテ …

セルを参照する(Range プロパティ)

Range プロパティ 任意のセルにアクセスするには Range プロパティを使 …

AutoFilter オブジェクト(メソッド・プロパティ)

AutoFilter.ShowAllData メソッド AutoFilter.S …

Validation プロパティ 使用例3
入力規則(入力時メッセージの設定)Validation オブジェクト

入力規則の入力時メッセージを表示する Validation.ShowInput …