Help me ! Code khoá dòng tương ứng với cột qui định

Liên hệ QC

Sonychuong

Thành viên mới
Tham gia
15/5/20
Bài viết
10
Được thích
4
Hi các bậc thầy cô, ACE trong Diễn đàn.
Em có 1 code khoá dòng Excel theo điều kiện cho trước, code khi khoá thì khoá cả dòng Excel khi thoả điều kiện. Nhưng trong file chỉ muốn khoá dòng tương ứng số cột từ 1 đến 9 (hoặc theo số cột qui định) chứ không phải khoá luôn cả dòng đó . Em nhờ các bậc thầy cô, ACE giúp em với .

Code như sau :

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
Dim Cl As Range, iR As Long, ra As Range, i As Long
If Intersect(Target, Union(Me.Columns(9), [A1])) Is Nothing Then Exit Sub
With Application
.ScreenUpdating = False
.EnableEvents = False
Set Cl = Me.Range(Me.Range("I8"), Me.Range("I100").End(xlUp))
iR = Cl.Rows.Count
Set ra = Me.Range("A8").Resize(iR, 9)
Me.Unprotect "123"
Me.Cells.Locked = False
If Me.Range("A1") <> 1 Then
For i = 1 To iR
If UCase(Cl(i)) = "R" Then
Cl.Rows(i).EntireRow.Locked = True '( => Em nghĩ vấn đề nó nằm chỗ này nhưng không biết cách xử lý)
End If
Next
Me.Protect "123", DrawingObjects:=True, AllowInsertingRows:=True, AllowDeletingRows:=True, AllowFiltering:=True
End If
.EnableEvents = True
.ScreenUpdating = True
End With
End Sub


Xin cảm ơn ạ !
 

File đính kèm

  • Khoa dong Excel (Theo dieu kien).xlsm
    20.5 KB · Đọc: 8
Web KT
Back
Top Bottom