Excel Vba inputbox 依序帶入B欄儲存格, 煩請大師指點迷津!?
- 帖子
- 19
- 主題
- 6
- 精華
- 0
- 積分
- 26
- 點名
- 0
- 作業系統
- Win7
- 軟體版本
- office2013
- 閱讀權限
- 10
- 註冊時間
- 2015-8-13
- 最後登錄
- 2017-4-11
|
Excel Vba inputbox 依序帶入B欄儲存格, 煩請大師指點迷津!?
如附圖, 我能夠將輸入的值(字串)依序帶入B欄位中嗎?例B9>B10>B11
Private Sub sheet1_Click()
imputbox("請輸入Project name:")
Sub end
|
|
|
|
|
|
|
- 帖子
- 2839
- 主題
- 10
- 精華
- 0
- 積分
- 2895
- 點名
- 0
- 作業系統
- 〔略〕
- 軟體版本
- 〔略〕
- 閱讀權限
- 100
- 性別
- 男
- 來自
- 〔略〕
- 註冊時間
- 2013-5-13
- 最後登錄
- 2025-2-15
|
2#
發表於 2015-9-18 16:11
| 只看該作者
1.〔未輸入文字〕,保持待輸入狀態
2.按〔Enter〕或〔確定〕,輸出至B欄底下
3.按〔取消〕結束- Sub 輸入B()
- Dim xR As Range, T
- Set xR = Cells(Rows.Count, 2).End(xlUp)(2) '定位〔待填入〕儲存格
-
- Do: T = InputBox("請輸入Project name:")
- If StrPtr(T) = 0 Then Exit Sub '按〔取消〕結束
- If T <> "" Then xR = T: Set xR = xR(2, 1) '填入文字,再定位下一個〔待輸入〕格
- Loop
- End Sub
複製代碼 |
|
|
|
|
|
|
- 帖子
- 19
- 主題
- 6
- 精華
- 0
- 積分
- 26
- 點名
- 0
- 作業系統
- Win7
- 軟體版本
- office2013
- 閱讀權限
- 10
- 註冊時間
- 2015-8-13
- 最後登錄
- 2017-4-11
|
3#
發表於 2015-9-21 09:53
| 只看該作者
准大我終於等到您的回覆了, 我在知識家一直在期待您的回覆, 也非感謝您能抽空回答!!!!!!!!
小的住在桃園不曉得您是否有開班授課之類的課程?
有個疑惑, 不曉得能否定義帶入的欄位由B9開始呢? |
|
|
|
|
|
|
- 帖子
- 2839
- 主題
- 10
- 精華
- 0
- 積分
- 2895
- 點名
- 0
- 作業系統
- 〔略〕
- 軟體版本
- 〔略〕
- 閱讀權限
- 100
- 性別
- 男
- 來自
- 〔略〕
- 註冊時間
- 2013-5-13
- 最後登錄
- 2025-2-15
|
4#
發表於 2015-9-21 11:24
| 只看該作者
本帖最後由 准提部林 於 2015-9-21 11:26 編輯
回復 3# EddieLiang
1.知識+,改版改得面目全非,偶爾看一下!
2.至于〔開班授課〕?可能沒二天招牌就要拆下來(只懂EXCEL的千分之一不到)
3.從〔B9〕填入?每次都重新在這格往下填,原有的資料怎辦?還是每次B9以下都是空白,只是等輸入?
可以再清楚描述需求嗎?
另.若想對某樓層發表對應意見,請按該樓層左下方的〔回復〕! |
|
|
|
|
|
|
- 帖子
- 19
- 主題
- 6
- 精華
- 0
- 積分
- 26
- 點名
- 0
- 作業系統
- Win7
- 軟體版本
- office2013
- 閱讀權限
- 10
- 註冊時間
- 2015-8-13
- 最後登錄
- 2017-4-11
|
5#
發表於 2015-9-21 14:20
| 只看該作者
回復 4# 准提部林
准大小的有榮幸讓您解答真的感恩到五體投地了, 對於VB邏輯還不太熟悉的我又要在社會上生存只好買本書自學兼爬文!!!!
B9為第一格填入的欄位, 後面依序帶入B10 B11 B12的欄位, 原有的資料需要保留 !
假設B9 B10 B11有資料的話就往B12帶入! |
|
|
|
|
|
|
- 帖子
- 2839
- 主題
- 10
- 精華
- 0
- 積分
- 2895
- 點名
- 0
- 作業系統
- 〔略〕
- 軟體版本
- 〔略〕
- 閱讀權限
- 100
- 性別
- 男
- 來自
- 〔略〕
- 註冊時間
- 2013-5-13
- 最後登錄
- 2025-2-15
|
6#
發表於 2015-9-21 15:16
| 只看該作者
回復 5# EddieLiang - Sub 輸入B()
- Dim xR As Range, T
- Set xR = Cells(Rows.Count, "B").End(xlUp)(2) 'B欄最後一筆的下一空白格
- If xR.Row < 9 Then Set xR = [B9] '若此格列號小于9,則從B9開始
- Do
- T = InputBox("請輸入Project name:")
- If StrPtr(T) = 0 Then Exit Sub '按〔取消〕結束
- If T <> "" Then xR = T: Set xR = xR(2, 1) '填入文字,再定位下一個〔待輸入〕格
- Loop
- End Sub
複製代碼
除了看書,VBE內建說明檔也是非常好的學習管道,輸入關鍵字即可找到相關資料及範例, |
|
|
|
|
|
|
- 帖子
- 19
- 主題
- 6
- 精華
- 0
- 積分
- 26
- 點名
- 0
- 作業系統
- Win7
- 軟體版本
- office2013
- 閱讀權限
- 10
- 註冊時間
- 2015-8-13
- 最後登錄
- 2017-4-11
|
7#
發表於 2015-9-22 11:40
| 只看該作者
BOSS.zip (47.61 KB)
回復 6# 准提部林
非常感謝准大的指導,
不曉得是不適小的領悟力太差,如果T為inputbox的變數
1.我沒辦法結合我現有的code直接把Acoustic Engineer (Pearl)搜尋的值改成inputbox的T的變數嗎?
2.Cells(Rows.Count, "B").End(xlUp)(2) 該列的code我有點不理解為何如此撰寫? |
|
|
|
|
|
|
- 帖子
- 2839
- 主題
- 10
- 精華
- 0
- 積分
- 2895
- 點名
- 0
- 作業系統
- 〔略〕
- 軟體版本
- 〔略〕
- 閱讀權限
- 100
- 性別
- 男
- 來自
- 〔略〕
- 註冊時間
- 2013-5-13
- 最後登錄
- 2025-2-15
|
8#
發表於 2015-9-22 13:40
| 只看該作者
回復 7# EddieLiang
~~我能夠將輸入的值(字串)依序帶入B欄位中嗎?
將 inputbox 輸入值填入B欄啊!!!
大大的問題神龍見首不見尾,咱摸不清,光看檔內程式碼也不懂!!!
還有,寫程式碼時,〔變數〕儘量不要使用VBA內建的〔屬性.方法〕,
例如:VALUE,CLEAR,COUNT,容易造成不可預料的錯誤! |
|
|
|
|
|
|
- 帖子
- 19
- 主題
- 6
- 精華
- 0
- 積分
- 26
- 點名
- 0
- 作業系統
- Win7
- 軟體版本
- office2013
- 閱讀權限
- 10
- 註冊時間
- 2015-8-13
- 最後登錄
- 2017-4-11
|
9#
發表於 2015-9-22 14:31
| 只看該作者
回復 8# 准提部林
謝謝准大, 您指導我的方式可以成功運行!!!!:) :) |
|
|
|
|
|
|