มีทศนิยมและไม่ต้องบันทึกจุดทศนิยม
กระทู้เก่าบอร์ด อ.Yeadram

 1,739   5
URL.หัวข้อ / URL
มีทศนิยมและไม่ต้องบันทึกจุดทศนิยม

เวลาคีย์ข้อมูลเข้า...ไม่ต้องระบุจุดทศนิยม (2 ตำแหน่ง)..และแต่เก็บข้อมูลให้เครื่องเก็บแบบมีทศนิยม

ข้อมูลที่คีย์เข้า          ผลที่เก็บเข้าเครื่อง
4567                             45.67
123                               1.23
11                                 0.11
30                                 0.30
2                                   0.02
01                                 0.01

ไม่ทราบว่าผมจะต้องไปกำหนดที่ไหนครับ เป็น Input Mark หรือเปล่า (กำหนดไม่เป็นครับ)


5 Reply in this Topic. Dispaly 1 pages and you are on page number 1

1 @R11920
จากข้อมูลตัวอย่างก็ประมาณนี้ครับ

99.99!;0;#

จริงๆ ลองค้นหาคำว่า Input Mask แล้วลองปรับใช้ดูครับ
(ผมเคย Post ค่าต่างๆไว้ แต่จำไม่ได้ว่ากระทู้ไหน ขอ Post อีกที แล้วจะไม่ Post ให้เปลืองเนื้อที่เว็บอีกแล้ว)
กำหนด Input Mask (ใส่ข้อมูล) ในฟิลด์

ว่าง           ใส่อย่างไรก็ได้

0              รับเฉพาะตัวเลข 0 ถึง 9 (ต้องใส่เสมอ)

9              รับเฉพาะตัวเลข และ space (ไม่ใส่ก็ได้)

#             รับเฉพาะตัวเลข, space, +, - (ไม่ใส่ก็ได้)

L              รับเฉพาะอัขระ A ถึง Z (ต้องใส่เสมอ)

?              รับเฉพาะอัขระ A ถึง Z (ไม่ใส่ก็ได้)

A              รับเฉพาะตัวเลข และตัวอัขระ (ต้องใส่เสมอ)

a              รับเฉพาะตัวเลข และตัวอัขระ (ไม่ใส่ก็ได้)

&              รับอักขระได้ทุกตัว และ space (ต้องใส่เสมอ)

C               รับอักขระได้ทุกตัว และ space (ไม่ใส่ก็ได้)

>              ตัวอักขระที่ใส่ลงไป จะเปลี่ยนเป็นตัวใหญ่

<              ตัวอักขระที่ใส่ลงไป จะเปลี่ยนเป็นตัวเล็ก

!               เมื่อกรอกข้อมูลเสร็จ ข้อมูลจะถูกจัดให้ชิดขวา

. , : ; /       แสดงเครื่องหมายเหล่านี้ลงไปรวมกับข้อมูลที่กรอก

" "             แสดงตัวอักขระหลายตัว ที่อยู่ในเครื่องหมาย " " ลงไปรวมกับข้อมูลที่กรอก

\               แสดงตัวอักขระที่ตามหลัง \ ลงไปรวมกับข้อมูลที่กรอก

password    แสดงตัวอักขระที่กรอกทั้งหมดด้วยตัว * (เพื่อไม่ให้อ่านได้ เห็นแค่หลักที่ใส่)
2 @R11921
เข้าใจผิดกันทั้งสองท่านการเก็บค่าตัวเลขที่มีจุดทศนิยมหรือไม่มีทศนิยม หมายถึงการเก็บตัวเลขเพื่อใช้ในการคำนวน จะต้องตั้งค่าชนิดข้อมูลเป็น Number ชนิดข้อมูลเป็นNumber ไม่สามารถตั้งค่า Input maskได้ Input mask.ใช้ได้กับ Text และ date/time เท่านั้น
การตั้งค่าที่ถามมา ให้ไปตั้งค่าจุดทศนิยมที่คุณสมบัติครับ
3 @R11924
- กำหนด Input Mask เป็น 999...9 (มีจำนวนหลักเท่ากับจำนวนหลักสูงสุดที่จะป้อนได้)
- กำหนด Format property เป็น Standard, Decimal Place เป็น 2
- ใส่โค้ด (สมมุติชื่อ Text0) ไว้ที่ AfterUpdate event ว่า Text0 = Text0 / 100
4 @R11926
ขอบคุณครับคุณ tong ผมจำได้ว่าเคยทำให้เพื่อนได้นะ (เพราะความขี้เกียจใส่จุดเหมือนกัน) อาจต้องทดสอบก่อน
- จากตัวอย่างคำถาม ในตารางถ้าฟิลด์ Data Type เป็น Number และ Field size เป็น Double (ซึ่งจากตัวอย่างก็น่าจะเป็นแบบนั้นได้)
- กำหนด Input mask เป็น 99.99!;0;# ก็จะสามารถทำได้ครับ
- ซึ่งลองทดสอบก็ใช้ได้ครับ เพียงแต่สิ่งสำคัญคือฟิลด์ที่ตาราง ต้องกำหนดรับค่าจุดทศนิยมด้วย (Double)

ยังไงก็ลองดูนะครับ
5 @R11929
ขอบคุณครับ อ.สันติสุข
รบกวน อ. ช่วยหลายครั้งแล้ว ขอบพระคุณอย่างยิ่งครับ...ทดสอบแล้วใช้ได้
(ปล. วิธีการของ อาจารย์ ใช้ได้ทุกครั้งเลยครับ ไม่ต้องหาเพิ่มเติมเลยครับ)

ุคุณ TTT เดี๋ยวผมจะลองตามวิธีคุณ..ซึ่งอาจเป็นอีกวิธีที่ทำได้ครับ
@ ประกาศใช้งานเว็บบอร์ดใหม่ => บอร์ดเรียนรู้ Access สำหรับคนไทย
แล้วจะใส่ลิ้งอ้างอิงมาที่โพสต์เก่านี้หรือไม่ก็ตามสะดวกครับ
Time: 0.2379s