2016-05-11 49 views
5

adı bulunan bir hücrenin (içerik) Buerişim değeri Excel VBA

Dim WB As Workbook 
Set WB = Workbooks.Open("foo\bar.xlsx", , True) 
Debug.Print (WB.Names("named_cell").Value) 
WB.Close (False) 

döner yerine hücrede C377 değerin

='Sheet'!$C$377 

.

Bunun yerine hücrenin değerini nasıl alabilirim? yollarından

+2

Debug.Print (WB.Worksheets ("NameOfSheet") 'ı deneyin. Aralık ("named_cell"). Value) 'yerine. – Ralph

+0

Teşekkür ederiz! Bu çalışıyor. Ancak, sayfa adını belirtmeden, adlandırılmış bir aralığın referansına erişebilmem için biraz garip ... İçerik gerçekten yok mu? – speendo

cevap

3

Çift: (o açtığınız son çalışma kitabı var gibi olmalıdır) aktif çalışma kitabındaki eğer

Debug.Print Range("Named_Range").Value 
Debug.Print [Named_Range].Value '// This uses the evaluate method 

Bir yaprak nesne ile adlandırılmış aralık nitelemek gerekmez. Menzil kurulduktan sonra

1

Excel yüzden, onun Parent bilir:

enter image description here

Bu özelliklerini kullanır:

Sub dural() 
    Dim r As Range 
    Set r = Range("named_cell") 
    MsgBox r.Parent.Name & vbCrLf & r.Address(0, 0) & vbCrLf & r.Value 
End Sub 

bu aralığı hakkında bilgi almak için tek yoldur Aralık Nesne yerine Çalışma Kitabı Nesnesi.