Hỏi về viết macro để thay đổi Data tự động của Pivottable

Liên hệ QC

anpha0987

Thành viên mới
Tham gia
2/3/10
Bài viết
5
Được thích
0
Chào anh chị em ! em thường xuyên phải thay đổi dư liệu cho bảng pivottable ( thay đổi cả về nội dung cũng như số dòng trong bảng Các cột vẫn giữ nguyên)
em muốn tự động thay đổi Data source
nhờ anh chị em viết Macro cho em với
file đính kèm
 

File đính kèm

Lần chỉnh sửa cuối:
Nếu các cột vẫn giữ nguyên thì cần gì VBA để thay data source, bạn chỉ cần tạo 1 Name động là được.
Nếu dùng VBA thì chỉ là code để refresh khi cần thiết mà thôi.
 
Upvote 0
Em vẫn chưa hiểu lắm bác ah! bác chỉ giúp hộ em cụ thể hơn đc ko ah!
em gà về cái này lắm

Nó thay đổi cả số dòng bác ah! em muốn viết trên VBA vì một số lệnh khác em viết trên VBA rùi
 
Chỉnh sửa lần cuối bởi điều hành viên:
Upvote 0
1. Dùng Name
Ở trên tôi có nói dùng name động:

Thí dụ dữ liệu nằm trên sheet "Data" và 7 cột bắt đầu từ cột A, không biết bao nhiêu dòng. Dòng 1 là tiêu đề, và cột A không có dữ liệu trống.

Tạo 1 name PivotSource như sau:

PivotSource =Offset(Data!$A$1,,,CountA(Data!$A$1:$A$65000),7)

Bây giờ vào dữ liệu nguồn của Pivot table, sửa thành =PivotSource
Cần phải refresh Pivot sau khi có thay đổi số dòng.

2. Dùng VBA:

PHP:
Sub RefreshDatasource()
    endr = Sheets("data").[A65000].End(xlUp).Row
    ActiveSheet.PivotTables("PivotTable1").ChangePivotCache _
    ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
        "data!A1:G" & endr)
End Sub

3. Ghi nhớ:

Chỉ refresh hoặc chạy code VBA khi cần thiết, đừng đưa vào sự kiện sheet_change của sheet Data.
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom