2013-04-15 90 views
0

我無法觀察運行時間內完成的行數。因此我在想,爲什麼不出來幾行代碼來顯示在運行時間內完成的行數。VBA:顯示在運行時間內完成的行號

關注是我的實現:

Dim ownCntrl As Control 
Set ownCntrl = UserForm1.Controls.Add("Forms.TextBox.1") 
With ownCntrl 
    .Name = "RowNoTextBox" 
    .Value = "test" 
    .Width = 150 
    .Height = 25 
    .Top = 10 
    .Left = 10 
    .ZOrder (0) 
End With 
UserForm1.Show 

以下是我的疑問:

1)除了框對象,還有沒有其他的對象像Java中的標籤在VBA來顯示信息?

2)沒有最初創建一個名爲「UserForm1」的UserForm,我可以在運行時直接創建TextBox對象或其他合適的對象嗎?原因,沒有稱爲UserForm1.Show函數,文本框對象不會顯示

3)如何保持用戶窗體或文本框在運行時顯示,而無需用戶的交互來關閉它繼續?

我剛開始學習VBA。感謝你們的建議。非常感謝。

+0

是您的目標,以顯示進度信息?搜索'進度條'在谷歌或在這裏,我已經看到了幾種可能性...你想顯示哪些信息 - 只有一些文本與數字? –

+0

第三個問題通過調用UserForm1.Show(0) – ShadowScorpion

+0

Hi,KazJaw解決。很高興見到你。我只想顯示運行期間在文本框或標籤中完成的行數。全部是 – ShadowScorpion

回答

1

根據放置在註釋中的一些額外信息,保留子程序進度信息的最簡單方法是使用Excel狀態欄。因此,我們把我們的子程序這樣的範圍內:

Application.StatusBar = "Current progress- Row No.: " & rowNum 

其中rowNum是一個變量(循環變量),代表當前行。 這是重要的 - 你需要返回標準狀態欄行爲調用你的程序結束之前這條線:

Application.StatusBar = False