返回列表 上一主題 發帖

如何讓inputbox 連續產生

如何讓inputbox 連續產生

各路神人,小弟現有一困擾,就是當在核對書名時排上架時(擺放清單),總是要剪剪貼貼。所以想用excel 寫一個迴圈程式,讓店長能直接輸入數字後,能對應到表格剪下來,產生另一份的擺放清單。但不知要怎麼讓inputbox 能有連續輸入的功能,及當輸入到特定值時能自動關掉。煩請指導了,謝謝

dim n as page
st = application.inputbox("數字", type:=1)
for each n in page("A2"A50")
if n.value=st then
range(Cells(st+1,"A"),Cells(st+1,"B")).select
(已選上的拷貝到sheet(2), 貼上(假設有文字的話跳到下一行) '這段不會寫
msgbox"已選上   " & Cells(st+1,"B").text

else
if st=0
msgbox"已完成選項"

end if
next

回復 2# koo

謝謝,我待會試看看. 但更大的問題是在連續輸入…

TOP

回復 4# 准提部林

Hi 准大, 我今天測試了, 要修改下列二個即可使用. 感謝.
只是會有當出現inputbox時,本身的取消無法離開, 要輸入0 or 000 即可跳出. 非常謝謝.


Sub Find_No()
Dim ST, xF As Range
Do
 ST = InputBox("數字")
 If ST = 0 Then Exit Do '按〔取消〕跳出
 If ST = "000" Then Exit Do '輸入〔特定值〕跳出
 If ST <> "" Then
   Set xF = [書本清冊!A2:A50].Find(ST, Lookat:=xlWhole)
   If xF Is Nothing Then
     MsgBox "找不到編號,請重新輸入! "
   Else
     xF.Resize(1, 2).Copy [擺放清單!A65536].End(xlUp)(2)
     Beep
   End If
 end If
Loop
End Sub

TOP

回復 8# 准提部林

是的= =. 還是謝謝准大. !

TOP

回復 8# stillfish00

感謝!!  Still fish, 我明天上班試看看.

TOP

回復 11# 准提部林

Hi 准大, 這幾天較忙遲回了.  我大致上已修正完成. 用後續的程式二個都可以。只是習慣問題.  但這幾天我又在思考另一個問題.. 再麻煩淮大了.  感謝


(1) 能否一次選擇 從編號X 到編號N,  並做防呆如被選過的話就msgbox "X" 已被選過 or msgbox "沒這本書啦" (其它功能我造之前的寫即可.

TOP

回復 13# 准提部林

是的, 就是這個意思. 淮大. 我再傳上來. 謝謝

TOP

本帖最後由 kerochen 於 2015-10-10 13:03 編輯

回復 15# 准提部林

Hi 准大, 我個人的思考如下, 我看明天能不能上傳給你看一下. 你的思考是正確的, 當你使用連續輸入時就可能會產生你上述的情形, 所以 我現在的寫法是 當我選到要核對的row,  row. coloridex=27.  直接上底色.  表示有處理過了. 如選到重覆的就跳出.  這樣的寫法很單純. 但只能單筆單筆的敲. 但如過有1百多筆的話我就要敲1百多筆, 所以才產生我能不能大量的輸入? 假設"中途" 找不到符合、或"重覆"選上的, 我就跳msgbox. 不再go. 也不讓msgbox有記住什麼的功能.  講這些最重要的就是" 大量輸入"有他的風險(重覆、找不到、輸入錯誤) , 代價就是"中斷".  讓你費神了. 也謝謝你願意不斷教導我.  如你住台中的話 就直接請你出來海尼根了 XD

其實那個想法是有問題的:
1.中途找不到符合者,提示訊息後,中斷?或只提醒,按MSGBOX確定,繼續往下執行?
2.中途找到符合者,又已存在(即重覆選取),同上問題?
3.不管找到或找不到,可能是輸入時手誤,如何判斷?
4.當MSGBOX提示多個後,如何記住是哪些有錯誤?
5.當有錯誤,是否又要重來一次?

TOP

        靜思自在 : 忘功不忘過,忘怨不忘恩。
返回列表 上一主題