Lấy biểu thức trong ô kết quả.

Liên hệ QC
Góp vui UDF Regexp:
Mã:
Function TongSoThung(ByVal Str As String) As Long
    static Re As Object
    If Re Is Nothing Then Set Re = CreateObject("VBScript.Regexp")
    Re.Global = True
    Re.Pattern = "(\+\d+)"
    TongSoThung = Evaluate(Re.Replace("+" & Str, "+1"))
End Function
Bạn chỉ cần xoá những số đi trước * thôi.
\d+\*
Replace matches bằng ""

Chỉnh: ủa nhầm, mình tính đếm số dấu cộng, nhưng như vậy nó tính 3*11 thành 1. Để xem lại.
 
Thay số trước dấu sao (hoa thị), vậy khi evaluate =200+300+100*2+100 = 200+300+2+100 = 602 thùng sao bác?
Tôi thiếu, thay vì evaluate thì đếm số dấu cộng và cộng 1.
Nhưng nhầm một chút, như vậy nó đếm 3*11 là 1.

Chú thích: regex hơi nặng ký. Nếu không giảm được số tính thì hơi mất hiệu quả.
 
Web KT
Back
Top Bottom