lp0042019.dkdn
Thành viên mới
- Tham gia
- 21/4/20
- Bài viết
- 16
- Được thích
- 2
Chào các anh/chị,
Nhờ các anh chị viết giúp em VBA để khóa những cell tương ứng với thời gian ngày đến và ngày đi nhưng không dùng Validation,cảm ơn các anh chị.
Sub KhoaCell()
Dim i As Long, FD As Long, LD As Long
For i = 8 To Range("B8").End(xlDown).Row
FD = Day(Range("B" & i)): LD = Day(Range("C" & i))
ActiveSheet.Range(Cells(i, FD + 4), Cells(i, LD + 4)).Locked = False
Next
ActiveSheet.Protect Password:="123", DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub
Trường hợp ngày đến và ngày đi thay đổi , bạn giúp mình code xóa những dữ liệu đã có nằm ngoài vùng cho nhập liệu mới (chỉ thực hiện dòng nào thay đổi so với lúc ban đầu). Cảm ơn bạn.PHP:Sub KhoaCell() Dim i As Long, FD As Long, LD As Long For i = 8 To Range("B8").End(xlDown).Row FD = Day(Range("B" & i)): LD = Day(Range("C" & i)) ActiveSheet.Range(Cells(i, FD + 4), Cells(i, LD + 4)).Locked = False Next ActiveSheet.Protect Password:="123", DrawingObjects:=True, Contents:=True, Scenarios:=True End Sub
Trường hợp ngày đến và ngày đi thay đổi , bạn giúp mình code xóa những dữ liệu đã có nằm ngoài vùng cho nhập liệu mới (chỉ thực hiện dòng nào thay đổi so với lúc ban đầu). Cảm ơn bạn.
Sub KhoaCell_ThayDoi()
Dim i As Long, FD As Long, LD As Long
ActiveSheet.Unprotect Password:="123"
For i = 8 To Range("B8").End(xlDown).Row
FD = Day(Range("B" & i)): LD = Day(Range("C" & i))
ActiveSheet.Range(Cells(i, FD + 4), Cells(i, LD + 4)).Locked = False
With ActiveSheet.Range(Cells(i, 5), Cells(i, FD + 3))
.Locked = True
.ClearContents
End With
With ActiveSheet.Range(Cells(i, LD + 5), Cells(i, 35))
.Locked = True
.ClearContents
End With
Next
ActiveSheet.Protect Password:="123", DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub