• ベストアンサー

名前を付けた範囲の項目

Excelシートの範囲に対して名前を設定しているの ですが、その名前の中の項目を簡単に取り出す方法 はあるのでしょうか? 例えば、A1:E2の範囲に対して「商品テーブル」という 名前を付けます。 この中のB1にはタイトルである「品名」という文字が入っています。 B2にはデータである「パソコン」という文字が入っています。 「商品テーブル」の1行目にある品名を簡単に取得 したいのです。 Range("商品テーブル").品名(1).Valueのような感じ で取得できないかな? (ちなみに、このコードではエラーになります)

質問者が選んだベストアンサー

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.3

B2:D4に a b c d e f g h i と入れて 名前「範囲1」を定義します。 Sub test02() Worksheets("sheet1").Range("範囲1").Cells(2, 2).Select End Sub 範囲1の四角のセルの範囲の左上、B2を起点にして セルの指定に使えるCellsプロパティが使えます。 上例では右へ2列、下へ2行のセルを指すので C3をさします。 普通Cells(i,j)を使っていますが、それは、A1を起点にするというエクセルのDefauilが効いてくれて略しているわけです。

level30
質問者

お礼

よく理解できました。 ありがとうございました。

その他の回答 (2)

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.2

あるいは、 Const 品名 = 2 MsgBox Range("商品テーブル").Cells(1+1,品名).Value 'cells は(1,1)始まり

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

単なるシュガーコーティングですが こんな感じでどうでしょう? Const 商品テーブル = "A1" Const 品名 = 1 '商品テーブルの品名の列の1番目の値 MsgBox Range(商品テーブル).Offset(1, 品名).Value

関連するQ&A