Yeuvoyeucon
Thành viên hoạt động
- Tham gia
- 30/10/09
- Bài viết
- 143
- Được thích
- 23
Thử codeEm có File kèm theo, G1 đến G6 là các từ làm điều kiện, giờ em muốn tách và lấy các ký tự/chữ ở bên trái các từ điều kiện này như ví dụ em làm kèm theo thì Code nào thực hiện được ạ !
Sub tach()
Dim i As Long, lr As Long, arr, data, a As Long, j As Integer
With Sheets("tach_kytu")
lr = .Range("A" & Rows.Count).End(xlUp).Row
If lr < 4 Then Exit Sub
.Range("B4:B" & lr).ClearContents
arr = .Range("A4:B" & lr).Value
data = .Range("G1:G6").Value
For i = 1 To UBound(arr)
For j = 1 To UBound(data)
a = InStr(arr(i, 1), data(j, 1))
If a > 0 Then
arr(i, 2) = Left(arr(i, 1), a - 2)
Exit For
End If
Next j
Next i
.Range("A4:B" & lr).Value = arr
End With
End Sub
Code chạy đúng rồi ạ ! Cảm ơn anh nhiều ạ!Thử code
Mã:Sub tach() Dim i As Long, lr As Long, arr, data, a As Long, j As Integer With Sheets("tach_kytu") lr = .Range("A" & Rows.Count).End(xlUp).Row If lr < 4 Then Exit Sub .Range("B4:B" & lr).ClearContents arr = .Range("A4:B" & lr).Value data = .Range("G1:G6").Value For i = 1 To UBound(arr) For j = 1 To UBound(data) a = InStr(arr(i, 1), data(j, 1)) If a > 0 Then arr(i, 2) = Left(arr(i, 1), a - 2) Exit For End If Next j Next i .Range("A4:B" & lr).Value = arr End With End Sub
C4=IFERROR(LEFT(A4,SEARCH(LOOKUP(2,1/((SEARCH($G$1:$G$6,A4))),$G$1:$G$6),A4)-1),"") kéo xuống là OkEm có File kèm theo, G1 đến G6 là các từ làm điều kiện, giờ em muốn tách và lấy các ký tự/chữ ở bên trái các từ điều kiện này như ví dụ em làm kèm theo thì Code nào thực hiện được ạ !
Chủ bài muốn dùng code mà bạn.kéo xuống là Ok
Công thức thì chỉ có chuyện đúng hay sai thôi.Biết đâu thấy dùng công thức khỏe hơn nên khỏi dùng code nữa