กระทู้เก่าบอร์ด อ.Yeadram
        
           1,890   5		  
          
					  
		    URL.หัวข้อ / 
		    URL
        
        มีทศนิยมและไม่ต้องบันทึกจุดทศนิยม      
    
      เวลาคีย์ข้อมูลเข้า...ไม่ต้องระบุจุดทศนิยม (2 ตำแหน่ง)..และแต่เก็บข้อมูลให้เครื่องเก็บแบบมีทศนิยม
ข้อมูลที่คีย์เข้า ผลที่เก็บเข้าเครื่อง
4567 45.67
123 1.23
11 0.11
30 0.30
2 0.02
01 0.01
ไม่ทราบว่าผมจะต้องไปกำหนดที่ไหนครับ เป็น Input Mark หรือเปล่า (กำหนดไม่เป็นครับ)
    
    
  ข้อมูลที่คีย์เข้า ผลที่เก็บเข้าเครื่อง
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 
				
        
    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
    
  - กำหนด 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)
ยังไงก็ลองดูนะครับ
    
  - จากตัวอย่างคำถาม ในตารางถ้าฟิลด์ Data Type เป็น Number และ Field size เป็น Double (ซึ่งจากตัวอย่างก็น่าจะเป็นแบบนั้นได้)
- กำหนด Input mask เป็น 99.99!;0;# ก็จะสามารถทำได้ครับ
- ซึ่งลองทดสอบก็ใช้ได้ครับ เพียงแต่สิ่งสำคัญคือฟิลด์ที่ตาราง ต้องกำหนดรับค่าจุดทศนิยมด้วย (Double)
ยังไงก็ลองดูนะครับ
        
    5 @R11929    
        
    
      ขอบคุณครับ อ.สันติสุข
รบกวน อ. ช่วยหลายครั้งแล้ว ขอบพระคุณอย่างยิ่งครับ...ทดสอบแล้วใช้ได้
(ปล. วิธีการของ อาจารย์ ใช้ได้ทุกครั้งเลยครับ ไม่ต้องหาเพิ่มเติมเลยครับ)
ุคุณ TTT เดี๋ยวผมจะลองตามวิธีคุณ..ซึ่งอาจเป็นอีกวิธีที่ทำได้ครับ
    
  รบกวน อ. ช่วยหลายครั้งแล้ว ขอบพระคุณอย่างยิ่งครับ...ทดสอบแล้วใช้ได้
(ปล. วิธีการของ อาจารย์ ใช้ได้ทุกครั้งเลยครับ ไม่ต้องหาเพิ่มเติมเลยครับ)
ุคุณ TTT เดี๋ยวผมจะลองตามวิธีคุณ..ซึ่งอาจเป็นอีกวิธีที่ทำได้ครับ
      Time: 0.0600s
    
      
		
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 แสดงตัวอักขระที่กรอกทั้งหมดด้วยตัว * (เพื่อไม่ให้อ่านได้ เห็นแค่หลักที่ใส่)