Dati "formattati come tabella": recupero area tramite VBA

Anonimo
2014-03-25T09:11:24+00:00

<p>In un foglio Excel 2010, ho alcuni dati "formattati come tabella" (Home / Formatta come tabella) e viene creata una "tabella" visibile da "Formule / Gestione nomi". Tutto bene. Avrei però bisogno di recuperare, tramite VBA, la stringa "Riferito a" (es.: "=Foglio1!$A$2:$C:$23") in modo da poterla usare altrove in un programma VBA. </p><p>Con i "Nomi definiti" si trova facilmente con il parametro "RefersTo" (ThisWorkbook.Names(i).RefersTo), ma con i "nomi automatici di tabella" (chiamiamoli così) originati cioè dalla "formattazione come tabella", come si fa ad ottenere il medesimo risultato?</p><p>Grazie in anticipo</p><p></p><p>Gian Ivo</p>

Microsoft 365 e Office | Excel | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento
Risposta accettata dall'autore della domanda
Anonimo
2014-03-25T09:19:48+00:00

In un foglio Excel 2010, ho alcuni dati "formattati come tabella" (Home / Formatta come tabella) e viene creata una "tabella" visibile da "Formule / Gestione nomi". Tutto bene. Avrei però bisogno di recuperare, tramite VBA, la stringa "Riferito a" (es.: "=Foglio1!$A$2:$C:$23"

<cut>

Se ho capito:

Public Sub m()

    Dim sh As Worksheet

    Set sh = ThisWorkbook.Worksheets("Foglio1")

    With sh

        MsgBox .Range("A1").CurrentRegion.Address

    End With

    Set sh = Nothing

End Sub

In questo caso la mia tabella inizia da A1 del Foglio1. Modifica i riferimenti con i tuoi.

NOTA. Trasformare i dati in forma tabellare di un foglio in un oggetto Tabella di Excel, non è sempre una buona cosa, sopratutto se poi si utilizza il VBA. Opinione personale, eh!

La risposta è stata utile?

0 commenti Nessun commento

6 risposte aggiuntive

Ordina per: Più utili
  1. Anonimo
    2014-03-25T10:43:11+00:00

    Grazie a tutti! Mi avete dato tutti indicazioni preziose!

    Buona giornata

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2014-03-25T10:03:40+00:00

    In aggiunta alla soluzione di Mauro, segnalo la possibilità di utilizzare l'oggetto ListObject e le sue proprietà e metodi:

     

    Una precisazione.

    Avevo evitato di proposito ListObjects(string) perchè se si torna alla semplice forma tabellare dei dati, si deve riscrivere tutto il codice. CurrentRegion funziona in entrambi i casi.

    Buona giornata a tutti.

    La risposta è stata utile?

    0 commenti Nessun commento