Domanda

Voglio cambiare da un database all'altro.

Non sembrano essere le opzioni per fare questo sul menu di scelta rapida tabella pivot

È stato utile?

Soluzione 3

tasto destro del mouse sulla tabella pivot in Excel scegliere wizard fare clic su 'indietro' fare clic su 'ottenere i dati ...' nella finestra di query File - Table Definition

allora si può creare un nuovo o scegliere un'altra connessione

Altri suggerimenti

Basta capito clic in qualsiasi parte del tavolo, poi andare alle schede nella parte superiore della pagina e selezionare Opzioni-da lì si vedrà una selezione Change Data Source.

Sembra che questo dipende in larga misura la versione di Excel. Sto usando la versione 2007 e non offre alcuna opzione di procedura guidata quando si fa clic sul tavolo. È necessario fare clic sul tabella pivot per fare apparire extra 'Strumenti tabella pivot' alla destra delle altre schede nella parte superiore dello schermo. Fare clic sulla scheda 'Opzioni' che appare qui poi c'è una grande icona al centro del nastro di nome 'origine dei dati di cambiamento'.

Al fine di modificare l'origine dati dal nastro in Excel 2007 ...

Clicca sul tabella pivot nel foglio di lavoro. Vai al nastro in cui si dice Strumenti tabella pivot, scheda Opzioni. Selezionare il pulsante Modifica origine dati. Apparirà una finestra di dialogo.

Per ottenere la gamma a destra ed evitare un messaggio di errore ... selezionare il contenuto del campo esistente ed eliminarlo, poi passare al nuovo foglio di lavoro di origine dati ed evidenziare l'area di dati (la finestra di dialogo rimarrà in cima a tutte finestre). Dopo aver selezionato la nuova sorgente di dati in modo corretto, si riempirà nel campo vuoto (che si è eliminato in precedenza) nella finestra di dialogo. Fare clic su OK. Passa di nuovo al vostro tabella pivot e avrebbe dovuto aggiornato con i nuovi dati dalla nuova sorgente.

  • Fare clic destro sulla tabella pivot, selezionare Tabella pivot guidata.
  • Fare clic sul pulsante 'Indietro' due volte.
  • Scegli origine dati esterni, fare clic su Avanti.
  • Fare clic su Dati
  • Nella prima scheda, Basi dati la prima opzione è 'nuova origine dati'

Questo componente aggiuntivo farà il trucco per voi.

http://www.contextures.com/xlPivotPlayPlus01.html

Indica la stringa di connessione, e permette di essere cambiato. Non dimenticare di modificare la query SQL, nonché, se necessario (con lo stesso strumento).

Essere un po 'diffidente di qualsiasi soluzione che non comporta ricreare la tabella pivot da zero. E 'possibile per i nomi delle opzioni vostri campi pivot per ottenere fuori sincrono con i valori che essi presentano al database.

Per esempio, in una cartella di lavoro ho a che fare con relative ai dati demografici, se si tenta di selezionare l'opzione fascia di età "20-24", Excel in realtà si presenta con i dati per le età 25-29. Non dirà che sta facendo questo, naturalmente.

Vedi sotto per un approccio programmatico (VBA) per il problema che risolve questo problema tra gli altri. Penso che sia abbastanza completo / robusta, ma io non uso le tabelle pivot tanto apprezzerebbe feedback.

Sub SwapSources()

strOldSource = "2010 Data"
strNewSource = "2009 Data"

Dim tmpArrOut

For Each wsh In ThisWorkbook.Worksheets
    For Each pvt In wsh.PivotTables
        tmpArrIn = pvt.SourceData
        ' row 1 of SourceData is the connection string.
        ' rows 2+ are the SQL code broken down into 255-byte chunks.
        ' we need to concatenate rows 2+, replace, and then split them up again

        strSource1 = tmpArrIn(LBound(tmpArrIn))
        strSource2 = ""
        For ii = LBound(tmpArrIn) + 1 To UBound(tmpArrIn)
            strSource2 = strSource2 & tmpArrIn(ii)
        Next ii

        strSource1 = Replace(strSource1, strOldSource, strNewSource)
        strSource2 = Replace(strSource2, strOldSource, strNewSource)

        ReDim tmpArrOut(1 To Int(Len(strSource2) / 255) + 2)
        tmpArrOut(LBound(tmpArrOut)) = strSource1
        For ii = LBound(tmpArrOut) + 1 To UBound(tmpArrOut)
            tmpArrOut(ii) = Mid(strSource2, 255 * (ii - 2) + 1, 255)
        Next ii

        ' if the replacement SQL is invalid, the PivotTable object will throw an error
        Err.Clear
        On Error Resume Next
            pvt.SourceData = tmpArrOut
        On Error GoTo 0
        If Err.Number <> 0 Then
            MsgBox "Problems changing SQL for table " & wsh.Name & "!" & pvt.Name
            pvt.SourceData = tmpArrIn ' revert
        ElseIf pvt.RefreshTable <> True Then
            MsgBox "Problems refreshing table " & wsh.Name & "!" & pvt.Name
        Else
            ' table is now refreshed
            ' need to ensure that the "display name" for each pivot option matches
            ' the actual value that will be fed to the database.  It is possible for
            ' these to get out of sync.
            For Each pvf In pvt.PivotFields
                'pvf.Name = pvf.SourceName
                If Not IsError(pvf.SourceName) Then ' a broken field may have no SourceName
                    mismatches = 0
                    For Each pvi In pvf.PivotItems
                        If pvi.Name <> pvi.SourceName Then
                            mismatches = mismatches + 1
                            pvi.Name = "_mismatch" & CStr(mismatches)
                        End If
                    Next pvi
                    If mismatches > 0 Then
                        For Each pvi In pvf.PivotItems
                            If pvi.Name <> pvi.SourceName Then
                                pvi.Name = pvi.SourceName
                            End If
                        Next
                    End If
                End If
            Next pvf
        End If
    Next pvt
Next wsh

End Sub
  

tasto destro del mouse sulla tabella pivot in   excel scegliere procedura guidata fare clic su 'Indietro' click   'Ottenere i dati ...' nella finestra di file di query   - Table Definition

     

allora si può creare un nuovo o di scegliere un   connessione diversa

ha funzionato perfettamente.

il pulsante Get Data è accanto al pulsante minuscolo con una freccia rossa accanto alla casella di input gamma di testo.

per MS Excel versione Office 2000, cliccare sulla tabella pivot troverete una scheda al di sopra del Ribon, chiamato strumento di tabella pivot - cliccare su quel È possibile cambiare sorgente di dati da scheda Dati

In caso di Excel 2007 è possibile modificare un'origine dati nel menu Opzioni / Change Data Source

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top