看板 Office 關於我們 聯絡資訊
軟體: Office Excel 版本: 2010 手機發文,排版見諒… 寫了一個UserForm,裡面有幾個CommandButton。 目的是為了取代內定的MsgBox功能。 在使用MsgBox時,可以回傳使用者按下的是哪個按鈕,但是在自訂的UserForm卻找不到方式回傳… 試了以下方式: 1. 於UserForm裡加入一個Label1,每個按鈕按下時都會對這個Label賦值。 2. VBA裡再令變數 = UserForm1.Label1.Caption 但是無法成功,只會帶回Label1的預設值,也就是說關掉UserForm之後,對Label1的賦值就不見了。 想試著在unload UserForm之前就先取變數,但是好像無法?不知道有沒有前輩寫過類似的需求呢? -- ┌─────────────────────────────┐ 就這樣,終於到了啟程的日子。 和來機場送行的朋友們說著玩笑話,其實內心恍恍惚惚像在作夢。 也似乎是因為,為了走到「出發」這一步,耗盡了全部心力。 └─────────────────石田裕輔《不去會死!》─┘ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.136.102.241 ※ 文章網址: https://www.ptt.cc/bbs/Office/M.1524264033.A.A32.html
newacc: 要把值存在模組裡 04/21 08:40
foolkids: 在模組層次宣告變數的意思嗎? 04/21 09:30
soyoso: 賦值後,執行vba的流程是?於userform內按下commandbutton 04/21 10:27
soyoso: ?還是以其他方式? 04/21 10:27
foolkids: 藉由傳回的值來在原來sub內決定程序的後續執行,Command 04/21 10:52
foolkids: Button只是一個讓使用者選擇的概念 04/21 10:52
soyoso: 前者,如unload userform寫在模組程序內,則改為於 04/21 10:53
soyoso: commandbutton內傳值到程序,就可以unload userform 04/21 10:55
soyoso: 程序(變數)的方式 04/21 10:55
foolkids: 我會在CommandButton的程序內將Label賦值後關閉UserForm 04/21 10:55
foolkids: 。 04/21 10:55
soyoso: 抱歉應是 程序名稱 變數(或以label1.caption) 04/21 10:57
soyoso: 那流程是從sub內userform.show,讓使用者選擇後,unload 04/21 11:00
soyoso: 回原sub,可以取得所選取commandbutton的資訊 04/21 11:02
soyoso: 如果是的話sub上方public 變數,按下觸發事件內變數 = 04/21 11:05
soyoso: commandbutton要回傳的資訊 04/21 11:06
soyoso: sub內再引用該變數 04/21 11:07
foolkids: 其實我現在確實是在Sub內load userform,待user按下butt 04/21 11:08
foolkids: on後,寫入label並unload UserForm。回到sub後,設定變 04/21 11:08
foolkids: 數為label.caption。可是好像要在unload前取到變數?可 04/21 11:08
foolkids: 是我找不到在unload前將變數取回到sub的方式… 04/21 11:08
foolkids: 哦哦哦!好喔,我試試看public的方式,謝謝! 04/21 11:08
foolkids: So大,還是不行耶,已經設定共用變數了,UserForm.Show 04/21 13:08
foolkids: 之後會顯示變數未定義,所以繼承不過去 04/21 13:08
foolkids: 後來用一個奇怪的方式解決,但是還是想知道有沒有更直覺 04/21 13:13
foolkids: 的? 我在CommandButton_Click裡去呼叫原模組內的一個su 04/21 13:13
foolkids: b,這樣才可以直接對原模組內的Public變數賦值。 04/21 13:13
soyoso: https://youtu.be/pqxaFiaFzdg 測試sub userform.show 04/21 13:20
soyoso: userform commandbutton按下觸發寫入變數 unload是可回傳 04/21 13:21
soyoso: 所按下commandbutton的caption 04/21 13:21
foolkids: 奇怪… 寫法一樣卻沒辦法重現… 版本問題? 04/21 14:19
foolkids: 阿,我有個地方寫錯了… SO大的可行,謝謝! 04/21 14:28