Imansible interrogare intervallo dinamico denominato in foglio Excel utilizzando ADO

Supponiamo di disporre di un foglio di Excel denominato Adjustments memorizzate in una variabile denominata wksName e, in quel foglio, ho un intervallo denominato definito come segue se si guarda nel Nome Manager:

 tblData =OFFSET(Adjustments!$A$1,0,0,COUNTA(Adjustments!$A:$A),4) 

Così si espande a tante righe come abbiamo dati nelle colonne A attraverso D.

Ora ho il seguente codice nel mio module VBA:

 Set ExcelCon = CreateObject("ADODB.Connection") Set ExcelRecSet = CreateObject("ADODB.Recordset") ExcelCon.ConnectionString = "Provider='Microsoft.Jet.OLEDB.4.0';" & _ "Data Source='" & ThisWorkbook.FullName & "';" & _ "Extended Properties='Excel 8.0;HDR=Yes;IMEX=1'" 'Get the data for the update: ExcelCon.Open ' Get the data from the spreadhseet for the update statement Set ExcelRecSet = ExcelCon.Execute("SELECT * FROM [" & wksName & "$tblData]") 

Quando provo a eseguire questo codice, ottengo l'errore:

 Run-time error '-2147217865 (80040e37)': The Microsoft Jet database engine could not find the object 'Sheet1$tblData'. Make sure the object exists and that you spell its name and the path name correctly. 

È una limitazione all'utilizzo di ADO – I campi denominati non possono essere definiti in modo dinamico – Oppure c'è un modo per ottenerlo a funzionare?

Grazie!!

Come indicato nelle osservazioni, il codice che ha finito per lavorare per me (per quelli di voi che potrebbero trovarti hanno lo stesso problema) era qualcosa in linea con:

 Set ExcelRecSet = ExcelCon.Execute("SELECT * FROM [" & wksName & "$" & _ wks.Range("tblData").Address(0, 0) & "]") 

Questo sicuramente funziona, ma se ci fosse un modo per select una gamma variabile senza whererlo fare riferimento come sopra, mi piacerebbe vedere il modo per farlo.

Grazie!!