2011-11-26 4 views
2

각 워크 시트에서 피벗 이름을 선택하는 코드가 있습니다. 각 피벗 테이블에 대한 데이터 연결 이름을 얻는 방법을 알고 싶습니다.excel vba에서 연결 이름 가져 오기

Dim ws As Worksheet 
Dim pvt As PivotTable 
Dim pvf As PivotField 
Dim pvi As PivotItem 
Dim x As String 
Dim conn As WorkbookConnection 

Application.ScreenUpdating = False 

Worksheets("Log").Activate 
Columns("H:L").Select 
i = 1 
For Each ws In ActiveWorkbook.Worksheets 
    If ws.PivotTables.Count > 0 Then 
    For Each pvt In ws.PivotTables 
     ActiveCell.Offset(i, 0) = ws.Name 
     ActiveCell.Offset(i, 1) = pvt.Name 
     'ActiveCell.Offset(i, 2) = conn.Name 
     i = i + 1 
    Next pvt 
    End If 
Next ws 
+0

"데이터 연결 이름"이 의미하는 것을 지정할 수 있으며 데이터의 처음 몇 행을 붙여 넣을 수 있습니까? – abcde123483

답변

1

현재 피벗 테이블의 데이터 연결 이름을 얻으려면, 이것을 사용 : 당신은 확인해야합니다 있도록 피벗 테이블 통합 문서 연결을 사용하지 않는 경우이 오류가 발생합니다 것을

pvt.PivotCache.WorkbookConnection 

주 첫째 :

If pvt.PivotCache.SourceType = xlExternal Then 
    ActiveCell.Offset(i, 2) = pvt.PivotCache.WorkbookConnection 
End If 
+0

이것이 작동하는 경우 왼쪽에있는 화살표를 선택하여 대답을 수락하십시오 (모르는 경우를 대비하여 새로운 것으로 나타남). :) – aevanko

+0

안녕 Issun, 정말 고마워. 그것은 작동합니다. –