Note: The other languages of the website are Google-translated. Back to English

Làm cách nào để giữ cho bộ cắt của Pivot Table di chuyển với tính năng cuộn trang tính trong Excel?

Trong khi làm việc với Pivot Table, bạn có thể chèn các bộ lọc để lọc dữ liệu của bảng một cách trực quan. Bài viết này nói về việc giữ cho bộ cắt của Pivot Table luôn hiển thị trong khi cuộn trang tính.

Giữ cho bộ cắt của Pivot Table luôn di chuyển bằng cách cuộn trang tính với mã VBA


Giữ cho bộ cắt của Pivot Table luôn di chuyển bằng cách cuộn trang tính với mã VBA

Tập lệnh VBA sau có thể giúp bạn giữ cho bộ cắt của Bảng Pivot di chuyển cùng với trang tính. Hãy làm như sau.

1. Nhấn nút Khác + F11 các phím đồng thời để mở Microsoft Visual Basic cho các ứng dụng cửa sổ.

2. bên trong Microsoft Visual Basic cho các ứng dụng cửa sổ, nhấp đúp Sổ làm việc này trong ngăn Dự án bên trái, sau đó sao chép và dán mã VBA bên dưới vào ThisWorkbook (Mã) cửa sổ. Xem ảnh chụp màn hình:

Mã VBA: Giữ bộ cắt của Bảng Pivot di chuyển với cuộn trang tính

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
    Dim ShF As Shape
    Dim ShM As Shape
    'specify a slicer
    Application.ScreenUpdating = False
    Set ShF = ActiveSheet.Shapes("Column1")
    Set ShM = ActiveSheet.Shapes("Column2")
    'change position of the slicer
    With Windows(1).VisibleRange.Cells(1, 1)
        ShF.Top = .Top
        ShF.Left = .Left + 300
        ShM.Top = .Top
        ShM.Left = .Left + 100
    End With
    Application.ScreenUpdating = True
End Sub

Chú ý:

1). Trong mã, Cột1 và Cột2 là tên của các bộ cắt.

2). Bạn có thể chỉ định vị trí của dao cắt trong khi cuộn trang tính trong mã.

3). Và bạn có thể thêm nhiều dao thái vào mã hoặc xóa các dao thái khỏi nó khi bạn cần.

3. Nhấn nút Khác + Q chìa khóa để đóng Microsoft Visual Basic cho các ứng dụng hộp thoại cửa sổ.

Từ bây giờ, các bộ cắt được chỉ định sẽ được di chuyển cùng với ô hiện hoạt trong khi cuộn trang tính. Xem ảnh chụp màn hình:


Các bài liên quan:


Các công cụ năng suất văn phòng tốt nhất

Kutools cho Excel giải quyết hầu hết các vấn đề của bạn và tăng 80% năng suất của bạn

  • Tái sử dụng: Chèn nhanh công thức phức tạp, biểu đồ và bất cứ thứ gì bạn đã sử dụng trước đây; Mã hóa ô với mật khẩu; Tạo danh sách gửi thư và gửi email ...
  • Thanh siêu công thức (dễ dàng chỉnh sửa nhiều dòng văn bản và công thức); Bố cục đọc (dễ dàng đọc và chỉnh sửa số lượng ô lớn); Dán vào Dải ô đã Lọchữu ích. Cảm ơn !
  • Hợp nhất các ô / hàng / cột mà không làm mất dữ liệu; Nội dung phân chia ô; Kết hợp các hàng / cột trùng lặp... Ngăn chặn các ô trùng lặp; So sánh các dãyhữu ích. Cảm ơn !
  • Chọn trùng lặp hoặc duy nhất Hàng; Chọn hàng trống (tất cả các ô đều trống); Tìm siêu và Tìm mờ trong Nhiều Sổ làm việc; Chọn ngẫu nhiên ...
  • Bản sao chính xác Nhiều ô mà không thay đổi tham chiếu công thức; Tự động tạo tài liệu tham khảo sang Nhiều Trang tính; Chèn Bullets, Hộp kiểm và hơn thế nữa ...
  • Trích xuất văn bản, Thêm Văn bản, Xóa theo Vị trí, Xóa không gian; Tạo và In Tổng số phân trang; Chuyển đổi giữa nội dung ô và nhận xéthữu ích. Cảm ơn !
  • Siêu lọc (lưu và áp dụng các lược đồ lọc cho các trang tính khác); Sắp xếp nâng cao theo tháng / tuần / ngày, tần suất và hơn thế nữa; Bộ lọc đặc biệt bằng cách in đậm, in nghiêng ...
  • Kết hợp Workbook và WorkSheets; Hợp nhất các bảng dựa trên các cột chính; Chia dữ liệu thành nhiều trang tính; Chuyển đổi hàng loạt xls, xlsx và PDFhữu ích. Cảm ơn !
  • Hơn 300 tính năng mạnh mẽ. Hỗ trợ Office / Excel 2007-2021 và 365. Hỗ trợ tất cả các ngôn ngữ. Dễ dàng triển khai trong doanh nghiệp hoặc tổ chức của bạn. Đầy đủ tính năng Dùng thử miễn phí 30 ngày. Bảo đảm hoàn lại tiền trong 60 ngày.
tab kte 201905

Tab Office mang lại giao diện Tab cho Office và giúp công việc của bạn trở nên dễ dàng hơn nhiều

  • Cho phép chỉnh sửa và đọc theo thẻ trong Word, Excel, PowerPoint, Publisher, Access, Visio và Project.
  • Mở và tạo nhiều tài liệu trong các tab mới của cùng một cửa sổ, thay vì trong các cửa sổ mới.
  • Tăng 50% năng suất của bạn và giảm hàng trăm cú nhấp chuột cho bạn mỗi ngày!
officetab dưới cùng
Nhận xét (10)
Chưa có xếp hạng. Hãy là người đầu tiên xếp hạng!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Chào,
Cảm ơn bạn vì VBA này.

Tôi hoàn toàn không biết về VBA và do đó câu hỏi của tôi.

Tôi đã sử dụng VBA này và tôi có một câu hỏi.
Làm cách nào để thay đổi VBA này để nó chỉ hoạt động cho một trang tính.

Hiện tại, tôi có 8 trang tính và mỗi khi tôi chuyển sang trang tính khác, nó bị lỗi và yêu cầu tôi kết thúc hoặc gỡ lỗi.
Tôi đã thực hiện đúng theo cách như hình trên.


Đây là VBA của tôi đây ..
Private Sub Workbook_SheetSelectionChange (ByVal Sh As Object, ByVal Target As Range)
Dim ShF như hình dạng
Dim ShM như hình dạng
'chỉ định một máy cắt
Application.ScreenUpdating = Sai
Đặt ShF = ActiveSheet.Shapes ("Máy khách 1")
Đặt ShM = ActiveSheet.Shapes ("Lời nhắc 1")
'thay đổi vị trí của máy cắt
Với Windows (1) .VosystemRange.Cells (1, 1)
ShF.Top = .Top + 2
ShF.Left = .Left + 475
ShM.Top = .Top + 180
ShM.Left = .Left + 475
Kết thúc với
Application.ScreenUpdating = True
End Sub


Xin vui lòng giúp đỡ.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Chào,
Cảm ơn bạn vì VBA này.

Tôi hoàn toàn không biết về VBA và do đó câu hỏi của tôi.

Tôi đã sử dụng VBA này và tôi có một câu hỏi.
Làm cách nào để thay đổi VBA này để nó chỉ hoạt động cho một trang tính.

Hiện tại, tôi có 8 trang tính và mỗi khi tôi chuyển sang trang tính khác, nó bị lỗi và yêu cầu tôi kết thúc hoặc gỡ lỗi.
Tôi đã thực hiện đúng theo cách như hình trên.


Đây là VBA của tôi đây ..
Private Sub Workbook_SheetSelectionChange (ByVal Sh As Object, ByVal Target As Range)
Dim ShF như hình dạng
Dim ShM như hình dạng
'chỉ định một máy cắt
Application.ScreenUpdating = Sai
Đặt ShF = ActiveSheet.Shapes ("Máy khách 1")
Đặt ShM = ActiveSheet.Shapes ("Lời nhắc 1")
'thay đổi vị trí của máy cắt
Với Windows (1) .VosystemRange.Cells (1, 1)
ShF.Top = .Top + 2
ShF.Left = .Left + 475
ShM.Top = .Top + 180
ShM.Left = .Left + 475
Kết thúc với
Application.ScreenUpdating = True
End Sub


Xin vui lòng giúp đỡ.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
John thân mến,
Chuyển đến trang tính mà bạn muốn mã VBA chỉ hoạt động, sau đó nhấp chuột phải vào tab Trang tính và chọn Mã Chế độ xem từ trình đơn ngữ cảnh.
Và sau đó sao chép và dán mã VBA bên dưới vào cửa sổ Mã đang mở. Xem ảnh chụp màn hình bên dưới:

Private Sub Worksheet_SelectionChange (ByVal Target As Range)
Dim ShF như hình dạng
Dim ShM như hình dạng
'chỉ định một máy cắt
Application.ScreenUpdating = Sai
Đặt ShF = ActiveSheet.Shapes ("Trái cây")
Đặt ShM = ActiveSheet.Shapes ("Giảm giá")
'thay đổi vị trí của máy cắt
Với Windows (1) .VosystemRange.Cells (1, 1)
ShF.Top = .Top
ShF.Left = .Left + 300
ShM.Top = .Top
ShM.Left = .Left + 100
Kết thúc với
Application.ScreenUpdating = True
End Sub
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Kính gửi Crystal,

Cảm ơn bạn rất nhiều cho mã.
Tôi đã làm đúng như bạn đã nói và nó hoạt động như một cái duyên.

Thực sự đánh giá cao nó.
Chúc mừng :)
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, tôi đã cập nhật mã của mình như bạn đã chỉ định. Bộ cắt không còn cuộn cùng với cửa sổ, tuy nhiên nếu tôi nhấp vào một ô mới thì bộ cắt sẽ di chuyển. Đây có phải là hành vi chính xác?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Hàng đầu tiên cho biết gì và làm cách nào để chúng tôi tùy chỉnh nó cho phù hợp với máy cắt của chúng tôi?
Tôi rất bối rối về điều đó về cơ bản trên mọi dòng.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Katie thân mến
Tôi không biết nếu tôi hoàn toàn hiểu câu hỏi của bạn.
Như tôi đã đề cập trong Ghi chú ở trên, bạn cần thay thế Cột1 và Cột2 bằng tên của máy cắt lát của bạn trong mã để giữ máy cắt của bạn cuộn với trang tính.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Tôi có 4 dao cắt đã được nhóm lại với nhau bằng cách chọn cả 4 và nhấp chuột phải để sử dụng lệnh nhóm.

Có thể gán VBA này cho một nhóm không? Làm cách nào để bạn gắn nhãn nhóm và viết VBA để nhận nó là một?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Hi Michael,
Xin lỗi không thể giúp với điều này. Cám ơn bạn đã góp ý.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Được rồi, vậy tiêu đề có nội dung "Cách giữ cho Slicer Of Pivot Table Di chuyển với Worksheet Di chuyển Trong Excel? ", Nhưng mã VBA này chỉ thực hiện nó cho ô được chọn hiện tại, làm cách nào chúng ta có thể làm điều đó cho cuộn của sổ làm việc chứ không chỉ ô đã chọn?
Không có bình luận nào được đăng ở đây
Để lại ý kiến ​​của bạn
Đăng với tư cách khách
×
Đánh giá bài viết này:
0   Nhân vật
Các vị trí được đề xuất

Kết nối với chúng tôi

Bản quyền © 2009 - www.extendoffice.com. | Đã đăng ký Bản quyền. cung cấp bởi ExtendOffice. | BẢN ĐỒ CHI NHÁNH
Microsoft và logo Office là các nhãn hiệu hoặc nhãn hiệu đã đăng ký của Microsoft Corporation tại Hoa Kỳ và / hoặc các quốc gia khác.
Được bảo vệ bởi Sectigo SSL