CÁCH KHÓA DỮ LIỆU KHI ĐÃ NHẬP DỮ LIỆU 1 LẦN (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

Locvo236

Thành viên mới
Tham gia
11/2/20
Bài viết
16
Được thích
0
Chào mọi người! Hiện tại mình có vấn đề là mình muốn khóa ô trong excel khi đã nhập dữ liệu 1 lần. tránh tình trạng đã nhập dữ liệu rồi lại thay đổi dữ liệu thêm nữa. Mong mọi người chỉ giáo
 
Bạn muốn nhờ người khác giúp gì ít nhất phải nói rõ bạn muốn khóa như thế nào. Tạo một nút bấm hay thay đổi dữ liệu ở Cell nào đó thì dữ liệu khóa. Cả 1 cái file ví dụ cũng không thấy ?
 
Bạn muốn nhờ người khác giúp gì ít nhất phải nói rõ bạn muốn khóa như thế nào. Tạo một nút bấm hay thay đổi dữ liệu ở Cell nào đó thì dữ liệu khóa. Cả 1 cái file ví dụ cũng không thấy ?
sorry bạn, mình mới tham gia Group nên còn nhiều sai sót. mong bạn thông cảm, để mình bổ sung cho rõ thêm để mọi người dễ hướng dẫn hơn
Bài đã được tự động gộp:

Mình muốn khi nhân viên của mình nhập "Ngày hẹn lần 1" vào thì không cho chỉnh sửa hoặc xóa dữ liệu ở Ô "Ngày hẹn lần 1"và hiện thông báo "yêu cầu nhập ngày hẹn tiếp theo" ,mà bắt buộc phải nhập ô " ngày hẹn lần 2" tiếp theo, Nếu có muốn thay đổi hoặc chỉnh sửa phải có yêu cầu nhập Password
 

File đính kèm

Lần chỉnh sửa cuối:
Bạn thử nhé
Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 2 Or Target.Column = 3 Or Target.Column = 4 Then 'NEU COT THAY DOI LA B,C,D
    If Target.Value <> "" Then      'NEU CELL DO KHAC RONG
        ActiveSheet.Unprotect "GPE"         'MO KHOA VOI PASS LA "GPE"
        Target.Locked = True                'KHOA CELL DO LAI
        ActiveSheet.Protect "GPE"           'PROTECT SHEET LAI VOI PASS LA "GPE"
    End If
End If
End Sub
 

File đính kèm

Bạn thử nhé
Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 2 Or Target.Column = 3 Or Target.Column = 4 Then 'NEU COT THAY DOI LA B,C,D
    If Target.Value <> "" Then      'NEU CELL DO KHAC RONG
        ActiveSheet.Unprotect "GPE"         'MO KHOA VOI PASS LA "GPE"
        Target.Locked = True                'KHOA CELL DO LAI
        ActiveSheet.Protect "GPE"           'PROTECT SHEET LAI VOI PASS LA "GPE"
    End If
End If
End Sub
Mình cảm ơn bạn nha, đúng như ý mình luôn, à tiện bạn cho mình hỏi, bạn có tài liệu học excel kèm VBA cho mình xin với, mình muốn co thêm kiến thức về Excel như bạn đó. Thanks bạn
 
@hpkhuong Quảng cáo gì bạn ?, bạn ấy hỏi thì mình trả lời?. Với lại, mình có thu đồng xu, lợi nhuận nào từ việc này mà bạn bảo mình quảng cáo ?.
 
...Có thêm diễn đàn , thì sự cạnh tranh càng tốt, lợi cho người sử dụng
Cạnh tranh gì bạn?
Bạn muốn nói địa vị độc tôn của GPE sẽ lung lay đối với những người đói bài?

Hổng dám đâu. Mấy quán khác cơm hẩm cà mốc không hè. Cho đến nay GPE vẫn là quán cơm nóng canh sốt. Tuy rằng cái vụ ruồi nhặng thì có vẻ đang trên đà tăng.
 
Cạnh tranh gì bạn?
Bạn muốn nói địa vị độc tôn của GPE sẽ lung lay đối với những người đói bài?

Hổng dám đâu. Mấy quán khác cơm hẩm cà mốc không hè. Cho đến nay GPE vẫn là quán cơm nóng canh sốt. Tuy rằng cái vụ ruồi nhặng thì có vẻ đang trên đà tăng.
Vì tôi thấy hiện nay có 1 số diễn đàn ở Việt nam chặn băng thông (làm chậm) truy cập với các user account (tài khoản người dùng / nick) họ không thích, và âm thầm làm việc đó, thật là lợi hại. Đó là vì tính độc quyền, tính quan của họ.

Còn diễn đàn nào cũng phát triển từ số nhỏ lên thôi, có thịnh ắt có suy.
 
Lần chỉnh sửa cuối:
Bạn thử nhé
Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 2 Or Target.Column = 3 Or Target.Column = 4 Then 'NEU COT THAY DOI LA B,C,D
    If Target.Value <> "" Then      'NEU CELL DO KHAC RONG
        ActiveSheet.Unprotect "GPE"         'MO KHOA VOI PASS LA "GPE"
        Target.Locked = True                'KHOA CELL DO LAI
        ActiveSheet.Protect "GPE"           'PROTECT SHEET LAI VOI PASS LA "GPE"
    End If
End If
End Sub
Bạn cho mình hỏi cái code này là dùng để làm gì ạ
1581472504271.png
 
@Locvo236 Bạn thay
Mã:
Target.Column
Ví dụ thành từ vùng A1:B2
Mã:
Target.Range("A1:B2")
Bài đã được tự động gộp:

Cạnh tranh gì bạn?
Bạn muốn nói địa vị độc tôn của GPE sẽ lung lay đối với những người đói bài?

Hổng dám đâu. Mấy quán khác cơm hẩm cà mốc không hè. Cho đến nay GPE vẫn là quán cơm nóng canh sốt. Tuy rằng cái vụ ruồi nhặng thì có vẻ đang trên đà tăng.
Mỗi diễn đàn mỗi cách hoạt động khác nhau. GPE "hiện tại" hoạt động dựa trên những bài hỏi đáp giữa những thành viên có nhu cầu và quảng cáo. TuhocVBA.net hoạt động dựa trên các bài viết dịch thuật. Một bên hỏi đáp, một bên dịch thuật. Hai trường phái rất khác nhau nhưng có điểm chung là VBA và giúp ích cho người học. Chúng ta không thể so sánh được.
 
Lần chỉnh sửa cuối:
Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Range("B1:B10") Or Target.Range("C1:C10") Or Target.Range("D1:D10") Then

If Target.Value <> "" Then

ActiveSheet.Unprotect "123"

Target.Locked = True

ActiveSheet.Protect "123"

End If

End If

End Sub

VẪN BỊ LỖI BẠN Ạ GIÚP MÌNH VỚI NHA
 
Mỗi diễn đàn mỗi cách hoạt động khác nhau. GPE "hiện tại" hoạt động dựa trên những bài hỏi đáp giữa những thành viên có nhu cầu và quảng cáo. TuhocVBA.net hoạt động dựa trên các bài viết dịch thuật. Một bên hỏi đáp, một bên dịch thuật. Hai trường phái rất khác nhau nhưng có điểm chung là VBA và giúp ích cho người học. Chúng ta không thể so sánh được.
Bạn có quen thành viên @khongtu19bk ở đường dẫn trên không vậy?
 
Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Range("B1:B10") Or Target.Range("C1:C10") Or Target.Range("D1:D10") Then

If Target.Value <> "" Then

ActiveSheet.Unprotect "123"

Target.Locked = True

ActiveSheet.Protect "123"

End If

End If

End Sub

VẪN BỊ LỖI BẠN Ạ GIÚP MÌNH VỚI NHA
Bạn thử nhé.
Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
     If Not Intersect(Target, Range("B1:D10")) Is Nothing Then
        If Len(Target.Value) > 0 Then
            ActiveSheet.Unprotect 123
                 Target.Locked = True
            ActiveSheet.Protect 123
        End If
     End If
End Sub
 
Bạn thử nhé.
Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
     If Not Intersect(Target, Range("B1:D10")) Is Nothing Then
        If Len(Target.Value) > 0 Then
            ActiveSheet.Unprotect 123
                 Target.Locked = True
            ActiveSheet.Protect 123
        End If
     End If
End Sub
BỊ LỖI LUÔN R BẠN ƠI. HUHU
 
Lỗi là hợp lý rồi.
Vì bảng tính, mặc định khi chưa làm gì, các cells đều có thuộc tính Locked. Vậy nên, ngay sau sự kiện đầu tiên bảng tính khóa lại => không làm gì được nữa.
Chu choa. Bạn học Vê Bê A ở diễn đàn nào mà giỏi vậy? Cho cái linh bà con theo với :p:p:p
 
Hình như cái diễn đàn kia là do một cựu thành viên GPE lập ra.
Ai thế bác? Bác nói thế nên tôi tò mò sang xem thế nào. Một lúc thì thấy bên ấy "chửi GPE quá.
Vd. như chủ đề "hi-hi-ai-la-thay-cua-em-hay-gio-tay" :D

Trích đoạn cuốituhoc.JPG
 
Ai thế bác? Bác nói thế nên tôi tò mò sang xem thế nào. Một lúc thì thấy bên ấy "chửi GPE quá.
...
Thế giới ảo mà. Mình chỉ có thể nói sơ sơ thôi chứ làm sao chỉ tên vạch mặt.
Nếu có dùng địa chỉ IP để so sánh thì người A vẫn có thể nói rằng mình ở chung nhà trọ với người B.

Trên nguyên tắc thì nếu hai diễn đàn cùng loại thì ở diễn đàn A chửi diễn đàn B là hành động cạnh tranh không lành mạnh. Tôi chỉ có thể nói thế thôi.
 
Sao Group toàn chửi nhau không vậy mọi người ? chủ yếu để trao đổi học hỏi thôi mà, mình mới vào mà thấy nhiều chuyện quá
 
Sao Group toàn chửi nhau không vậy mọi người ? chủ yếu để trao đổi học hỏi thôi mà, mình mới vào mà thấy nhiều chuyện quá
"Group" nào? ai chửi ai?
Người cần "học hỏi" tự động biết lướt qua những chỗ "nhiều chuyện".
Mới vào mà không chịu chú tâm vào chỗ đáng học hỏi thì còn khuya mới khá được.
 
"Group" nào? ai chửi ai?
Người cần "học hỏi" tự động biết lướt qua những chỗ "nhiều chuyện".
Mới vào mà không chịu chú tâm vào chỗ đáng học hỏi thì còn khuya mới khá được.
Tôi chưa thấy bạn ở trong group này hơi phí thời gian đó, thay vì giải đáp thắc mắc của các bạn khác để hỗ trợ nhau, bạn toàn đi Comment những điều vô ích trên đây, để thời gian làm những chuyển có ích nha bạn
 
Tôi chưa thấy bạn ở trong group này hơi phí thời gian đó, thay vì giải đáp thắc mắc của các bạn khác để hỗ trợ nhau, bạn toàn đi Comment những điều vô ích trên đây, để thời gian làm những chuyển có ích nha bạn
Vậy sao? Ý thức nhận định cỡ vậy mà cũng đòi học Excel.
Đã nói muốn học thì lo chú tâm vào chỗ cần học đi. Nếu không biết nổi chỗ để cần học thì những nhận định về "hỗ trợ nhau" có giá trị gì? Biết thế nào là bài có thể học được? Biết thế nào là "có ích"?
Sau khi học được cỡ 100 bài ở đây rồi hẵn quay lại phê phán.
Nên nhớ rằng từ "có ích" nó phải dựa vào ý kiến khách quan chứ đâu thể chủ quan. Trong cái đầu óc chủ quan của thằng du đãng thì đàn em của hắn là có ích.

Và bỏ cái tật Tây bồi với tôi đi.
 
Lần chỉnh sửa cuối:
Vậy sao? Ý thức nhận định cỡ vậy mà cũng đòi học Excel.
Đã nói muốn học thì lo chú tâm vào chỗ cần học đi. Nếu không biết nổi chỗ để cần học thì những nhận định về "hỗ trợ nhau" có giá trị gì? Biết thế nào là bài có thể học được? Biết thế nào là "có ích"?
Sau khi học được cỡ 100 bài ở đây rồi hẵn quay lại phê phán.
Nên nhớ rằng từ "có ích" nó phải dựa vào ý kiến khách quan chứ đâu thể chủ quan. Trong cái đầu óc chủ quan của thằng du đãng thì đàn em của hắn là có ích.

Và bỏ cái tật Tây bồi với tôi đi.
Ý thức hay không tự mà nhìn nhận lấy nhé!. Chưa biết bạn giỏi Excel ntn, nhưng qua những gì bạn nói thì bạn rất giỏi bàn phím, và nếu có lịch sự và lòng tự trọng thì đừng tranh luận việc cá nhân vào trong bài đăng của người khác nhé. Chào bạn
 
Người biết lịch sự không dùng tiếng Tây bồi để giao tiếp.
Người biết tự trọng đã trọng tiếng mẹ đẻ hơn tiếng Tây.
Chỉ có những người yêu tiếng mẹ đẻ mới đủ tư cách dẫn dắt tôi về phép lịch sự và lòng tự trọng.
 

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

Back
Top Bottom