0

我想将 excel vb 中 userform 的值提交到 excel 表单代码如下,我想将 manswer 发布到我的 excel 表单,此代码是计算器,我希望将答案发布到我的 excel 表单中

    'Declare the global variables to be used throughout the form
Dim mfirst As Single
Dim msecond As Single
Dim manswer As Single
' Declare the global variables for the operators: Add,Sub,Mul and DIV
Dim mbutton As Integer
'Change the sign of the number from + or - or vice versa
' Depending on its state now they show in txtNUMBER text box
Dim Signstate As Boolean
Private Sub cmd0_Click()
'Put the value 0 into the txtNUMBER text box
TXTnumber = TXTnumber + "0"
End Sub

Private Sub cmd1_Click()
'Put the value 1 into the txtNUMBER text box
TXTnumber = TXTnumber + "1"
End Sub

Private Sub cmd2_Click()
'Put the value 2 into the txtNUMBER text box
TXTnumber = TXTnumber + "2"
End Sub

Private Sub cmd3_Click()
'Put the value 3 into the txtNUMBER text box
TXTnumber = TXTnumber + "3"
End Sub

Private Sub cmd4_Click()
'Put the value 4 into the txtNUMBER text box
TXTnumber = TXTnumber + "4"
End Sub

Private Sub cmd5_Click()
'Put the value 5 into the txtNUMBER text box
TXTnumber = TXTnumber + "5"
End Sub

Private Sub cmd6_Click()
'Put the value 6 into the txtNUMBER text box
TXTnumber = TXTnumber + "6"
End Sub

Private Sub cmd7_Click()
'Put the value 7 into the txtNUMBER text box
TXTnumber = TXTnumber + "7"
End Sub

Private Sub cmd8_Click()
'Put the value 8 into the txtNUMBER text box
TXTnumber = TXTnumber + "8"
End Sub

Private Sub cmd9_Click()
'Put the value 9 into the txtNUMBER text box
TXTnumber = TXTnumber + "9"
End Sub

Private Sub cmdADD_Click()
'User slected the add button
mbutton = 1
'Convert into a number and transfer the value from
'The text box on the form into the first number
mfirst = Val(TXTnumber)

TXTnumber = ""
End Sub



Private Sub cmdSUBTRACT_Click()
'User slected the minus button
mbutton = 2
'Convert into a number and transfer the value from
'The text box on the form into the first number
mfirst = Val(TXTnumber)

TXTnumber = ""
End Sub

Private Sub cmdMULTIPLY_Click()
'User slected the multiply button
mbutton = 3
'Convert into a number and transfer the value from
'The text box on the form into the first number
mfirst = Val(TXTnumber)

TXTnumber = ""
End Sub

Private Sub cmdDIVIDE_Click()
'User slected the Divide button
mbutton = 4
'Convert into a number and transfer the value from
'The text box on the form into the first number
mfirst = Val(TXTnumber)

TXTnumber = ""
End Sub
Private Sub cmdEQUALS_Click()
msecond = Val(TXTnumber)

Select Case mbutton
Case Is = 1
manswer = mfirst + msecond
Case Is = 2
manswer = mfirst - msecond
Case Is = 3
manswer = mfirst * msecond
Case Is = 4
manswer = mfirst / msecond
End Select
TXTnumber = manswer
End Sub
Private Sub cmdDOT_Click()
TXTnumber = TXTnumber + "."
End Sub
Private Sub cmdSIGN_Click()
'Sign state = false on load of form
If TXTnumber = "-" + TXTnumber Then
    MsgBox "error start again"
End If
If Signstate = False Then
TXTnumber = "-" + TXTnumber
Signstate = True
Else
'SignState = True

minusvalue = Val(TXTnumber)
'Value now positive
minusvalue = Val("-1" * minusvalue)
TXTnumber = minusvalue
Signstate = False

End If
End Sub
Private Sub cmdEXIT_Click()
Unload frmCALCULATOR
End Sub

Private Sub cmdCANCEL_Click()
'Remove the values in the txtNUMBER text box
TXTnumber = " "
End Sub
4

1 回答 1

0

从 UserForm 获取值到工作表单元格所需的基本代码是:

Dim ws As Worksheet

Set ws = Worksheet("YourSheetName")

ws.Range("A1").Value = txtTextBoxName.Text    'or .Value
于 2013-08-26T10:41:28.633 回答