复制文本框中的数据
有时,我们需要从用户窗体的文本框中复制数据,然后将其粘贴到其它地方。下面举例说明具体的操作方法。
示例一:如下图1所示,在示例窗体中有一个文本框和一个命令按钮。当窗体被激活时,文本框中自动显示文字“完美Excel”,单击“复制”按钮后,将文本框中的数据复制到剪贴板。
图1:带有文本框和命令按钮的用户窗体
首先,按图1设计好用户窗体界面。然后,在该用户窗体模块中,输入下列代码:
Dim myClipboard As New DataObject
Private Sub UserForm_Activate()
Me.TextBox1.Value = “完美Excel”
End Sub
Private Sub CommandButton1_Click()
With myClipboard
.SetText Me.TextBox1.Text
.PutInClipboard
End With
End Sub
示例二:在用户窗体中有多个文本框,要求单击按钮后将有数据的文本框中的数据全部复制到剪贴板。
图2:带有6个文本框和1个命令按钮的用户窗体
首先,按图2设计好用户窗体界面。然后,在用户窗体模块中,输入下列代码:
Dim strUnion As String
Private Sub CommandButton1_Click()
Dim dObj As DataObject
With Me
If Not .TextBox1 = Empty Then strUnion = strUnion & .TextBox1
If Not .TextBox2 = Empty Then strUnion = strUnion & vbCrLf & .TextBox2
If Not .TextBox3 = Empty Then strUnion = strUnion & vbCrLf & .TextBox3
If Not .TextBox4 = Empty Then strUnion = strUnion & vbCrLf & .TextBox4
If Not .TextBox5 = Empty Then strUnion = strUnion & vbCrLf & .TextBox5
If Not .TextBox6 = Empty Then strUnion = strUnion & vbCrLf & .TextBox6
End With
Set dObj = New DataObject
dObj.SetText strUnion, 1
dObj.PutInClipboard
End Sub

(1 次投票, 平均: 4 out of 5)
