Я хочу изменить его из одной базы данных в другую.Как изменить источник данных сводной таблицы в Excel?
Там, кажется, не будет каких-либо опций, чтобы сделать это в контекстном меню сводной таблицы
Я хочу изменить его из одной базы данных в другую.Как изменить источник данных сводной таблицы в Excel?
Там, кажется, не будет каких-либо опций, чтобы сделать это в контекстном меню сводной таблицы
правой кнопкой мыши на сводной таблицы в Excel выбрать мастера нажмите «Назад» нажмите «Получить данные ... ' в окне запроса Файл - Определение таблицы
, то вы можете создать новый или выбрать другое соединение
нет такой опции меню в Excel 2007 – Sam
Это не работает. На странице «выбрать внешний источник данных» мастера нет кнопки getdata. И если вы нажмете «получить данные» на следующей странице, нет очевидного способа редактирования соединения. –
Внесены изменения, см. Последний пункт. – Bravax
Это дополнение будет делать трюк для вас.
http://www.contextures.com/xlPivotPlayPlus01.html
Она показывает строку подключения, и позволяет ему изменять. Не забудьте также изменить SQL Query, если необходимо (с тем же инструментом).
правой кнопкой мыши на сводной таблице в первенствует выбрать мастера нажмите «Назад» нажмите «получить данные ...» в запрос окно Файл - таблица определения
, то вы можете создать новый или выберите различное подключение
работал отлично.
кнопка получения данных находится рядом с маленькой кнопкой с красной стрелкой рядом с полем ввода текста диапазона.
Просто вычислил его в любом месте таблицы, затем перейдите на вкладки в верхней части страницы и выберите «Параметры» - там вы увидите выбор «Изменить источник данных».
Похоже, это сильно зависит от вашей версии Excel. Я использую версию 2007 года и не предлагает никакой опции мастера при щелчке правой кнопкой мыши по таблице. Вам нужно щелкнуть по сводной таблице, чтобы дополнительные «Сводные инструменты» отображались справа от других вкладок в верхней части экрана. Перейдите на вкладку «Параметры», которая появляется здесь, после чего на середине ленты есть значок «Изменить источник данных».
для MS Excel 2000 офисной версии нажмите на сводной таблице вы найдете вкладку над Ribon, которая называется сводной таблицы инструментов - нажмите на что Вы можете изменить источник данных из вкладки Data
В случае Excel 2007 Вы можете изменить источник данных в меню «Параметры»/«Изменить источник данных»
Будьте осторожны с любым решением, которое не требует повторного создания Сводной таблицы с нуля. Возможно, что имена опций ваших сводных полей перестают синхронизироваться со значениями, которые они представляют в базе данных.
Например, в одной книге я занимаюсь демографическими данными, если вы попытаетесь выбрать вариант возрастной группы «20-24», Excel на самом деле представляет вам цифры в возрасте от 25 до 29 лет. Он не говорит вам, что это делает это, конечно.
См. Ниже программный (VBA) подход к проблеме, который решает эту проблему среди других. Я думаю, что он довольно полный/надежный, но я не использую PivotTables так, чтобы он оценил обратную связь.
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
Для того, чтобы изменить источник данных с ленты в Excel 2007 ...
Нажмите на сводной таблицы на рабочем листе. Перейдите к ленте, где написано «Инструменты таблицы поворота», вкладка «Параметры». Выберите кнопку «Изменить источник данных». Появится диалоговое окно.
Чтобы получить правильный диапазон и избежать сообщения об ошибке ... выберите содержимое существующего поля и удалите его, затем переключитесь на новый лист данных и выделите область данных (диалоговое окно останется на вершине все окна). После правильного выбора нового источника данных он заполнит пустое поле (которое вы удалили до этого) в диалоговом окне. Нажмите «ОК». Вернитесь в свою сводную таблицу, и она должна обновиться с новыми данными из нового источника.
Как это не по теме ?! Я разработчик BI, и похоже, что многие другие люди ищут тот же ответ. –