- ©«¤l
- 258
- ¥DÃD
- 77
- ºëµØ
- 0
- ¿n¤À
- 385
- ÂI¦W
- 0
- §@·~¨t²Î
- Win7
- ³nÅ骩¥»
- Office2010
- ¾\ŪÅv
- 20
- ©Ê§O
- ¨k
- ¨Ó¦Û
- Taiwan
- µù¥U®É¶¡
- 2010-8-8
- ³Ì«áµn¿ý
- 2021-1-25
|
[µo°Ý] ¦p¦ó±oª¾ Data.GetText ªº¨Ó·½¬O¨Ó¦Û listbox1 ©Î ,listbox2?
¤S¥d¦í¤F¡I½Ð¥ý¶i¤j¤j̨ó§U
°ÝÃD¦b¦P¤@userform1¤º§tlistbox1,listbox2,listbox3
¨ä¤¤ listbox1±N¸ê®Æ©ì¦²µ¹Comd1(±ý¨î¨ä¥LComdµLªk±µ¨ü)
listbox2±N¸ê®Æ©ì¦²µ¹Comd2~Comd5(±ý¨î¨ä¥LComdµLªk±µ¨ü)µ¥µ¥
§Ú¨Ï¥Î¦p¤U §Q¥Îclass1
Option Explicit
Dim newcontrol() As New Class1
Private Sub UserForm_Initialize()
ReDim newcontrol(26)
For i = 0 To 25
Set newcontrol(i).Comd = Controls("CommandButton" & i + 1)
newcontrol(i).Comd.Caption = ""
Next
listupdate1
listupdate3
End Sub
Private Sub ListBox1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Dim MyDataObject As DataObject
On Error Resume Next
If Button = 1 Then
Set MyDataObject = New DataObject
Dim Effect As Integer
MyDataObject.SetText ListBox1.Value
Effect = MyDataObject.StartDrag
End If
On Error GoTo 0
End Sub
Private Sub ListBox3_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Dim MyDataObject As DataObject
On Error Resume Next
If Button = 1 Then
Set MyDataObject = New DataObject
Dim Effect As Integer
MyDataObject.SetText ListBox3.Value
Effect = MyDataObject.StartDrag
End If
On Error GoTo 0
End Sub
class1
Private Sub Comd_BeforeDragOver(ByVal Cancel As MSForms.ReturnBoolean, ByVal Data As MSForms.DataObject, ByVal X As Single, _
ByVal Y As Single, ByVal DragState As Long, ByVal Effect As MSF orms.ReturnEffect, ByVal Shift As Integer)
Cancel = True
Effect = 1
End Sub
Private Sub Comd_BeforeDropOrPaste(ByVal Cancel As MSForms.ReturnBoolean, ByVal Action As Long, ByVal Data As MSForms.DataObject, ByVal X As Single, _
ByVal Y As Single, ByVal Effect As MSForms.ReturnEffect, ByVal Shift As Integer)
Dim am%, row1%, mod1%, n1%, i%
Dim n%
Dim str1 As String
Dim ss1%, ss2%, ss3%
Dim ss4 As Variant
Cancel = True
Effect = 1
am = Len(Comd.Name)
If am = 14 Then
str1 = Right(Comd.Name, 1)
ElseIf am = 15 Then
str1 = Right(Comd.Name, 2)
End If
n = CInt(str1)
If n = 1 Then Comd.Caption = Data.GetText
´N±Ð©ó¦U¦ì¤j¤j
¦p¦ó±oª¾ Data.GetText ªº¨Ó·½¬O¨Ó¦Û listbox1 ©Î ,listbox2? |
|