Hỏi cách lập bảng excel này??

Liên hệ QC

baongage

Thành viên mới
Tham gia
11/10/11
Bài viết
1
Được thích
0
đây là bảng tra A,B,D mình chỉ mới tìm hiểu thui.muốn làm được như vậy nhưng mò hoài không biết .tại vì hình như người lập ẩn đi công thức nên mình ko hiểu lập sao.mấy sư huynh chỉ mình dùm nha. -=.,,
 

File đính kèm

Vấn đề này đã có thảo luận trên diễn đàn, tôi lược dịch lại giúp bạn nào cần tham khảo:
ở đây tôi hướng dẫn trên excel 2003, bạn tự tìm hiểu trên excel 2007... nhé.

File excel của bạn đã bị khóa theo cơ chế: Tools > Protection > "Allow Users To Edit Rangers..." là khóa/mở khóa 1 vùng trong khi cả sheets hoặc các vùng khác vẫn đang khóa, người sử dụng phải có pass của vùng đó (không cần pass của sheet) mới nhập liệu hay chỉnh sửa được, nghĩa là nếu có pass của vùng đã khóa thì dù sheet đang khóa vẫn nhập liệu được (cách này dùng khi trên 1 sheet cần khóa nhiều vùng, mỗi vùng lại dành riêng cho mỗi ai đó 1 pass để sử dụng nhập liệu vào vùng qui định). Để dễ hiểu có thể hình dung nó tương tự như cơ chế khóa cửa ở khách sạn hay các khu chung cư: Khóa cổng chính, là khóa toàn bộ cả khu chung cư, sau đó mỗi phòng lại có khóa riêng mụch đích để dành quyền sử dụng riêng cho mỗi chủ nhân của căn phòng đó.

Các bước:
1. Mở bảng tính, chọn sheet cần thiết lập khóa;
2. Bấm "Ctrl+a" để chọn cả bảng;
3. Vào Format cells > Protection, bỏ chọn Locked > OK (vì mặc định khóa cả bảng nên phải bỏ khóa cả bảng để sau đó chọn lại vùng cần khóa)
4. Quét chọn vùng cần khóa, ví dụ B3:C6, vào Format cells > Protection, chọn lại Locked > OK (chọn lại vùng cần khóa = B3:C6) – vùng chọn ở bước này tạm gọi là vùng MẸ, trong vùng MẸ có thể sẽ có nhiều vùng CON ở bước 5 dưới đây:
5. Vào Tools > Protection > "Allow Users To Edit Rangers..." > chọn "New"
- Trong vùng Title: đặt tên cho vùng bạn sắp chọn (có thể bỏ qua bước này)
- Trong vùng Refers to cells: chọn vùng muốn khóa (mặc định là ô hay vùng đang được chọn, nếu muốn thay đổi vùng muốn khóa: kích chuột vào mũi tên đỏ bên cạnh, cửa sổ thu về thành 1 dòng, dùng chuột quét chọn vùng muốn khóa, xong lại nhấn vào mũi tên đỏ đó để hiện lên cửa sổ như cũ). Vùng này như là vùng CON, nó phải nằm trong phạm vi vùng MẸ ở bước 4 mới có tác dụng. Có thể phân ra nhiều vùng con trong 1 vùng mẹ.
- Trong Range password: Nhập pass xong OK. Cửa sổ Confirm Password xuất hiện...
- Nhập lại chính xác mật mã ở bước trên rồi nhấn OK. (mỗi vùng con có thể thiết lập mật mã riêng)
Trở về cửa sổ Allow Users To Edit Rangers.
Nếu muốn tạo thêm các vùng CON khác nữa thì kích nút “New…” để chọn tiếp.
- Kích nút Protec sheet – cửa sổ Protec sheet xuất hiện:
- Nhập pass hoặc để trống > kích OK là xong.
- Trở về bảng tính: thử nhập liệu vào vùng đã khóa.
Cửa sổ Unlock Range sẽ hiện ra, bạn phải nhập đúng pass mới nhập liệu được.
(xong)
-------------------------------------

Cách khóa trên sau khi mở khóa thì không phải khóa lại: Cứ nhập dữ liệu bình thường, đóng file, mở lại lần sau sẽ tự khóa. Trong khi nếu khóa sheet: Mở khóa không tự khóa lại.

Hoan nghênh các bạn góp ý bổ sung.
 
bạn dán đoạn code sau trong cua so code sheet 1:
Sub PasswordBreaker()
If ActiveSheet.ProtectContents = False Then
MsgBox "Sheet '" & ActiveSheet.Name & "' is unprotected!", vbInformation
Else
If MsgBox("Sheet '" & ActiveSheet.Name & "' is protected, do you want to unprotect it?", _
vbYesNo + vbQuestion, "Unprotect Active Sheet") = vbNo Then Exit Sub
Dim i As Integer, j As Integer, k As Integer
Dim l As Integer, m As Integer, n As Integer
Dim i1 As Integer, i2 As Integer, i3 As Integer
Dim i4 As Integer, i5 As Integer, i6 As Integer
On Error Resume Next
For i = 65 To 66: For j = 65 To 66: For k = 65 To 66
For l = 65 To 66: For m = 65 To 66: For i1 = 65 To 66
For i2 = 65 To 66: For i3 = 65 To 66: For i4 = 65 To 66
For i5 = 65 To 66: For i6 = 65 To 66: For n = 32 To 126
ActiveSheet.Unprotect Chr(i) & Chr(j) & Chr(k) & _
Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & _
Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
Next: Next: Next: Next: Next: Next
Next: Next: Next: Next: Next: Next
If ActiveSheet.ProtectContents = False Then MsgBox "Sheet '" & ActiveSheet.Name & "' is unprotected!", vbInformation
End If
End Sub
xong nhấn f5 excel tự xoá pass
vào lại sheet công thức sẻ hiện ra thôi
tui nhặt được đoạn code trên lâu quá rồi quên trang nào rồi
chúc bạn thành công
 
bạn dán đoạn code sau trong cua so code sheet 1:
Sub PasswordBreaker()
If ActiveSheet.ProtectContents = False Then
MsgBox "Sheet '" & ActiveSheet.Name & "' is unprotected!", vbInformation
Else
If MsgBox("Sheet '" & ActiveSheet.Name & "' is protected, do you want to unprotect it?", _
vbYesNo + vbQuestion, "Unprotect Active Sheet") = vbNo Then Exit Sub
Dim i As Integer, j As Integer, k As Integer
Dim l As Integer, m As Integer, n As Integer
Dim i1 As Integer, i2 As Integer, i3 As Integer
Dim i4 As Integer, i5 As Integer, i6 As Integer
On Error Resume Next
For i = 65 To 66: For j = 65 To 66: For k = 65 To 66
For l = 65 To 66: For m = 65 To 66: For i1 = 65 To 66
For i2 = 65 To 66: For i3 = 65 To 66: For i4 = 65 To 66
For i5 = 65 To 66: For i6 = 65 To 66: For n = 32 To 126
ActiveSheet.Unprotect Chr(i) & Chr(j) & Chr(k) & _
Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & _
Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
Next: Next: Next: Next: Next: Next
Next: Next: Next: Next: Next: Next
If ActiveSheet.ProtectContents = False Then MsgBox "Sheet '" & ActiveSheet.Name & "' is unprotected!", vbInformation
End If
End Sub
xong nhấn f5 excel tự xoá pass
vào lại sheet công thức sẻ hiện ra thôi
tui nhặt được đoạn code trên lâu quá rồi quên trang nào rồi
chúc bạn thành công

Anh cho em hỏi đoạn code này viết bằng ngôn ngữ gì mà lạ vậy, có phải là VBA hay VB phải không anh!?
 
sao tôi chạy đoạn code này mà vẫn không xóa password của Workbook?
 
Web KT

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

Back
Top Bottom