Dạ, cảm ơn thầy! Thầy có thể chỉ giúp cách thứ hai là nếu kí tự cần tách lúc thì là từ kí tự thứ 15, lúc thì là từ kí tự thứ 14, lúc thì là kí tự thứ 20,... thì dùng hàm splip như thế nào để tách được cho mọi trường hợp ạ? Em đã tìm hiểu về hàm đó theo hướng dẫn của thầy nhưng mày mò vẫn chưa ra? Mong thầy chỉ giúp!Nếu dữ liệu luôn luôn là dạng như vậy thì chỉ cần tách từ ký tự thứ 15
For Each rg In Range("a1:a3")
rg.Offset(0, 1).Value = Mid(rg.Value, 15, 10)
Next
Nếu dạng có thể khác đi thì dùng hàm split để tách nó theo khoảng trống rồi chọn phần tử cuối cùng.
Như thế này chẳng hạn :Dạ, cảm ơn thầy! Thầy có thể chỉ giúp cách thứ hai là nếu kí tự cần tách lúc thì là từ kí tự thứ 15, lúc thì là từ kí tự thứ 14, lúc thì là kí tự thứ 20,... thì dùng hàm splip như thế nào để tách được cho mọi trường hợp ạ? Em đã tìm hiểu về hàm đó theo hướng dẫn của thầy nhưng mày mò vẫn chưa ra? Mong thầy chỉ giúp!
-Ah thầy ơi, khi tách kí tự ra thì kí tự đó không còn ở trong ô cũ nữa (tức là cắt kí tự đó luôn và tách sang ô bên cạnh)
Sub Tachso()
Dim i As Long
Dim dArr, sArr()
sArr = Range("A1:A" & [A65536].End(xlUp).Row).Value
For i = 1 To UBound(sArr)
dArr = Split(sArr(i, 1), " ")
Cells(i, 2) = dArr(UBound(dArr))
Next
End Sub
Sub Tachso()
Dim i As Long
Dim Temp, sArr(), dArr()
sArr = Range("A1:A" & [A65536].End(xlUp).Row).Value
ReDim dArr(1 To UBound(sArr), 1 To 1)
For i = 1 To UBound(sArr)
Temp = Split(sArr(i, 1), " ")
dArr(i, 1) = Temp(UBound(Temp))
Next
[C1].Resize(i - 1, 1) = dArr
End Sub
Sub sms()
Dim lastrow_GL As Long, i As Long, lastrow_LN As Long
Dim Rng As Range
Dim strTmp As String
'Sheet1.Activate
'Set Rng = Sheet3.UsedRange
lastrow_GL = Sheets(1).Cells(Sheets(1).Rows.Count, "A").End(xlUp).Row
'lastrow_LN = Sheets(1).Cells(Sheets(1).Rows.Count, "A").End(xlUp).Row
strTmp = Sheet1.Range("E1").Value
MsgBox strTmp
' tach LAV trong file phi
For i = 4 To lastrow_GL
Sheet1.Range("C" & i).Value = tachLAV(Sheet1.Range("A" & i), strTmp)
Next
End Sub
Public Function tachLAV(str As String, lav As String)
On Error GoTo Er
str = Mid(str, InStr(1, str, lav, 1))
tachLAV = Split(str, "-")
If tachLAV = "" Then tachLAV = 0
Exit Function
Er:
tachLAV = ""
End Function