在Excel VBA中,我有一个类似以下的用户表单,在该表单中,用户输入ID号码,然后详细信息会显示在用户表单上:
Private Sub btnIDNo_Click()
Dim IDNo As Long
If txtIDNo.Text <> "" Then
If IsNumeric(txtIDNo.Text) = True Then
lblError.Caption = ""
IDNo = txtIDNo.Text
Worksheets("Details").Activate
Range("B4").Select
While ActiveCell.Value <> "" And ActiveCell.Value <> IDNo
ActiveCell.Offset(1, 0).Select
Wend
If ActiveCell.Value = IDNo Then
txtName.Value = ActiveCell.Offset(0, 1).Value
txtPhone.Value = ActiveCell.Offset(0, 2).Value
Else
lblError.Caption = "Cannot find ID nummber"
End If
Else
lblError.Caption = "Please enter the ID Number in numeric form"
End If
End If
End Sub
在“用户详细信息”表单上,我有一个“编辑”按钮。点击“编辑”按钮会打开另一个用户表单,用户可以更改该ID号的详细信息,但显然不能更改ID号本身。为了实现这一点,我需要将ID号从“用户详细信息”表单传递到“编辑用户”表单。有没有办法做到这一点?
打开“编辑用户”表单的“显示用户详细信息”表单底部类似于以下内容:
Private Sub CommandButton1_Click()
Dim IDNo As Long
If txtIDNo.Text <> "" Then
If IsNumeric(txtIDNo.Text) = True Then
lblError.Caption = ""
IDNo= txtIDNo.Text
ufmEditDetails.Show
ufmShowDetails.Hide
Else
lblError.Caption = "Please enter the ID Number in numeric form"
End If
Range("B4").Select
End If
End Sub
我已经查看了以下链接,但它们似乎没有帮助:
http://gregmaxey.mvps.org/word_tip_pages/userform_pass_data.html