正常添寫完數據後會自動往下一欄,然後再重複著個動作。但是偶爾會出現沒有自動往下一欄格,而覆蓋掉原本欄位。
這個是點餐的公式
Private Sub NewB_Click()
ActiveSheet.Unprotect
LF = Range("J4").End(xlDown).Row + 1
Cells(LF, 10) = NText.Text
Cells(LF, 11) = CText.Text
Cells(LF, 12) = RText.Text
Cells(LF, 13) = MText.Text
Cells(LF, 14) = MtText.Text
Cells(LF, 15) = PText.Text
Cells(LF, 16) = OText.Text
Cells(LF, 9).Select
結帳Text.Text = Cells(LF, 17)
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, AllowFormattingCells:=True
NText.Text = " "
CText.Text = " "
RText.Text = " "
MText.Text = " "
MtText.Text = " "
PText.Text = " "
OText.Text = " "
End Sub
這個是庫存的公式
Private Sub NewB_Click()
ActiveSheet.Unprotect
LF = Range("C4").End(xlDown).Row + 1
Cells(LF, 3) = 奶油Text.Text
Cells(LF, 4) = 紅豆Text.Text
Cells(LF, 5) = 麻糬Text.Text
Cells(LF, 6) = 芋泥Text.Text
Cells(LF, 7) = 馬鈴薯Text.Text
Cells(LF, 8) = OREOText.Text
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, AllowFormattingCells:=True
奶油Text.Text = " "
紅豆Text.Text = " "
麻糬Text.Text = " "
芋泥Text.Text = " "
馬鈴薯Text.Text = " "
OREOText.Text = " "
End Sub
你把欄位都遮住了,
還問甚麼 XD
不過我上次看過你的畫面,
大概知道是甚麼問題.
所以你要先看懂它在寫甚麼啊 XD
話說...為什麼你的兩個函式名稱一樣?
不會呼叫錯嗎?
如果沒呼叫錯的話,
你是用J(上面那個)或C(下面那個)來判斷要處理哪一列,
所以你要確認這兩欄最下面一定有資料,
否則就會出現你說的情況.
另外,
建議一下,
要貼程式碼最好貼文字,
然後上下用`包起來,
如果有人要幫忙測是比較方便.
1.在 VBA 裡設定中斷點
2.(點 NewB_Click)執行停下來後,按 F8 一列一列執行就可以找出原因