• ベストアンサー

Excelの名前を取得したい

VB初心者です。宜しく御願いします。 ExcelのシートのRange("A11")の名前に「AAA」と付けています。 VBから、Excelを起動して、そのExcelのシートのRange("A11")の名前を取得したい場合はどうすれば良いのでしょうか? VB側でシートにそのセルにその名前が付いているかのチェックをしたいのです。 ご教授御願いします。宜しくお願い致します。

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

  • ベストアンサー
  • onlyrom
  • ベストアンサー率59% (228/384)
回答No.5

  Nameプロパティを使って   MsgBox Range("A11").Name.Name 以上。  

Mark0817
質問者

お礼

ありがとうございます。 単純にNameだけではダメなのですね。 使わせてもらいます。

その他の回答 (4)

  • okormazd
  • ベストアンサー率50% (1224/2412)
回答No.4

直接取れそうもない(知らない)からつぎのようにでもするか。 Sub getname() For Each nm In ActiveWorkbook.Names If nm.RefersTo = "=Sheet1!$A$11" Then nmab = nm.Name Exit For End If Next MsgBox nmab End Sub

Mark0817
質問者

お礼

ありがとうございます。 そういう方法もありますかー。 でもこれだとレスポンスが心配なような気がします。 もっと簡単にとる方法が知りたいですね。

  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.3

>セルA11の名前を知る方法が知りたいのです。 私はVBのバージョンが知りたいです。 VB6.0等かVB.NET等か。。。 ExcelVBAではないですよね?

Mark0817
質問者

お礼

すみません。 説明不足でしたね。 VB6です。

  • hana-hana3
  • ベストアンサー率31% (4940/15541)
回答No.2

MsgBox Range("AAA").Address アクティブシートにその名前が存在すれば、セルアドレスを取得できます。 無ければエラーで実行が止まります。 あとは、ヘルプの「Names コレクション オブジェクト」等を参考にしてみてください。

Mark0817
質問者

お礼

ありがとうございます。 そうなんです。アドレスは取れるのですけど、名前が取れないんですよね~。 どうすれば良いのでしょうか?

  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.1

Book内の名前を取得して、セルA11が含まれていたら当たり。 と言う事ではないかな?・・・憶測ですけど。

Mark0817
質問者

お礼

↓名前からセルを導き出すことはできるのですが・・・。 range("AAA").address 逆が出来ないのです。。。 セルA11の名前を知る方法が知りたいのです。