機械社區(qū)

標(biāo)題: excel vba 做的塞規(guī)計算表格 [打印本頁]

作者: lyz815    時間: 2014-10-3 21:44
標(biāo)題: excel vba 做的塞規(guī)計算表格
  為了給公司CMM兄弟們計算方便,想下載個塞規(guī)計算表格,到處下載資料也沒有發(fā)現(xiàn)共享代碼的。都是加密的。
于是下載個類似的又做了下,很多不完善的地方。
此算法計算T,Z值時候沒有用到差值,利用了靠近近似。
希望有做過類似的大俠們給點意見。
下一步想做個mathcad 驅(qū)動proe生成模型的,希望做過類似的大俠給點資料啥的供參考,謝謝!


(, 下載次數(shù): 0)

Sub p()
Dim j As Integer
j = 0
End Sub

Function dia2()
Dim d As Single
Dim i As Single
d = Sheet2.[c2].Value
Select Case True
Case d >= 0 And d < 3
i = 6
Case d >= 3 And d < 6
i = 7
Case d >= 6 And d < 10
i = 8
Case d >= 10 And d < 18
i = 9
Case d >= 18 And d < 30
i = 10
Case d >= 30 And d < 50
i = 11
Case d >= 50 And d < 80
i = 12
Case Else
MsgBox "直徑超80,不計算"
End Select

j = i
''''''''''''''''''''''''''''''''''''''''''
Dim it(1 To 7)
Dim itt(1 To 7) '減去公差值的數(shù)組
Dim k As Integer
Dim kk As Integer '下標(biāo)
Dim m As Integer
Dim c As Single
Dim t As Single
Dim z As Single
m = 2
For k = 1 To 7
it(k) = Sheet1.Cells(j, k + m).Value
itt(k) = Abs(it(k) - 1000 * Sheet2.[g2].Value)
m = m + 2
Next k

c = Application.Min(itt)
kk = Application.Match(c, itt, 0)
t = Sheet1.Cells(i, 3 * kk + 1)
z = Sheet1.Cells(i, 3 * kk + 2)
''''''''''''''''''''''''''''''''''''''''''''''''''''''
Sheet2.Cells(4, 3) = Round(t, 3)
Sheet2.Cells(5, 3) = Round(z, 3)
End Function


Private Sub CommandButton1_Click()
dia2
End Sub
Private Sub CommandButton2_Click()
End
End Sub

Private Sub UserForm_Click()
End Sub


作者: duanyz    時間: 2014-10-6 11:50
頂一下樓主分享,很想學(xué)vb編程啊,老是學(xué)不進(jìn)去
作者: 精商    時間: 2021-1-17 13:45
好好的學(xué)習(xí)吧,段位太idle
作者: 精商    時間: 2021-1-31 10:16
很好的東西,謝謝
作者: 精商    時間: 2021-3-19 07:25
好的東西,謝謝
作者: myqihui    時間: 2021-3-19 11:18
學(xué)習(xí)賺積分




歡迎光臨 機械社區(qū) (http://e-learninguniversity.com/) Powered by Discuz! X3.4