quochuy86
Thành viên chính thức
- Tham gia
- 3/5/07
- Bài viết
- 56
- Được thích
- 9
PHP:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
On Error Resume Next
If Target.Count > 1 Then Exit Sub
Sheet2.Cells(1, 1).Value = Target.Count
Application.EnableEvents = False
If Not Intersect(Range("B20:C30"), Target) Is Nothing Then
With Target
Select Case .Column
Case 2
If .Value = "" Then
.Offset(0, 1).Value = ""
Else
.Offset(, 1).Value = Sheet1.Range("ENG").Find(Target).Offset(, 1).Value
End If
Case 3
If .Value = "" Then
.Offset(, -1).Value = ""
Else
.Offset(, -1).Value = Sheet1.Range("VIE").Find(Target).Offset(, -1).Value
End If
End Select
End With
End If
exitHandler:
Application.EnableEvents = True
Exit Sub
errHandler:
MsgBox Err.ENGber & ": " & Err.Description
GoTo exitHandler
End Sub
Nhờ mọi người giải thích dùm em code trên.
Em có 1 số thắc mắc như sau:
- "Intersect(Range("B20:C30"), Target) Is Nothing" có ý nghĩa jì ạh ( From Sa_DQ: Bạn không nên viết như vầy!)
- "target" ở đây là gì em thử thì thấy "target.count = 1"
- "case column" có ý nghĩa jì ạ
- ở đây sao lại dùng " .Offset(0, 1).Value" ạ
- còn ".Offset(, 1).Value = Sheet1.Range("ENG").Find(Target).Offset(, 1).Value" nữa
Do mới tìm hiểu về VBA nên em thắc mắc nhiều quá, mong mọi người thông cảm.
Thân.
em gửi kèm theo file
From Sa_DQ: Để hiểu được 1 ngôn ngữ nào đó thì tiếng mẹ đẽ phải trơn tru là một điều kiện tiên quyết đó bạn!
File đính kèm
Chỉnh sửa lần cuối bởi điều hành viên: