Pergunta

Eu quero mudá-lo de um banco para outro.

Há não parecem ser quaisquer opções para fazer isso no menu de contexto de tabela dinâmica

Foi útil?

Solução 3

clique direito sobre a tabela dinâmica no Excel escolher assistente clique 'voltar' clique 'obter dados ...' na janela de consulta Arquivo - Definição Tabela

então você pode criar um novo ou escolher uma conexão diferente

Outras dicas

Apenas percebi isso clique em qualquer lugar na tabela, em seguida, ir para as guias na parte superior da página e selecione Opções-de lá você verá uma seleção Alterar fonte de dados.

Parece que este depende fortemente da sua versão do Excel. Eu estou usando a versão 2007 e não oferece nenhuma opção de assistente quando você clique direito sobre a mesa. Você precisa clicar na tabela dinâmica para fazer extra 'Ferramentas de Tabela Dinâmica' aparecem à direita dos outros guias na parte superior da tela. Clique na guia 'opções' que aparece aqui, então há uma grande ícone no meio da fita chamada 'fonte de dados de alteração'.

A fim de mudar a fonte de dados a partir da fita no Excel 2007 ...

Clique na sua tabela dinâmica na planilha. Ir para a fita onde diz Tools Pivot Table, Guia Opções. Selecione o botão Alterar Fonte de Dados. Uma caixa de diálogo aparecerá.

Para obter a faixa direita e evitar uma mensagem de erro ... selecionar o conteúdo do campo existente e excluí-lo, em seguida, mudar para a nova planilha fonte de dados e destacar a área de dados (caixa de diálogo vai ficar em cima de tudo janelas). Depois de selecionar a nova fonte de dados corretamente, ele irá preencher o campo em branco (que você excluído antes) na caixa de diálogo. Clique OK. Volte para sua tabela dinâmica e deveria ter atualizado com os novos dados da nova fonte.

  • clique direito do mouse sobre a tabela dinâmica, escolha Assistente de tabela dinâmica.
  • Clique no botão 'voltar' duas vezes.
  • Escolha da origem de dados externos, clique em Próximo.
  • Clique em Obter dados
  • Na primeira guia, bancos de dados a primeira opção é 'nova fonte de dados'

Este add-on irá fazer o truque para você.

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

Mostra a string de conexão e permite que ele seja alterado. Não se esqueça de alterar a consulta SQL, bem como, se necessário (com a mesma ferramenta).

Seja um pouco cauteloso em qualquer solução que não envolve re-criar a tabela dinâmica a partir do zero. É possível que nomes de opção os seus campos de articulação para sair da sincronia com os valores que eles apresentam ao banco de dados.

Por exemplo, em uma pasta de trabalho que eu estou lidando com envolvendo dados demográficos, se você tentar selecionar a opção "20-24" faixa etária, Excel, na verdade apresenta-o com os números para as idades 25-29. Ele não lhe diz que está fazendo isso, é claro.

Veja abaixo uma programático (VBA) abordagem para o problema que resolve esta questão entre outros. Eu acho que é bastante completo / robusta, mas eu não usar tabelas dinâmicas muito assim gostaria de receber 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

clique direito sobre a tabela dinâmica em excel escolher clique em Assistente de clique 'voltar' 'Obter dados ...' na janela de arquivo de consulta - Definição Tabela

então você pode criar um novo ou escolher um conexão diferente

funcionou perfeitamente.

no botão Obter dados fica ao lado do pequeno botão com uma seta vermelha ao lado da caixa de entrada de texto do intervalo.

para MS Excel versão do Office 2000, clique em tabela dinâmica você vai encontrar um guia acima do ribon, chamada ferramenta de tabela dinâmica - clique sobre esse Você pode alterar a fonte de dados de guia Dados

Em caso de Excel 2007 Você pode mudar de fonte de dados no menu Opções / Alterar Fonte de Dados

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top