và muốn lấy dữ liệu nằm giữa hai dấy phảy cuối cùng như kết quả dưới
Để làm được việc này đầu tiên bạn cần tạo một hàm riêng biệt bằng cách bấm tổ hợp phím Alt-F11 để mở cửa sổ Microsoft Visual Basic , chọn menu Insert > Module , sao chép nội dung bên dưới
Function FindN(sFindWhat As String, sInputString As String, N As Integer) As Integer
Dim J As Integer
Application.Volatile
FindN = 0
For J = 1 To N
FindN = InStr(FindN + 1, sInputString, sFindWhat)
If FindN = 0 Then Exit For
Next
End Function
Quay trở lại Excel . Để lấy dữ liệu như hình thứ hai bạn cần thực hiện công thức như sau
=MID(A1,FindN(\",\",A1,LEN(A1)-LEN(SUBSTITUTE(A1,\",\",\"\"))-1)+1,FindN(\",\",A1,LEN(A1)-LEN(SUBSTITUTE(A1,\",\",\"\")))-FindN(\",\",A1,LEN(A1)-LEN(SUBSTITUTE(A1,\",\",\"\"))-1)-1)
Trong công thức trên
=LEN(A1)-LEN(SUBSTITUTE(A1,\",\",\"\")) để đếm xem trong ô A1 có bao nhiêu dấu phảy .
Hàm FindN(“,”,A1,2) đếm xem dấu phảy thứ hai trong ô A1 ở vị trí số bao nhiêu
Cách thức sử dụng hàm FindN để đếm xem kí tự thứ nào đó đang đứng ở vị trí nào trong chuỗi kí tự .
Trong ví dụ trên công thức
=FindN(\",\",A1,LEN(A1)-LEN(SUBSTITUTE(A1,\",\",\"\"))) cho biết dấu phảy cuối cùng đứng vị trí số bao nhiêu
`