Tách số ra khỏi chuỗi trong ExcelTách số ra khỏi chuỗi trong ExcelTách số ra khỏi chuỗi trong ExcelTách số ra khỏi chuỗi trong ExcelTách số ra khỏi chuỗi trong ExcelTách số ra khỏi chuỗi trong ExcelTách số ra khỏi chuỗi trong ExcelTách số ra khỏi chuỗi trong ExcelTách số ra khỏi chuỗi trong ExcelTách số ra khỏi chuỗi trong ExcelTách số ra khỏi chuỗi trong ExcelTách số ra khỏi chuỗi trong ExcelTách số ra khỏi chuỗi trong ExcelTách số ra khỏi chuỗi trong ExcelTách số ra khỏi chuỗi trong ExcelTách số ra khỏi chuỗi trong ExcelTách số ra khỏi chuỗi trong ExcelTách số ra khỏi chuỗi trong ExcelTách số ra khỏi chuỗi trong ExcelTách số ra khỏi chuỗi trong ExcelTách số ra khỏi chuỗi trong ExcelTách số ra khỏi chuỗi trong ExcelTách số ra khỏi chuỗi trong Excel
Tách số khỏi chuỗi Excel Trong trình làm việc với Excel có gặp số trường hợp yêu cầu tách lấy phần số chuỗi cho trước, đăng chia sẻ với bạn cách làm Bài viết hướng dẫn chi tiết cách tách số từ chuỗi cho trước Excel Có cách tách số: - Trường hợp 1: Tách số từ chuỗi lấy giá trị dương - Trường hợp 2: Tách số từ chuỗi lấy giá trị âm dương Tách số từ chuỗi lấy giá trị dương Bước 1: Mở File Excel cần tách số -> Nhấn tổ hợp phím Alt + F11-> cửa sổ VBA xuất -> Vào tab Insert ->Module Bước 2: Tại cửa sổ lệnh nhập đoạn Code sau: Function ExtractNumber(rCell As Range) Dim lCount As Long Dim sText As String Dim lNum As String sText = rCell For lCount = Len(sText) To Step -1 If IsNumeric(Mid(sText, lCount, 1)) Then lNum = Mid(sText, lCount, 1) & lNum End If Next lCount ExtractNumber = CLng(lNum) End Function Chú ý: Bạn ghi nhớ tên hàm trở File Excel phải sử dụng tới Bước 3: Sau nhập xong kích chọn Save (do chứa macro nên lưu hiển thị hộp thoại thông báo bạn chọn OK nhé) -> Quay trở lại File Excel tìm đến hàm hình vẽ: Bước 4: Copy công thức cho ô lại có kết sau: Tách số từ chuỗi lấy giá trị âm dương Bước 1: Mở File Excel cần tách số -> Nhấn tổ hợp phím Alt + F11 -> cửa sổ VBA xuất -> Vào tab Insert ->Module Bước 2: Tại cửa sổ lệnh nhập đoạn Code sau: Private Function SuperTrim(TheStr As String) Dim Temp As String, DoubleSpase As String DoubleSpase = Chr(32) & Chr(32) Temp = Trim(TheStr) Temp = Replace(Temp, DoubleSpase, Chr(32)) Do Until InStr(Temp, DoubleSpase) = Temp = Replace(Temp, DoubleSpase, Chr(32)) Loop SuperTrim = Temp End Function Public Function Tach_So(strText As String) Dim strText_1 As String Dim subText() As String, so() As Double Dim i As Integer, j As Integer, k As Integer, m As Integer strText = SuperTrim(strText) subText = Split(strText, " ") For i = To UBound(subText) For j = To Len(subText(i)) k = If IsNumeric(Mid(subText(i), j, 1)) _ Or (Mid(subText(i), j, 1) = "-" And IsNumeric(Mid(subText(i), j + 1, 1))) Then k = j Exit For End If Next j If k Then m = m + strText_1 = Val(Mid(subText(i), k)) ReDim Preserve so(1 To m) As Double so(m) = strText_1 End If Next i If index > And index