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

Làm cách nào để nhóm và hủy nhóm các hàng trong trang tính được bảo vệ?

Như chúng ta đã biết, trong một trang tính được bảo vệ, có nhiều hạn chế để chúng ta áp dụng một số thao tác. Chẳng hạn như, chúng tôi không thể chuyển đổi giữa dữ liệu được nhóm và chưa nhóm. Có cách nào để nhóm hoặc bỏ nhóm các hàng trong trang tính được bảo vệ không?

Nhóm và hủy nhóm các hàng trong một trang tính được bảo vệ bằng mã VBA

Tab Office Cho phép Chỉnh sửa và Duyệt theo Tab trong Office, và Giúp Công việc của Bạn Dễ dàng hơn Nhiều ...
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 mọi thứ: Thêm các công thức, biểu đồ và bất kỳ thứ gì khác được sử dụng nhiều nhất hoặc phức tạp vào mục yêu thích của bạn và nhanh chóng sử dụng lại chúng trong tương lai.
  • Hơn 20 tính năng văn bản: Trích xuất số từ chuỗi văn bản; Trích xuất hoặc loại bỏ một phần nội dung; Chuyển đổi số và tiền tệ sang từ tiếng Anh.
  • Công cụ hợp nhất: Nhiều Workbook và Sheets thành một; Hợp nhất nhiều ô / hàng / cột mà không làm mất dữ liệu; Hợp nhất các hàng và tổng trùng lặp.
  • Công cụ tách: Chia Dữ liệu thành Nhiều Trang tính Dựa trên Giá trị; Một sổ làm việc cho nhiều tệp Excel, PDF hoặc CSV; Một cột đến nhiều cột.
  • Dán bỏ qua Hàng ẩn / được lọc; Đếm và tổng theo Màu nền; Gửi hàng loạt email được cá nhân hóa cho nhiều người nhận.
  • Bộ lọc siêu: Tạo lược đồ lọc nâng cao và áp dụng cho bất kỳ trang tính nào; Sắp xếp theo tuần, ngày, tần suất và hơn thế nữa; Lọc bằng cách in đậm, công thức, chú thích ...
  • Hơn 300 tính năng mạnh mẽ; Hoạt động với Office 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.

mũi tên màu xanh bong bóng bên phải Nhóm và hủy nhóm các hàng trong một trang tính được bảo vệ bằng mã VBA

Có thể, không có cách nào khác tốt để giải quyết vấn đề này ngoài việc sử dụng mã VBA, vui lòng làm như sau:

1. Kích hoạt trang tính của bạn mà bạn muốn sử dụng, vui lòng đảm bảo rằng trang tính chưa được bảo vệ.

2. Sau đó nhấn giữ ALT + F11 chìa khóa và nó mở Cửa sổ Microsoft Visual Basic for Applications.

3. Nhấp chuột Chèn > Mô-đunvà dán mã sau vào Cửa sổ mô-đun.

Mã VBA: Nhóm và hủy nhóm các hàng trong một trang tính được bảo vệ

Sub EnableOutlining()
'Update 20140603
Dim xWs As Worksheet
Set xWs = Application.ActiveSheet
Dim xPws As String
xPws = Application.InputBox("Password:", xTitleId, "", Type:=2)
xWs.Protect Password:=xPws, Userinterfaceonly:=True
xWs.EnableOutlining = True
End Sub

4. Sau đó nhấn F5 để chạy mã này và một hộp nhắc sẽ bật ra để nhắc bạn nhập mật khẩu để bảo vệ trang tính hiện tại. Xem ảnh chụp màn hình:

doc-group-in-protected-sheet1

5. Sau đó nhấn vào OK, trang tính của bạn đã được bảo vệ, nhưng bạn có thể mở rộng và thu nhỏ các ký hiệu phác thảo trong trang tính được bảo vệ này, xem ảnh chụp màn hình:

doc-group-in-protected-sheet1

Chú thích: Nếu trang tính của bạn đã được bảo vệ, mã này sẽ không hoạt động.


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 (32)
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
Điều này có vẻ hoạt động tốt, nhưng khi tôi đóng và mở lại sổ làm việc, tôi gặp phải vấn đề tương tự - tôi không thể mở rộng các nhóm đã thu gọn của mì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ũng gặp vấn đề tương tự, có ai biết cách khắc phục không. Cảm ơn nhiều
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Bạn cần VBA cho việc này và người dùng cuối sẽ cần cho phép các macro để điều này hoạt động.

Nhấn Alt + F11 để kích hoạt Visual Basic Editor.

Bấm đúp vào ThisWorkbook, bên dưới Đối tượng Microsoft Excel trong trình khám phá dự án ở phía bên trái.

Sao chép mã sau vào mô-đun xuất hiện:



Private Sub Workbook_Open ()
Với Trang tính ("Tóm tắt Emp")
.EnableOutline = True
.Protect UserInterfaceOnly: = True
Kết thúc với
End Sub



Mã này sẽ được thực thi tự động mỗi khi mở sổ làm việc.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
[quote] Điều này có vẻ hiệu quả, nhưng khi tôi đóng và mở lại sổ làm việc, tôi gặp phải vấn đề tương tự - tôi không thể mở rộng các nhóm đã thu gọn của mình.Bởi mayich[/ quote] Vấn đề đó được giải quyết dưới dạng dưới đây Private Sub Workbook_Open () Dim wsh Như biến thể cho mỗi wsh trong bảng tính (Mảng ("Sheet1", "Sheet2")) wsh.EnableOutline = True wsh.Protect Password: = "260615" , DrawingObjects: = False, _ content: = True, _ Scenarios: = True, _ AllowFiltering: = True, _ AllowFormattingCells: = True, _ userinterfaceonly: = True Next wsh 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
Tôi gặp vấn đề tương tự, ngay sau khi tôi đóng và nhập lại trang tính, nó không hoạt động ... vui lòng cho biết từng bước về vị trí và cách sử dụng Vấn đề đó được giải quyết như dưới đây Private Sub Workbook_Open () Dim wsh As Biến thể cho mỗi wsh trong bảng tính (Arra y ("Sheet1", "Sheet2")) wsh.EnableOutli ning = True wsh.Protect Password: = "2606 15", DrawingObjects: = False, _ nội dung: = True, _ Các tình huống: = True, _ AllowFiltering: = True, _ AllowFormattingCells: = True, _ userinterfaceonly: = True Next wsh 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
Cảm ơn bạn rất nhiều, người anh em này hoạt động rất tốt. Cảm ơn rất nhiều
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Làm thế nào bạn có được điều này để làm việc? Tôi đã thử thêm nó vào VBA ở trên và tạo một mô-đun khác nhưng nó vẫn không hoạt động. Tôi có cần thay đổi bất kỳ mã nào không? như mật khẩu của tôi mà tôi đang sử dụng hay tôi có cần thay đổi tên trang tính không?
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 gặp vấn đề tương tự khi đóng sổ làm việc. Bất kỳ ý tưởng để sửa chữa nó?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Private Sub Workbook_Open () Dim wsh dưới dạng biến thể cho mỗi wsh trong trang tính (Mảng ("TD_ phase_3", "RS_Phase_2")) wsh.EnableOutline = True wsh.Protect Password: = "260615", DrawingObjects: = False, _ nội dung: = True, _ Scenarios: = True, _ AllowFiltering: = True, _ AllowFormattingCells: = True, _ userinterfaceonly: = True Next wsh 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
Vẫn không chắc điều này hoạt động như thế nào. Tôi có tạo mô-đun mới hay đính kèm vào mô-đun ở trên không?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Bạn có thể thực hiện từng bước một cho đến khi đặt nó ở đâu như họ đã làm trong hướng dẫn ban đầu. Cảm ơn bạn.
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 đã sử dụng macro đầu tiên thành công và sau đó gặp sự cố tương tự là đóng sổ làm việc và macro không còn hoạt động nữa. Tôi thấy giải pháp ở trên nhưng không thể làm cho nó hoạt động được. Bạn có thể hướng dẫn tôi qua được không? Tôi có kết hợp cả hai mã hay chỉ sử dụng mã sau? Nếu mật khẩu của tôi là "dog", tôi có thay thế một trong các giá trị trong mã không? Tôi chỉ áp dụng cho một trang tính ("Sheet1"); tôi có sử dụng cái đó ở bất cứ đâu không? Rất cám ơn trước!!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Vui lòng giúp tôi, tôi muốn thu gọn và mở rộng một số cuộn và cột trong bảng tính excel được bảo vệ. Làm cách nào để sử dụng macro để thực hiện việc này? Tôi đã thử những gì bạn hiển thị nhưng chúng không hoạt động trên bảng tính của tôi. Hãy giúp tôi.
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, vui lòng giúp tôi mở rộng và thu gọn các cuộn và cột trong bảng tính excel được bảo vệ. Tôi đã thử sử dụng những cái bạn hiển thị ở trên nhưng chúng không hoạt động.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Nó đã được hỏi / trả lời chưa? Bạn có thể chỉ định / thay đổi mật khẩu cá nhân ở đâu trong mã?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Làm cách nào để thay đổi mật khẩu thành giá trị khác?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Khi tôi sử dụng lệnh, tôi thấy thông báo lỗi như hình dưới đây:
Private Sub Workbook_Open ()
Dim wsh dưới dạng biến thể
Đối với mỗi wsh trong trang tính (Mảng ("TD_ phase_3", "RS_Phase_2"))
wsh.EnableOutline = Đúng
wsh.Protect Password: = "260615", DrawingObjects: = Sai, _
nội dung: = True, _
Các tình huống: = Đúng, _
AllowFiltering: = True, _
AllowFormattingCells: = True, _
userinterfaceonly: = True
Wsh tiếp theo
End Sub
Lỗi thời gian chạy '9':
Chỉ số nằm ngoài phạm vi
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
điều này hoạt động một chút, sau khi bạn đóng và mở lại, nó sẽ dừng lại :(
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Ngay cả đối với tôi, Có giải pháp nào khác không?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Sub Workbook_Open ()
'Cập nhật 20140603
Làm mờ xWs dưới dạng trang tính
Đặt xWs = Application.ActiveSheet
Làm mờ xPws dưới dạng chuỗi
xPws = "rfc" '' Application.InputBox ("Mật khẩu:", xTitleId, "", Loại: = 2)
xWs.Protect Password: = xPws, Userinterfaceonly: = True
xWs.EnableOutline = Đúng
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
Tôi đã nhận được mã này để làm việc. Nhưng khi tôi đóng và mở lại, tôi phải chuyển đến tab nhà phát triển, chọn nút macro, chọn chạy và nhập mật khẩu.

Có cách nào để xóa mật khẩu khỏi mã HOẶC mã chạy tự động sẽ tự động chạy marco này và nhập mật khẩu?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Để khắc phục sự cố này không hoạt động trong tệp của bạn sau khi bạn đã đóng và mở lại, bạn phải dán mã VBA trong "ThisWorkbook" trong Đối tượng Microsoft Excel thay vì một mô-đun mới. Điều này sau đó sẽ tự động chạy macro mỗi khi tệp được mở.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
bạn có hình ảnh trực quan cho Mã VBA đã thảo luận 6 ngày trước để đào tạo về ThisWorkbook trong Microsoft Objects thay vì một mô-đun mới không. Chức năng bị mất khi tôi quay lại sổ làm việc của mình
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Ai đó có thể cần cái này, tôi nghĩ tôi đã tìm ra cách để làm cho nó hoạt động.

Trước tiên, mã của bạn cần được viết trong "ThisWorkbook" trong Microsoft Excel Objects, như @peachyclean gợi ý.
Thứ hai, lấy mã mà @Sravanthi đã viết và dán vào vị trí được đề cập ở trên.

Sub Workbook_Open ()
'Cập nhật 20140603
Làm mờ xWs dưới dạng trang tính
Đặt xWs = Application.ActiveSheet
Làm mờ xPws dưới dạng chuỗi
xPws = "rfc" '' Application.InputBox ("Mật khẩu:", xTitleId, "", Loại: = 2)
xWs.Protect Password: = xPws, Userinterfaceonly: = True
xWs.EnableOutline = Đúng
End Sub

Vấn đề là bạn cần phải ở trên trang tính mà bạn muốn bảo vệ nhưng cho phép sử dụng tính năng nhóm, lưu sổ làm việc và đóng mà không cần bảo vệ. Bây giờ nếu bạn mở nó, macro sẽ tự động khởi động, nó sẽ làm cho trang tính được bảo vệ bằng mật khẩu "rfc". Bây giờ bạn có thể sử dụng phân nhóm, trang tính được bảo vệ.

Đối với giải pháp của tôi, tôi đã sửa đổi mật khẩu được áp dụng, vì vậy bạn có thể viết lại bất kỳ mật khẩu nào TẠI ĐÂY:
xPws = "WRITEANYPASSWORDHERE" '' Application.InputBox ("Mật khẩu:", xTitleId, "", Loại: = 2)

Hơn nữa, tôi không muốn trang tính được bảo vệ hoạt động khi mở tệp, do đó tôi đã sửa đổi phần này:
Đặt xWs = Application.ActiveSheet ->
Đặt xWs = Application.Worksheets ("WRITEANYSHEET'SNAMEHERE")

Bây giờ nó hoạt động giống như charm, trang tính có tên 'WRITEANYSHEET'SNAMEHERE' được bảo vệ nhưng có thể áp dụng nhóm. Về lâu dài, tôi nghĩ vấn đề sẽ là nếu tôi muốn sửa đổi tệp này và giữ nguyên giải pháp, tôi cần bỏ bảo vệ trang tính này để làm cho nó hoạt động trong lần mở tiếp theo. Tôi đoán bạn có thể viết một macro khác để tự động bỏ bảo vệ khi đóng :)


Tôi hy vọng nó sẽ 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
Hii .. điều này làm việc kỳ diệu. nơi duy nhất mà tôi gặp khó khăn bây giờ là tôi cần thực hiện việc này cho nhiều trang tính trong sổ làm việc. bạn có thể giúp gì với điều đó.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Chuỗi này có vẻ là chính xác những gì tôi cần, vì tôi không biết gì về VBA. Tôi đã có thể làm cho điều này hoạt động ban đầu nhưng như đã được chỉ ra, sau khi bạn đóng bảng tính và mở lại, nó sẽ không hoạt động nữa. Tôi đã cố gắng viết mã trong "ThisWorkbook" như đã lưu ý nhưng tôi không thể tìm ra cách thực hiện điều đó. Tôi có thể xem "ThisWorkbook" nhưng tôi không biết làm thế nào để viết trong đó. Theo mọi cách tôi thấy để tạo mô-đun, nó tạo mô-đun mới trong thư mục "Mô-đun" riêng biệt, bên ngoài thư mục "Đối tượng Microsoft Excel". Bất kỳ đề xuất nào về cách đặt mã này trong "ThisWorkbook"?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
ghê gớm
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Làm thế nào để Nhóm và Bỏ nhóm Các Hàng và Cột Trong Trang tính được Bảo vệ?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
f * ck, điều này đã đánh cắp excel của tôi sau đó và đã thay đổi mật khẩu một cách riêng tư
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Có cách nào để làm cho điều này hoạt động trên sổ làm việc dùng chung không? - Tôi cần thay đổi bản nhạc, Cảm ơn
Không có bình luận nào được đăng ở đây
Tải thêm
Để 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