Xây dựng hàm để tra số liệu thể tích theo chiều cao tương ứng & có hiệu chuẩn

Sa DQ

Thành viên năng động
Tham gia
17/6/14
Bài viết
76
Điểm thành tích
8
Cơ quan nọ có bễ chứa hình dạng đặt biệt
Để tính thể tích chất lõng còn lại trong bễ người ta đo chiều cao; Chiều cao này được đo chính xác đến mm
Người ta đã xây dựng 2 bảng tra;
1 bảng để tra thể tích ứng với số đo chiều cao tính bằng Cm
1 bảng còn lại để hiệu chuẩn tăng thể tích tương ứng với đơn vị đo là mm còn lại

Ví dụ chiều cao đo được là 127 mm;
Người ta lấy 12 Cm đêm tra ờ bảng 1 (Barem 1) & được con số nào đó, như 9.2632
Sau đó lấy con số 7 mm tra ở bảng hiệu chuẩn & được thêm con số 0.49886 để cộng vô thể tích tương ứng với 12 Cm

Hàm người dùng sau đây sẽ giúp chúng ta tra trực tiếp số liệu từ 2 bảng tra

PHP:
Option Explicit
Function TraBang(Num As Double) As Double
 Dim Cent As Long, Mil As Long, Rws As Long, Offs As Byte, Dg As Long
 Dim Sh As Worksheet, Rng As Range, sRng As Range, WF As Object
 
 Cent = Num \ 10:           Mil = Num Mod 10
 Set Sh = ThisWorkbook.Worksheets("Barem")
 Set WF = Application.WorksheetFunction
 Rws = Sh.[A9999].End(xlUp).Row
 Set Rng = Union(Sh.[A4].Resize(Rws), Sh.[c4].Resize(Rws), Sh.[e4].Resize(Rws), Sh.[g4].Resize(Rws))
 Set sRng = Rng.Find(Cent, , xlValues, xlWhole)
 If Not sRng Is Nothing Then
    TraBang = BaSoLe(sRng.Offset(, 1).Value)
 Else
    TraBang = "Nothing"
 End If
 If Mil = 0 Then Exit Function
 Set Sh = ThisWorkbook.Worksheets("FanLe")
 If Num < 4537 Then Dg = 7 Else Dg = 18
 Offs = Switch(Num <= 1537, 3, Num <= 3037, Dg, Num < 4537, 11 _
    , Num <= 6037, 3, Num <= 7537, 7, Num > 7537, 11)
 TraBang = TraBang + BaSoLe(WF.VLookup(Mil, Sh.Cells(Dg, Offs).Resize(10, 2), 2, False))
End Function
Mã:
[B]Function BaSoLe(Num As Double) As Double[/B]
 Const Ng As Integer = 1000
 BaSoLe = (Num * Ng \ 1) / Ng
[B]End Function[/B]

Xin các bạn xem trong file sẽ rõ hơn.
 

File đính kèm

  • gpeUDF.rar
    14,3 KB · Đọc: 142

Tải bộ cài phần mềm Dự toán GXD, Đấu thầu GXD, Thanh Quyết toán GXD, Quản lý chất lượng GXD. Dành cho người mua bản quyền
Kích để xem khóa học Dự toán công trình
Kích để xem khóa học Dự toán công trình
Phần mềm quản lý chất lượng công trình QLCL GXD
Tìm hiểu khóa học Thanh Quyết toán GXD

Các bài viết mới

Top