[爆卦]vba msgbox換行是什麼?優點缺點精華區懶人包

為什麼這篇vba msgbox換行鄉民發文收入到精華區:因為在vba msgbox換行這個討論話題中,有許多相關的文章在討論,這篇最有參考價值!作者waiter337 (給開司一罐蘇格登)看板Office標題[問題] vba發現表單有空白,跳出...


(若是和其他不同軟體互動之問題 請記得一併填寫)
軟體:

版本:


目前textbox1 是vba表單中的一個姓名輸入位置

當我發現他沒輸入東西,或者為數字跟標點符號時

原設定為"新增資料"的按扭

按下之後會發現錯誤,跳出msbox,並停止vba的運作
(甚至是當輸入完成換行時,輸入不符規格,就會自動跳出警告視窗)


目前卡住不會寫
If TextBox1.Value = False Then

end if

目前google"停止 vba 巨集"大神

大部份都是停止excel顯示錯誤警告視窗的巨集

求高手支援


另外問一下

我總共有

TextBox1.Value = False
TextBox2.Value = False
TextBox3.Value = False
TextBox4.Value = False
TextBox5.Value = False
TextBox6.Value = False
TextBox7.Value = False
TextBox8.Value = False
TextBox9.Value = False
TextBox10.Value = False
TextBox11.Value = False
TextBox12.Value = False
TextBox13.Value = False
TextBox14.Value = False


這些需要判斷

是需要每個各做一次,還是有一次找尋的方法

但我猜可能還是得一個一個做

因為警告視窗得顯示未輸入的空白格子

--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.35.158.244
※ 文章網址: https://www.ptt.cc/bbs/Office/M.1474540826.A.591.html
※ 編輯: waiter337 (114.35.158.244), 09/22/2016 18:43:15
※ 編輯: waiter337 (114.35.158.244), 09/22/2016 18:46:41
※ 編輯: waiter337 (114.35.158.244), 09/22/2016 18:47:24
Metal5566: UNLOAD userform1 09/22 20:37
waiter337: If TextBox1.Text = "" Then MsgBox ("舊車主空白") 09/22 21:22
waiter337: Exit Sub 09/22 21:22
waiter337: End If 09/22 21:22
waiter337: 有時後會跳出 有END IF 卻沒有 IF 09/22 21:37
waiter337: 好像是不用end if 的 if種類 09/22 21:45
waiter337: 我刪掉繼續hkhk43 09/22 21:45
waiter337: 繼續測 09/22 21:45
waiter337: 已解決 09/22 21:49
可是我出現另一個問題

假設14個都空白沒填

他的msgbox就會跳14次= =

該怎麼做讓他只跳最前面那次警告

後面沒填的警告先不跳

而且我還可以順便exit sub

避免錯誤的資料進入database
※ 編輯: waiter337 (114.35.158.244), 09/22/2016 22:15:38
soyoso: 迴圈,內判斷textbox是否為空白,如只跳最前面那次的話 09/23 09:39
soyoso: 就當第1筆空白時,執行msgbox訊息,再執行回文的exit sub 09/23 09:41
https://goo.gl/zoPWzG

裡面的msgbox每項皆不同

該如何撰寫

for ii = 1 to 14

if textbox & ii & .text = "" then msgbox

exit sub

next

--------------------------------------

If TextBox1.Text = "" Then MsgBox ("舊車主空白")

If TextBox2.Text = "" Then MsgBox ("舊車牌空白")

If TextBox3.Text = "" Then MsgBox ("引擎號碼空白")

If TextBox4.Text = "" Then MsgBox ("電話空白")

If TextBox5.Text = "" Then MsgBox ("手機空白")

If TextBox6.Text = "" Then MsgBox ("身份證字號空白")

If TextBox7.Text = "" Then MsgBox ("出生年月日空白")

If TextBox8.Text = "" Then MsgBox ("新車主空白")

If TextBox9.Text = "" Then MsgBox ("新車牌空白")

If TextBox10.Text = "" Then MsgBox ("引擎號碼空白")

If TextBox11.Text = "" Then MsgBox ("身份證字號空白")

If TextBox12.Text = "" Then MsgBox ("出生年月日空白")

If TextBox13.Text = "" Then MsgBox ("機種空白")
※ 編輯: waiter337 (114.35.158.244), 09/23/2016 15:17:33
waiter337: 迴圈寫出不同的敘述 是否要在增加一個變數 09/23 15:18
waiter337: 還是說用exit for 09/23 15:19
soyoso: 用controls來指定到textbox的名稱 09/23 15:27
soyoso: 如檔案內textbox後為連續流水號,可用"textbox" & ii的方 09/23 15:28
soyoso: 式 09/23 15:28
waiter337: 等下研究一下 09/23 15:36
waiter337: 如果改用補助欄 09/23 15:36
waiter337: Msgbox("a" & ii) 然後補助欄放在其他頁面a1~a14 09/23 15:37
waiter337: Controls 目前還沒用過 我先google一下 09/23 15:38
soyoso: 抱歉,補助欄是?輔助欄嗎? 09/23 15:43
soyoso: Msgbox("a" & ii) 然後補助欄放在其他頁面a1~a14是指 09/23 15:44
soyoso: msgbox引內儲存格a1~a14的值嗎? 09/23 15:46
waiter337: 對 09/23 15:47
soyoso: 如果引用儲存格的值,寫法上就不正確了 09/23 15:47
soyoso: 應是range或cells來指定 09/23 15:49
waiter337: 抱歉,我還是寫不出來 09/23 17:14
soyoso: controls方面嗎?如果是的話類似http://imgur.com/a/ahfAT 09/23 17:24
waiter337: 太感謝了 09/23 18:08
waiter337: 麻煩幫我看一下這樣寫有沒有其他問題 09/23 18:08

lable1 是表單格子前面的名稱

Private Sub CommandButton1_Click()

For ii = 1 To 14

x = Controls("Label" & ii)

If Controls("textbox" & ii) = "" Then

MsgBox " 注意 " & x & " 空白.": Exit Sub


End If
Next
End Sub


vba跑的了
※ 編輯: waiter337 (114.35.158.244), 09/23/2016 18:12:29
soyoso: label方面要實際是否調整流水號同textbox 09/23 18:28
soyoso: 因原本提供的檔案內是無對應上的 09/23 18:29
waiter337: 是的 後來我又重新調整過了表單上的排序 09/23 18:30
waiter337: Label1會對上textbox1 09/23 18:31
waiter337: 另外 09/23 20:11
Private Sub CommandButton31_Click()

For jj = 1 To 14

y = Controls("frame" & jj).Caption

If Controls("OptionButton" & jj).Value = True Then

MsgBox " 注意 " & y & " 空白.": Exit Sub

End If

Next
End Sub


由於框架frame1 與 按扭選項OptionButton1 是沒有遞增邏輯的

我想抓取frame1的名稱 "處理種類"
(或許之後我在設個列表,甚至是其他排序)

其下有3個按扭選項
利用
OptionButton1
OptionButton2
OptionButton3
來判斷是否有點選這樣

是否三個內有點選任1,或許本身frame1,有true跟false能夠判斷

是否有選擇其一了,不過也只能選一個

※ 編輯: waiter337 (114.35.158.244), 09/23/2016 20:17:54
或者大大們有沒有什麼類似的範本

像是vba的資料輸入表,各行各業的都可以

借我參考 我自己研究看看

我先google一下
※ 編輯: waiter337 (114.35.158.244), 09/23/2016 20:24:16
soyoso: 迴圈於各frame內,判斷controls為OptionButton是否有任一 09/23 21:27
soyoso: 個被選取 09/23 21:27

你可能也想看看

搜尋相關網站