Condividi tramite

Connessioni (Excel)

Anonimo
2022-06-20T19:04:47+00:00

Buongiorno. Premetto che non sono un esperto ne di Excel ne di VBA. Cercherò di sintetizzare il mio bisogno: vorrei capire come fare a modificare le proprietà delle Connessioni, quelle che Excel crea automaticamente quando si creano ad es. tabelle pivot, e che sono visualizzabili mediante: ribbon Dati, >Query e connessioni, >Query e connessioni, tab Connessioni (nella finestra Query e connessioni che si apre), selezionare una connessione della lista, >tasto destro del mouse, Proprietà. In particolare, vorrei capire come sia possibile modificare le Proprietà "Posizioni" che si trovano nella tab "Usata in". Ovviamente le Posizioni esistenti per una certa connessione sono create da Excel man mano che si vanno a creare o eliminare gli "oggetti" relativi, tipo le pivot, ma mi chiedo se sia possibile modificarle senza operare su tali "oggetti" (ad esempio modificando l'intervallo o tabella a cui una Posizione si riferisce senza dover creare una nuova Pivot da capo). Ho provato a farlo mediante VBA, ma come dicevo non sono n esperto. Poi la letteratura in merito che si trova sia sul sito Microsoft che su internet in generale è davvero scarsa. Ad es.: non riesco a trovare una sintassi CORRETTA (su internet ce ne sono pochissime, e sono errate/obsolete) per usare il WorksheetDataConnection object (Excel). Ho provato a scrivere una macro, ma il debug mi da una svariata serie di errori quando cerco di correggere la "sintassi", in quanto appunto c'è poca letteratura in merito a "WorksheetDataConnection" (quindi mi perdo finanche quando devo cercare di impostare le Dim, Set, assegnare un comando, etc.). Sarebbe gradito se qualcuno potesse mandarmi una macro che riesca ad effettuare quanto sopra indicato (modifica della Proprietà "Posizioni" delle Connessioni, sia che siano legate a "Query" che a "Tabelle" del workbook), e comunque anche qualche riga di codice con esempi di uso dell'oggetto WorksheetDataConnection. Grazie molte. Sergio

Microsoft 365 e Office | Excel | Altro | 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

2 risposte

Ordina per: Più utili
  1. Anonimo
    2022-06-21T08:11:13+00:00

    Ciao Sergio,

    [...]

    Ovviamente le Posizioni esistenti per una certa connessione sono create da Excel man mano che si vanno a creare o eliminare gli "oggetti" relativi, tipo le pivot, ma mi chiedo se sia possibile modificarle senza operare su tali "oggetti" (ad esempio modificando l'intervallo o tabella a cui una Posizione si riferisce senza dover creare una nuova Pivot da capo). Ho provato a farlo mediante VBA, ma come dicevo non sono n esperto.

    [...]

    Poiché menzioni anche lo spostamento di oggetti tabella pivot, vorrei sottolineare che ciò può essere facilmente ottenuto sfruttando la proprietà PivotTable.Location. Per esempio:

    '========>>

    Option Explicit

    '-------->>

    Public Sub Move_PivotTable()

    Dim srcSH As Worksheet, destSH As Worksheet 
    
    Dim destRng As Range 
    
    Dim PT As PivotTable 
    
    Const sFoglio\_Origine As String = **"Foglio1"                    '<<=== Modifica** 
    
    Const sFoglio\_Destinazione As String = **"Foglio2"           '<<=== Modifica** 
    
    Const sTabella\_Pivot As String = **"Tabella pivot1"           '<<=== Modifica** 
    
    Const sNuova\_Prima\_Cella As String = **"D10"                  '<<=== Modifica** 
    
    With ThisWorkbook 
    
        Set srcSH = .Sheets(sFoglio\_Origine) 
    
        Set destSH = .Sheets(sFoglio\_Destinazione) 
    
    End With 
    
    Set PT = srcSH.PivotTables(sTabella\_Pivot) 
    
    Set destRng = destSH.Range(sNuova\_Prima\_Cella) 
    
    PT.Location = destRng.Address(external:=True) 
    

    End Sub

    '<<========

    ===

    Regards,

    Norman

    Immagine

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2022-06-20T20:06:51+00:00

    Ciao Sergio,

    Premetto che non sono un esperto ne di Excel ne di VBA. Cercherò di sintetizzare il mio bisogno: vorrei capire come fare a modificare le proprietà delle Connessioni, quelle che Excel crea automaticamente quando si creano ad es. tabelle pivot, e che sono visualizzabili mediante: ribbon Dati, >Query e connessioni, >Query e connessioni, tab Connessioni (nella finestra Query e connessioni che si apre), selezionare una connessione della lista, >tasto destro del mouse, Proprietà. In particolare, vorrei capire come sia possibile modificare le Proprietà "Posizioni" che si trovano nella tab "Usata in". Ovviamente le Posizioni esistenti per una certa connessione sono create da Excel man mano che si vanno a creare o eliminare gli "oggetti" relativi, tipo le pivot, ma mi chiedo se sia possibile modificarle senza operare su tali "oggetti" (ad esempio modificando l'intervallo o tabella a cui una Posizione si riferisce senza dover creare una nuova Pivot da capo). Ho provato a farlo mediante VBA, ma come dicevo non sono n esperto. Poi la letteratura in merito che si trova sia sul sito Microsoft che su internet in generale è davvero scarsa. Ad es.: non riesco a trovare una sintassi CORRETTA (su internet ce ne sono pochissime, e sono errate/obsolete) per usare il WorksheetDataConnection object (Excel). Ho provato a scrivere una macro, ma il debug mi da una svariata serie di errori quando cerco di correggere la "sintassi", in quanto appunto c'è poca letteratura in merito a "WorksheetDataConnection" (quindi mi perdo finanche quando devo cercare di impostare le Dim, Set, assegnare un comando, etc.). Sarebbe gradito se qualcuno potesse mandarmi una macro che riesca ad effettuare quanto sopra indicato (modifica della Proprietà "Posizioni" delle Connessioni, sia che siano legate a "Query" che a "Tabelle" del workbook), e comunque anche qualche riga di codice con esempi di uso dell'oggetto WorksheetDataConnection.

    Se ho capito bene, per spostare la posizione di output della query, diciamo dall'impostazione predefinita A1 a D5, sarebbe sufficiente inserire 3 nuove colonne e 4 nuove righe prima della tabella della query.

    Prima dell'inserimento delle nuove colonne e righe, controllando le proprietà della connessione, vedo:

    [![](https://learn-attachment.microsoft.com/api/attachments/40d216de-c091-41c2-96b7-5ded53186006?platform=QnA"https://learn-attachment.microsoft.com/api/attachments/d5484314-60f5-48a7-91a0-1fe369d5211a?platform=QnA" rel="ugc nofollow">Immagine

    La risposta è stata utile?

    0 commenti Nessun commento