2012-11-06 10 views
5

Tôi đang cố gắng tìm cách cập nhật dữ liệu nguồn bảng tổng hợp của mình vào cuối hàng khi dữ liệu thay đổi bằng VBA. mã hiện tại của tôi là dưới đây:VBA Cập nhật dữ liệu nguồn cho Pivot Table đến cuối hàng

Dim shBrandPivot As Worksheet 
Dim shCurrentWeek As Worksheet 
Dim shPriorWeek As Worksheet 
Dim shPivot As Worksheet 
Dim lr As Long 


Set shBrandPivot = ActiveWorkbook.Sheets("Brand Pivot") 
Set shCurrentWeek = ActiveWorkbook.Sheets("Current Week") 
Set shPriorWeek = ActiveWorkbook.Sheets("Prior Week") 
Set shPivot = ActiveWorkbook.Sheets("Pivot") 
lr = shCurrentWeek.Range("A" & Rows.Count).End(xlUp).Row 

With ActiveWorkbook.Sheets("Pivot").Activate 

ActiveSheet.PivotTableWizard SourceType:=xlDatabase, SourceData:="CurrentWeek!A3:X & lr" 

End With 

Các lỗi tôi nhận được là Run time error 1004: Không thể mở tập tin nguồn PivotTable: E: \ ẩn \ KXM2103 \ Data \ CurrentWeek

+0

là có thể sử dụng phạm vi được xác định động và sau đó chỉ cần làm mới bảng tổng hợp trong mã của bạn? dữ liệu của bạn được cập nhật như thế nào? – scott

+0

@scott hiện tại, dữ liệu của tôi đang được cập nhật theo cách thủ công bằng cách chuyển đến Tùy chọn -> Thay đổi dữ liệu nguồn. Tôi đang nghĩ đến việc thử cách tiếp cận mà bạn thảo luận nhưng tôi muốn xem liệu có cách nào để thực hiện nó thông qua VBA hay không. – kmiao91

Trả lời

5

Để làm điều đó độc quyền trong VBA bạn có thể thử điều này.

Dim shBrandPivot As Worksheet 
Dim shCurrentWeek As Worksheet 
Dim shPriorWeek As Worksheet 
Dim shPivot As Worksheet 
Dim lr As Long 
dim rng as range 

Set shBrandPivot = ActiveWorkbook.Sheets("Brand Pivot") 
Set shCurrentWeek = ActiveWorkbook.Sheets("Current Week") 
Set shPriorWeek = ActiveWorkbook.Sheets("Prior Week") 
Set shPivot = ActiveWorkbook.Sheets("Pivot") 
lr = shCurrentWeek.Range("A" & Rows.Count).End(xlUp).Row 
set rng = shcurrentweek.range("A3:X" & lr) 

With shPivot.PivotTables(1).PivotCache 
     .SourceData = rng.Address(True, True, xlR1C1, True) 
     .Refresh 
End With 
+0

Tôi nhận được lỗi biên dịch trên xlPivotTableVersion14 (biến không được xác định) – kmiao91

+0

chỉnh sửa nó để chỉ xóa phiên bản và gắn với mặc định – scott

+0

Tôi hiện đang nhận được lỗi "đối tượng bắt buộc" đối với mã – kmiao91