Private Sub CommandButton1_Click() Dim i As Long i = Worksheets("sheet1").Range("A65536").End(xlUp).Row If Range("A1") = "" Then Range("A1") = TextBox1.Text Else i = i + 1 Range("A" & i) = TextBox1.Text End If TextBox1.Text = "" TextBox1.SetFocus End Sub
幾種方法探討
要使代碼在工作簿打開時(shí)執(zhí)行,則應(yīng)利用Workbook_Open事件。一般應(yīng)該將代碼放置在ThisWorkbook模塊中,這樣在打開該工作簿時(shí)會執(zhí)行其中的代碼。
1、下面的代碼,打開工作簿后,工作表均隱藏,只顯示用戶窗體,但Excel菜單和工具欄仍顯示。
Private Sub Workbook_Open() UserForm1.Show Workbooks("Sample1.xls").Windows(1).Visible = False End Sub
詳見示例Sample1.xls。
2、下面的代碼,在打開工作簿后,將只顯示用戶窗體。
Private Sub Workbook_Open() '最小化窗口 Application.WindowState = xlMinimized '顯示用戶窗體 UserForm1.Show End Sub
若需在關(guān)閉用戶窗體后,工作簿也隨之前閉,則在用戶窗體關(guān)閉事件中,添加下面的代碼:
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) ThisWorkbook.Close End Sub
當(dāng)關(guān)閉用戶窗體時(shí),Excel會提示用戶是否保存對工作簿的修改,單擊“是”將保存工作簿并退出。若要默認(rèn)關(guān)閉用戶窗體并自動保存工作簿,則添加下面的代碼:
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) ThisWorkbook.Close SaveChanges:=True End Sub
詳見示例Sample2.xls。
3、下面的示例代碼,將徹底隱藏工作簿。在打開工作簿后,該工作簿將被隱藏,而只顯示用戶窗體,即將用戶窗體當(dāng)作用戶輸入界面,工作簿當(dāng)作后臺數(shù)據(jù)存儲和處理。
Private Sub Workbook_Open() '隱藏工作簿 Application.Visible = False '顯示用戶窗體 UserForm1.Show End Sub
詳見示例Sample3.xls。
注意:此時(shí),Excel將在后臺運(yùn)行,要退出該Excel應(yīng)用程序,必須結(jié)束其進(jìn)程。