📄 强度评定.frm
字号:
List1.Clear
If Option1.Value = True Then '抗弯
List1.AddItem " 评定水泥砼弯拉强度"
If n > 10 Then
If n <= 14 Then k = 0.75
If n >= 15 And n <= 19 Then k = 0.7
If n >= 20 Then k = 0.65
rhg = rsz + k * sp
pdz1 = 1
If xp < rhg Then pdz1 = 0
If n <= 20 Then
pdz2 = 1
For i = 1 To n
If 0.85 * rsz > sz(i) Then pdz2 = 0
Next i
End If
If n > 20 Then
pdz2 = 1
ki = 0
For i = 1 To n
If Option5.Value = True Then '高速一级
If sz(i) < 0.85 * rsz Then pdz2 = 0
End If
If Option6.Value = True Then '其他公路
If sz(i) < 0.85 * rsz And sz(i) >= 0.75 * rsz Then ki = ki + 1
If sz(i) < 0.75 * rsz Then pdz2 = 0
End If
Next i
If Option6.Value = True Then
If ki >= 2 Then pdz2 = 0
End If
End If
End If
If n <= 10 Then
If xp >= 1.05 * rsz Then pdz1 = 1
rhg = 1.05 * rsz
pdz2 = 1
For i = 1 To n
If sz(i) < 0.85 * rsz Then pdz2 = 0
Next i
End If
End If
If Option2.Value = True Then '抗压
List1.AddItem " 评定水泥砼抗压强度"
If n >= 10 Then
If n <= 14 Then
k1 = 1.7: k2 = 0.9
End If
If n > 14 And n <= 24 Then
k1 = 1.65: k2 = 0.85
End If
If n > 24 Then
k1 = 1.6: k2 = 0.85
End If
If sp < 0.06 * rsz Then sp = 0.06 * rsz
If xp - k1 * sp >= 0.9 * rsz Then pdz1 = 1
If Rmin >= k2 * rsz Then pdz2 = 1
End If
If n < 10 Then
If xp >= 1.15 * rsz Then pdz1 = 1
If Rmin >= 0.95 * rsz Then pdz2 = 1
End If
End If
If Option3.Value = True Then '喷射
List1.AddItem " 评定水泥砼抗压强度"
pdz1 = 1
pdz2 = 1
If n >= 10 Then
rhg = rsz
If xp < rsz Then pdz1 = 0
For i = 1 To n
If sz(i) < 0.85 * rsz Then pdz2 = 0
Next i
End If
If n < 10 Then
rhg = 1.05 * rsz
If xp < 1.05 * rsz Then pdz1 = 0
For i = 1 To n
If sz(i) < 0.9 * rsz Then pdz2 = 0
Next i
End If
End If
If Option4.Value = True Then '砂浆
List1.AddItem " 评定水泥砂浆强度"
pdz1 = 1
pdz2 = 1
rhg = rsz
If xp < rsz Then pdz1 = 0
For i = 1 To n
If sz(i) < 0.75 * rsz Then pdz2 = 0
Next i
End If
List1.AddItem ""
List1.AddItem "设计强度(MPa) =" + Text2.Text
List1.AddItem "试件组数 =" + Text1.Text
List1.AddItem "试件最小值(MPa) =" + Trim(Str(Rmin))
List1.AddItem "试件平均值(MPa) =" + Trim(Str(Int(xp * 100 + 0.5) / 100))
List1.AddItem "试件方差 (MPa) =" + Trim(Str(Int(sp * 1000 + 0.5) / 1000))
If Option1.Value = True Then
List1.AddItem ""
If pdz1 = 1 And pdz2 = 1 Then
List1.AddItem " 试件强度符合评定要求"
End If
If pdz1 = 0 Then List1.AddItem "不合格 不符合条件1 "
If pdz2 = 0 Then List1.AddItem "不合格 不符合条件2 "
List1.AddItem "合格判断强度(MPa)RX=" + Trim(Str(Int(rhg * 1000 + 0.5) / 1000))
List1.AddItem "0.85×Rsz(MPa) =" + Trim(Str(Int(0.85 * rsz * 1000 + 0.5) / 1000))
If Option6.Value = True Then List1.AddItem "0.75×Rsz(MPa) =" + Trim(Str(Int(0.75 * rsz * 1000 + 0.5) / 1000))
End If
If Option2.Value = True Then
List1.AddItem ""
If n >= 10 Then
If pdz1 = 1 And pdz2 = 1 Then
List1.AddItem " 试件强度符合评定要求"
List1.AddItem "Rn-K1×Sn≥0.9×R =" + Trim(Str(Int(xp * 1000 + 0.5) / 1000)) + "-" + Trim(Str(k1)) + "×" + Trim(Str(Int(sp * 1000 + 0.5) / 1000)) + "≥" + Trim(Str(0.9)) + "×" + Trim(Str(rsz))
List1.AddItem "Rmin ≥K2×R =" + Trim(Str(Rmin)) + "≥" + Trim(Str(k2)) + "×" + Trim(Str(rsz))
End If
If pdz1 = 0 Then List1.AddItem "不合格 不符合条件1 =" + Trim(Str(Int(xp * 1000 + 0.5) / 1000)) + "-" + Trim(Str(k1)) + "×" + Trim(Str(Int(sp * 1000 + 0.5) / 1000)) + "<" + Trim(Str(0.9)) + "×" + Trim(Str(rsz))
If pdz2 = 0 Then List1.AddItem "不合格 不符合条件2 =" + Trim(Str(Rmin)) + "<" + Trim(Str(k2)) + "×" + Trim(Str(rsz))
List1.AddItem "强度判断值0.90×R =" + Trim(Str(Int(0.9 * rsz * 1000 + 0.5) / 1000))
List1.AddItem "K2×R =" + Trim(Str(Int(k2 * rsz * 1000 + 0.5) / 1000))
End If
If n < 10 Then
If pdz1 = 1 And pdz2 = 1 Then
List1.AddItem " 试件强度符合评定要求"
List1.AddItem "Rn ≥1.15×R =" + Trim(Str(Int(xp * 1000 + 0.5) / 1000)) + "≥" + Trim(Str(1.15)) + "×" + Trim(Str(rsz))
List1.AddItem "Rmin≥0.95×R =" + Trim(Str(Rmin)) + "≥" + Trim(Str(0.95)) + "×" + Trim(Str(rsz))
End If
If pdz1 = 0 Then List1.AddItem "不合格 不符合条件1 =" + Trim(Str(Int(xp * 1000 + 0.5) / 1000)) + "<" + Trim(Str(1.15)) + "×" + Trim(Str(rsz))
If pdz2 = 0 Then List1.AddItem "不合格 不符合条件2 =" + Trim(Str(Rmin)) + "<" + Trim(Str(0.95)) + "×" + Trim(Str(rsz))
List1.AddItem "强度判断值1.15×R =" + Trim(Str(Int(1.15 * rsz * 1000 + 0.5) / 1000))
List1.AddItem "0.95×R =" + Trim(Str(Int(0.95 * rsz * 1000 + 0.5) / 1000))
End If
End If
If Option3.Value = True Then
List1.AddItem ""
If pdz1 = 1 And pdz2 = 1 Then
List1.AddItem " 试件强度符合评定要求"
End If
If pdz1 = 0 Then List1.AddItem "不合格 不符合条件1 "
If pdz2 = 0 Then List1.AddItem "不合格 不符合条件2 "
List1.AddItem "合格判断强度(MPa)RX=" + Trim(Str(Int(rhg * 1000 + 0.5) / 1000))
If n >= 10 Then List1.AddItem "0.85×Rsz(MPa) =" + Trim(Str(Int(0.85 * rsz * 1000 + 0.5) / 1000))
If n < 10 Then List1.AddItem "0.90×Rsz(MPa) =" + Trim(Str(Int(0.9 * rsz * 1000 + 0.5) / 1000))
End If
If Option4.Value = True Then
List1.AddItem ""
If pdz1 = 1 And pdz2 = 1 Then
List1.AddItem " 试件强度符合评定要求"
End If
If pdz1 = 0 Then List1.AddItem "不合格 不符合条件1 "
If pdz2 = 0 Then List1.AddItem "不合格 不符合条件2 "
List1.AddItem "合格判断强度(MPa)RX=" + Trim(Str(Int(rhg * 1000 + 0.5) / 1000))
List1.AddItem "0.75×Rsz(MPa) =" + Trim(Str(Int(0.75 * rsz * 1000 + 0.5) / 1000))
End If
List1.AddItem " "
Exit Sub
handlerror:
xianshi = MsgBox("请检查输入的数据后再试试。", vbInformation, "问题提示")
End Sub
Private Sub Command2_Click()
'关闭
On Error GoTo handlerror
If List1.ListCount > 1 And rjsfzc = 88 Then
frmMain.Text1 = frmMain.Text1 & vbCrLf & ""
frmMain.Text1 = frmMain.Text1 & vbCrLf & " 《水泥砼强度评定计算结果》:"
For i = 0 To List1.ListCount - 1
frmMain.Text1 = frmMain.Text1 & vbCrLf & " " + List1.List(i)
Next i
frmMain.Text1 = frmMain.Text1 & vbCrLf & " 强度数据"
wjsj = ""
For i = 1 To VSFlexGrid1.Rows - 1
wjsj = wjsj + VSFlexGrid1.TextMatrix(i, 1) + ", "
Next i
frmMain.Text1 = frmMain.Text1 & vbCrLf & " " + wjsj
frmMain.Text1 = frmMain.Text1 & vbCrLf & " --------------------------------------"
End If
Unload Me
Exit Sub
handlerror:
End Sub
Private Sub Form_KeyPress(KeyAscii As Integer)
'Esc键退出,VbEscape可以用27代替
On Error GoTo handlerror
If KeyAscii = 27 Then
Unload Me
End If
Exit Sub
handlerror:
End Sub
Private Sub Form_Load()
'启动
On Error GoTo handlerror
Text1.Text = ""
Text2.Text = ""
List1.Clear
VSFlexGrid1.TextMatrix(0, 0) = "序号"
VSFlexGrid1.TextMatrix(0, 1) = "数值"
VSFlexGrid1.ColWidth(0) = 500
VSFlexGrid1.ColWidth(1) = 970
VSFlexGrid1.ColAlignment(0) = flexAlignCenterCenter
VSFlexGrid1.ColAlignment(1) = flexAlignCenterCenter
Exit Sub
handlerror:
End Sub
Private Sub Option1_Click()
'抗弯
Frame3.Visible = False
End Sub
Private Sub Option2_Click()
'抗压
Frame3.Visible = True
End Sub
Private Sub Option3_Click()
'喷砼
Frame3.Visible = False
End Sub
Private Sub Option4_Click()
'砂浆
Frame3.Visible = False
End Sub
Private Sub Text1_Change()
'试件组数
On Error GoTo handlerror
If Val(Text1.Text) >= 2 Then
VSFlexGrid1.Rows = Val(Text1.Text) + 1
For i = 1 To VSFlexGrid1.Rows - 1
VSFlexGrid1.TextMatrix(i, 1) = ""
VSFlexGrid1.TextMatrix(i, 0) = i
Next i
End If
Exit Sub
handlerror:
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -