user form 問題



贊助商連結


kankan
2001-09-27, 10:17 AM
麻煩大家, 我想問問如何將一個USER FORM輸入的資料,送到指定的儲存格呢?
謝謝!:confused:

贊助商連結


leonchou
2001-09-27, 12:46 PM
這個很容易阿, 程式的語法是這樣 --
Range([儲存格名稱or位置]) = [USER FORM名稱].[控制項名稱].Value
 
例如要把名為"User_Form1"USER FORM上文字方塊"Textbox1"的內容送到 A1 儲存格:
Range("A1") = User_Form1.Textbox1.Value
 
註:Range("A1") = Cells(1,1) , 若為目前工作表, 亦可簡寫為 [A1]

kankan
2001-09-27, 02:31 PM
謝謝你呀~~
不過如果我想重複使用此USERFORM,用來記錄資料,
想問問應用什麼碼呢,意思即第一記綠在A1,第二次自
動記綠在B1,如此類推,煩請賜教,謝謝

leonchou
2001-09-27, 10:05 PM
你可重複呼叫那 USER FORM. 而程式的內容則是這樣:
 
c = Application.WorksheetFunction.Counta(Rows(1)) + 1
Cells(1, c) = User_Form1.Textbox1.Value
 
〔註〕
假設第一列只有USER FORM要依序填入的資料,沒有其他內容。
第一行程式是利用函數算出第一列目前最右邊一個空格的欄號(第幾欄)。
第二行程式將變數 c 代入為欄號, 把 Textbox 內容填入其中。

kankan
2001-09-28, 09:57 AM
最初由 Leon Chou
你可重複呼叫那 USER FORM. 而程式的內容則是這樣:
 
c = Application.WorksheetFunction.Counta(Rows(1)) + 1
Cells(1, c) = User_Form1.Textbox1.Value
 
〔註〕
假設第一列只有USER FORM要依序填入的資料,沒有其他內容。
第一行程式是利用函數算出第一列目前最右邊一個空格的欄號(第幾欄)。
第二行程式將變數 c 代入為欄號, 把 Textbox 內容填入其中。

再次多謝你,十分感激,希望大家以後能多多研究
入回正題,LEON兄,又再想問問你,你說以上公式可以利用函數算出第一列目前最右邊一個空格的欄號,那麼,是否將ROWS(1)轉成COLUMNS(1)就可以算出目前下面一個空格?

leonchou
2001-09-28, 01:14 PM
Oh yeah, 係滴~~ ;) :D

kankan
2001-09-28, 05:36 PM
最初由 Leon Chou
Oh yeah, 係滴~~ ;) :D

我諗我要改名為問題少男了,因為我想問問點解我用你的方法後,每打一個英文字母,電腦就自動幫我記錄在下一個儲存格,例如我只想記錄apple及orange,電腦替我記錄了a,ap,app,appl,apple,o,or,ora,oran,orang,orange.....
LEON兄煩請再一次賜教,謝謝

leonchou
2001-09-29, 04:52 PM
嗯, 你的程式可能擺錯位置囉...
程式要放在 USER FORM 裡一個 Button 的 Click 事件裡
而不是放在 TextBox 的 (Change) 事件喔.
你按了那個 Button 後, TextBox 裡打好的字才被送出..