giaptk3
Thành viên chính thức
- Tham gia
- 2/1/07
- Bài viết
- 77
- Được thích
- 211
- Nghề nghiệp
- Thiêt kế thủy lợi
Dùng hàm này cho tiện nè bạn ơi:Mình làm thế này, vẫn hơi thủ công.
Bước chuẩn bị :
Nhập dữ liêu toàn bộ cho phần diễn toán, sau đó kéo fill hết công thức trong cột phụ.
Bước cuối cùng :
- Bạn chọn hết vùng dữ liệu màu đỏ trong cột phụ.
- Bấm nút "Tính khối lượng" để chạy macro.
Function ValExp(Cell As String) As Double
Dim Temp1 As String
With CreateObject("VBScript.RegExp")
.Global = True
Temp1 = Replace(Cell, "[", "(")
Temp1 = Replace(Temp1, "]", ")")
Temp1 = Replace(Temp1, "{", "(")
Temp1 = Replace(Temp1, "}", ")")
Temp1 = Replace(Temp1, "x", "*")
Temp1 = Replace(Temp1, ":", "/")
.Pattern = "[^0-9+.*/:()-]"
ValExp = Evaluate(.Replace(Temp1, ""))
End With
End Function
Dùng hàm này cho tiện nè bạn ơi:
PHP:Function ValExp(Cell As String) As Double Dim Temp1 As String With CreateObject("VBScript.RegExp") .Global = True Temp1 = Replace(Cell, "[", "(") Temp1 = Replace(Temp1, "]", ")") Temp1 = Replace(Temp1, "{", "(") Temp1 = Replace(Temp1, "}", ")") Temp1 = Replace(Temp1, "x", "*") Temp1 = Replace(Temp1, ":", "/") .Pattern = "[^0-9+.*/:()-]" ValExp = Evaluate(.Replace(Temp1, "")) End With End Function
Hàm này có 2 tác dụng:Cảm ơn anh, thật sự là em không hiểu đoạn code này.
Hàm này có 2 tác dụng:
- Tách lấy số và các ký tự đã định trước (như dấu +, - , *, /, (, )...)
- Tính ra giá trị của biểu thức
Xem file đính kèm!