การพิมพ์สูตรลงฟิวด์บนฟอร์ม



0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

02 มิ.ย. 61 , 10:15:49
อ่าน 615 ครั้ง

prajak

การพิมพ์สูตรลงฟิวด์บนฟอร์ม
« เมื่อ: 02 มิ.ย. 61 , 10:15:49 »


จากรูปพอจะเป็นไปได้ไหมครับว่า ในฟิวด์บนฟอร์มเราสามารถพิมพ์สูตรเพื่อหาผลลัพธ์เหมือนใน excel ด้วยเหตุผลว่า บางครั้งข้อมูลที่จะเอามาป้อนนั้นมีหลายจำนวน จะได้ไม่ต้องมากดบนเครื่องคิดเลขครับ หรือพอจะมีแนวทางอื่นไหมครับ
« แก้ไขครั้งสุดท้าย: 02 มิ.ย. 61 , 16:50:11 โดย prajak »

 

02 มิ.ย. 61 , 16:59:35
ตอบกลับ #1

pizza_p

: การพิมพ์สูตรลงฟิวด์บนฟอร์ม
« ตอบกลับ #1 เมื่อ: 02 มิ.ย. 61 , 16:59:35 »
Private Sub Output_AfterUpdate()
On Error GoTo Output_Err:
Dim myValue As Variant

myValue = Eval(Me.Output)
Me.Output = myValue

Output_Err:
  ' bypass error

End Sub

หมายเหตุ: ไม่ต้องใส่เครื่องหมาย = นะครับ ใส่ตัวเลข + - * / ได้เลย
« แก้ไขครั้งสุดท้าย: 02 มิ.ย. 61 , 17:01:54 โดย pizza_p »

 
โพสต์นี้ได้รับคำขอบคุณจาก: prajak

02 มิ.ย. 61 , 20:39:37
ตอบกลับ #2

prajak

: การพิมพ์สูตรลงฟิวด์บนฟอร์ม
« ตอบกลับ #2 เมื่อ: 02 มิ.ย. 61 , 20:39:37 »
รู้สึกว่ามันจะใช้กับฟิวด์ที่เป็น Number ไม่ได้หรือเปล่าครับ ลองแล้วไม่ได้ แต่ลองกับtext ได้
แล้วถ้าเป็นแบบนั้นจริง ฟิวด์text จะใช้ไปคำนวณได้เหรอครับ

 

02 มิ.ย. 61 , 22:45:43
ตอบกลับ #3

pizza_p

: การพิมพ์สูตรลงฟิวด์บนฟอร์ม
« ตอบกลับ #3 เมื่อ: 02 มิ.ย. 61 , 22:45:43 »
ใช้อันนี้แทน แต่ต้องกด Enter หลังจากใส่สูตรทุกครั้ง

Private Sub Output_KeyDown(KeyCode As Integer, Shift As Integer)
On Error GoTo Output_Err:
Dim myValue As Variant

If KeyCode = vbKeyReturn Then
    myValue = Eval(Me.Output.Text)
    Me.Output = myValue
End If
   
Output_Err:
    'bypass error

End Sub

 
โพสต์นี้ได้รับคำขอบคุณจาก: prajak

03 มิ.ย. 61 , 12:17:31
ตอบกลับ #4

prajak

: การพิมพ์สูตรลงฟิวด์บนฟอร์ม
« ตอบกลับ #4 เมื่อ: 03 มิ.ย. 61 , 12:17:31 »
ได้แล้วครับ ขอบคุณมากครับ

 


บอร์ดเรียนรู้ Access สำหรับคนไทย