台灣最大程式設計社群網站
線上人數
894
 
會員總數:245228
討論主題:189098
歡迎您免費加入會員
討論區列表 >> ACCESS >> 求助:如何不要經過On Click(滑鼠去點)或者On Enter等等,就能(自動)計算出欄位數值呢
[]  
[我要回覆]
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
求助:如何不要經過On Click(滑鼠去點)或者On Enter等等,就能(自動)計算出欄位數值呢
價值 : 10 QP  點閱數:241 回應數:16

樓主

李陶然
門外漢
0 5
189 34
發送站內信

我要執行的程式碼寫在_On Click裡面...
我希望不要經過任何按鍵 這欄位可以自動更新
要如何設定? 如何做到?
感謝!

https://imagizer.imageshack.com/img924/9127/yjArt4.jpg
https://imagizer.imageshack.com/img921/7803/RHZgrk.jpg

別忘捐VP感謝幫助你的人 新手會員瞧一瞧
1樓
作者回應

李陶然
檢舉此回應
問題 影片說明~
https://youtu.be/CIK93smX_B0
本篇文章回覆於2019-11-10 23:09
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
不錯的參考

小茂
檢舉此回應
在主程式寫一呼叫涵式,將子程式的資料用 Recordset 資料表化,你就可以在主程式作全部的計算。
然後在子程式的 "AfterUpdate" & "AfterDelConfirm" 事件裡面直接呼叫主程式裡寫的那隻涵式就可以了。

如果你看不懂可以先去尋找 DAO.Recordset 的用法。
本篇文章回覆於2019-11-11 14:17
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
不錯的參考

小茂
檢舉此回應
還一個更簡單的辦法 你將On Click裡面的程式碼 自定義為呼叫涵式,然後在子程式的 "AfterUpdate" & "AfterDelConfirm" 事件裡面直接呼叫就可以了。
本篇文章回覆於2019-11-12 08:02
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
不錯的參考

P陳
檢舉此回應
試試如下
表單上有 Text1 Text2 Text3
Text3 的控制項資料來源 = [Text1] + [Text2]

當 Text1 Text2 皆有資料時 Text3 就會自動帶入資料了


本篇文章回覆於2019-11-12 16:44
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
作者回應

李陶然
檢舉此回應
to~P陳 大大您好
控制項資料來源 不是簡單的運算 是(依照上面數量)做比較選項如下:

If 送貨方式.Value = "來店自取" Then
折扣.Value = 0

ElseIf 送貨方式.Value = "宅配-ATM" And Text51.Value >= 3000 Then
折扣.Value = 0
ElseIf 送貨方式.Value = "宅配-貨到付款" And Text51.Value >= 3000 Then
折扣.Value = 90

ElseIf 送貨方式.Value = "宅配-ATM" And Text64.Value >= 1 And Text64.Value <= 3 Then
折扣.Value = 160
ElseIf 送貨方式.Value = "宅配-ATM" And Text64.Value >= 4 And Text64.Value <= 9 Then
折扣.Value = 225
ElseIf 送貨方式.Value = "宅配-ATM" And Text64.Value >= 10 And Text64.Value <= 22 Then
折扣.Value = 290
ElseIf 送貨方式.Value = "宅配-ATM" And Text64.Value > 22 Then
折扣.Value = 290

ElseIf 送貨方式.Value = "宅配-貨到付款" And Text64.Value >= 1 And Text64.Value <= 3 Then
折扣.Value = 190
ElseIf 送貨方式.Value = "宅配-貨到付款" And Text64.Value >= 4 And Text64.Value <= 9 Then
折扣.Value = 285
ElseIf 送貨方式.Value = "宅配-貨到付款" And Text64.Value >= 10 And Text64.Value <= 22 Then
折扣.Value = 380
ElseIf 送貨方式.Value = "宅配-貨到付款" And Text64.Value > 22 Then
折扣.Value = 380
Else
End If

這樣的運算 該寫在哪裡呢?
當我輸入打完(上面的欄位)"數量" 就會自動更新"折扣"的值
謝謝!
本篇文章回覆於2019-11-12 23:10
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
6樓
作者回應

李陶然
檢舉此回應
問題 影片說明:
https://youtu.be/wRJls8Z8xM8

感謝各位大大!
本篇文章回覆於2019-11-12 23:20
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
7樓
作者回應

李陶然
檢舉此回應
我是初學者 只學基礎 很多看不懂
但是還是感謝各位大大的回覆解答
請儘量詳細點簡單點的 範例程式碼說明
再次感謝各位大大幫忙!



本篇文章回覆於2019-11-13 08:59
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
8樓
最有價值解答

小茂
檢舉此回應
直接貼上這段

sub 運費計算()

If 送貨方式.Value = "來店自取" Then
折扣.Value = 0

ElseIf 送貨方式.Value = "宅配-ATM" And Text51.Value >= 3000 Then
折扣.Value = 0
ElseIf 送貨方式.Value = "宅配-貨到付款" And Text51.Value >= 3000 Then
折扣.Value = 90

ElseIf 送貨方式.Value = "宅配-ATM" And Text64.Value >= 1 And Text64.Value <= 3 Then
折扣.Value = 160
ElseIf 送貨方式.Value = "宅配-ATM" And Text64.Value >= 4 And Text64.Value <= 9 Then
折扣.Value = 225
ElseIf 送貨方式.Value = "宅配-ATM" And Text64.Value >= 10 And Text64.Value <= 22 Then
折扣.Value = 290
ElseIf 送貨方式.Value = "宅配-ATM" And Text64.Value > 22 Then
折扣.Value = 290

ElseIf 送貨方式.Value = "宅配-貨到付款" And Text64.Value >= 1 And Text64.Value <= 3 Then
折扣.Value = 190
ElseIf 送貨方式.Value = "宅配-貨到付款" And Text64.Value >= 4 And Text64.Value <= 9 Then
折扣.Value = 285
ElseIf 送貨方式.Value = "宅配-貨到付款" And Text64.Value >= 10 And Text64.Value <= 22 Then
折扣.Value = 380
ElseIf 送貨方式.Value = "宅配-貨到付款" And Text64.Value > 22 Then
折扣.Value = 380
Else
End If

end sub


***********************************************
然後再子程式的 "AfterUpdate" & "AfterDelConfirm" 事件裡面都貼上下列

Call Form_訂貨主表.運費計算

本篇文章回覆於2019-11-13 11:24
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
9樓
作者回應

李陶然
檢舉此回應
to 小茂 大大
非常感謝!
問題解決了~讚!

也感謝上面各位大大熱心回復
感恩!
本篇文章回覆於2019-11-13 19:21
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
10樓
作者回應

李陶然
檢舉此回應
請問各位前輩大大,

如影片問題說明如下
https://youtu.be/MBxt105u764

在【數量的值】用鍵盤↑↓變更 為何沒有馬上更新【運費的值】
非要經過兩次↑↓才會變更【運費的值】呢?

是設定哪個事件呢?
才可以一次↑(或↓)就馬上更新【運費的值】

我在影片很多事件內放入函數:
(Call Form_訂貨主表.運費計算)

但都無效

求解感恩!

本篇文章回覆於2019-11-14 20:37
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
11樓
作者回應

李陶然
檢舉此回應
to 小茂 大大

請查看一下

站內信留言

非常感謝!
本篇文章回覆於2019-11-20 18:14
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
12樓
回應

小茂
檢舉此回應
Call Form_訂貨主表.運費計算
Me.Form.Requery '表單更新

在加第2行
本篇文章回覆於2019-11-22 17:06
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
13樓
作者回應

李陶然
檢舉此回應
to 小茂 大大

Me Form Requery '表單更新 加在第二行 變成 "數量"欄位無法輸入了

問題如影片說明~

https://youtu.be/zHJvQSclPgg

求解 感謝!

本篇文章回覆於2019-11-22 18:44
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
14樓
回應

小茂
檢舉此回應
事件 只要放 "AfterUpdate" & "AfterDelConfirm" 裡面 AfterUpdate 是該欄位數值更新後觸發,AfterDelConfirm 是該欄位確認刪除動作後觸發。
其它你不清楚的事件不要亂放
本篇文章回覆於2019-11-25 09:41
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
15樓
作者回應

李陶然
檢舉此回應
to 小茂 大大

問題解決了

只放單一AfterUpdate事件 (我用2010版 沒有AfterDelConfirm)

感謝您!

(我有發送站內信給您喔)
本篇文章回覆於2019-11-26 23:14
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   

回覆
如要回應,請先登入.