今天下午开始学习用VB封装VBA代码,这里作了一个示例,(注:本附件需要1金币方可下载,当然,如果你在本论坛发帖量超过100,可以在另外一帖直接下载,请见另外一帖 ^_^ .请理解) 可以用它来实现EXCEL的用户验证.还望高手拍砖. 附:VB源码: Dim bllFlag As Boolean Private Sub Command1_Click() Dim i As Integer Dim XLSOBJ As Object Set XLSOBJ = GetObject(, "Excel.Application") If Form1.Text1 <> Left(Form1.Combo1.Text, 1) Then MsgBox "ÃÜÂë´íÎó!ÇëÖØÐÂÊäÈë. Ìáʾ:ÃÜÂë¾ÍÊÇÇ°ÃæµÄÊý×Ö. ^_^ " Form1.Text1 = "" Form1.Text1.SetFocus Exit Sub End If XLSOBJ.Visible = True Form1.Hide MsgBox "ÒѾ½øÈëϵͳ,ÏÂÒ»²½²âÊÔÖÐ,½«×Ô¶¯Îª¹¤×÷±íÌí¼ÓÊý¾Ý,Çëµã»÷[È·¶¨]", vbOKOnly For i = 1 To 10 XLSOBJ.ActiveWorkbook.Sheets((i Mod 2) + 1).Range("A" & i).Value = i Next i XLSOBJ.ActiveWorkbook.Sheets(1).Select MsgBox "¹§Ï²¹§Ï²,²âÊԳɹ¦!", vbOKOnly End Sub Private Sub Command2_Click() Dim XLSOBJ As Object On Error Resume Next Set XLSOBJ = GetObject(, "Excel.Application") bllFlag = True If XLSOBJ.Workbooks.Count <= 1 Then XLSOBJ.Quit Else XLSOBJ.ActiveWorkbook.Close SaveChanges:=False XLSOBJ.Visible = True End If Set XLSOBJ = Nothing Unload Form1 End Sub Private Sub Form_Load() Dim i As Integer Dim XLSOBJ As Object bllFlag = False Set XLSOBJ = GetObject(, "Excel.Application") XLSOBJ.Visible = False Set XLSOBJ = Nothing Combo1.Clear For i = 1 To 5 Form1.Combo1.AddItem i & " :" & Chr(i + 64) Next i Combo1.Text = "1 :A" Form1.Text1.Text = "" End Sub Private Sub Form_Unload(Cancel As Integer) If Not bllFlag Then Call Command2_Click End If End Sub '-----------------下面是主过程,用于显示窗体------------------- Sub main() Form1.Show End Sub
[此贴子已经被作者于2007-7-24 18:41:39编辑过] |