กระทู้เก่าบอร์ด อ.สุภาพ ไชยา
281 4
URL.หัวข้อ /
URL
... เรียนอาจารย์สุภาพครับ ...
ขอถามเรื่องเกี่ยวกับ Inputmark หน่อยครับ
คือว่า อยากจะดึงค่ามาจาก combo น่ะครับ ซึ่งค่าจาก combo เป็น เลข 1,2,3,... ปกติ
แล้วผมได้ทำการ ตั้งค่า เลขใน combo โดย set รุปแบบ ให้เป็นแบบว่า ถ้าเป็นเลขตัวเดียวให้ แสดง 0 นำหน้าจะได้ครบสองหลัก เช่น ถ้า 1 จะเป็น 01 หรือ 9 จะเป็น 09 แต่ถ้าเป็นสองหลักอยู่แล้ว เช่น 10 ก็จะเป็น 10 เท่าเดิม
(จะดึงมา จาก 2 combo นะครับ)
ต่อมา ทีนี้ผมต้องการดึงค่า จาก combo มายยัง textbox โดยให้ textbox นั้นดึงค่ามาจาก combo แล้วสามารถ พิมต่อได้ ซึ่งผมได้ตั้ง inputmark ไว้น่ะครับ เป็ฯดังนี้
inputmark ปกติของ text คือ 0000\-000;;_
แต่ว่า ต้องการจะดึงมาจาก combo 4 หลักแรก
ผมเลยเขียนคำสั่งว่า
text.inputmark = combo1 & combo2 & "\-000;;_"
น่ะครับ ซึ่งผลออกมาก็สามารถดึงมาจาก combo ทั้งสองมาแสดงยัง textbox ได้
แต่มันไม่นำเลข 0 ติดมาด้วยสิคับ ในกรณีที่เป็น หลักเดียว ปกติผมต้องการให้มัน เพิ่ม 0 นำหน้า ให้ครบสองหลักด้วย ซึ่งแสดงบน combo ทั้งสอง ก็ได้สองหลักปกติ แต่พอดึงมายัง textbox แล้ว กลับดึงมา combo ละหลัก แล้วที่เหลือต้องใส่เพิ่มเอง เช่น
combo1 = 01
combo2 = 05
text จะเท่ากับ _1_5-___ น่ะครับ
ซึ่งที่ต้องการ นั้นจะต้องเป็น 0105-___ น่ะครับ
ผมลอง set ชนิด ของ combo ทั้งสองเป็นทั้ง number autonumber text แล้ว แล้วก็ set รุปแบบ เป็น 00 แล้ว ซึ่งมันก็แสดงบน combo เป็นเลขสองหลักถูกต้อง
แต่ทำไมดึงมายัง textbox แล้วกลับไม่ได้น่ะครับ
ซึ่งตอนนี้ รูปแบบของ textbox คือ @@@@-@@@
และ inputmark ของ textbox คือ 0000\-000;;_
อาจารย์ช่วยแนะนำด้วยครับ คิดมาหลายวันแล้ว
ขอบคุณมากๆ ครับ
คือว่า อยากจะดึงค่ามาจาก combo น่ะครับ ซึ่งค่าจาก combo เป็น เลข 1,2,3,... ปกติ
แล้วผมได้ทำการ ตั้งค่า เลขใน combo โดย set รุปแบบ ให้เป็นแบบว่า ถ้าเป็นเลขตัวเดียวให้ แสดง 0 นำหน้าจะได้ครบสองหลัก เช่น ถ้า 1 จะเป็น 01 หรือ 9 จะเป็น 09 แต่ถ้าเป็นสองหลักอยู่แล้ว เช่น 10 ก็จะเป็น 10 เท่าเดิม
(จะดึงมา จาก 2 combo นะครับ)
ต่อมา ทีนี้ผมต้องการดึงค่า จาก combo มายยัง textbox โดยให้ textbox นั้นดึงค่ามาจาก combo แล้วสามารถ พิมต่อได้ ซึ่งผมได้ตั้ง inputmark ไว้น่ะครับ เป็ฯดังนี้
inputmark ปกติของ text คือ 0000\-000;;_
แต่ว่า ต้องการจะดึงมาจาก combo 4 หลักแรก
ผมเลยเขียนคำสั่งว่า
text.inputmark = combo1 & combo2 & "\-000;;_"
น่ะครับ ซึ่งผลออกมาก็สามารถดึงมาจาก combo ทั้งสองมาแสดงยัง textbox ได้
แต่มันไม่นำเลข 0 ติดมาด้วยสิคับ ในกรณีที่เป็น หลักเดียว ปกติผมต้องการให้มัน เพิ่ม 0 นำหน้า ให้ครบสองหลักด้วย ซึ่งแสดงบน combo ทั้งสอง ก็ได้สองหลักปกติ แต่พอดึงมายัง textbox แล้ว กลับดึงมา combo ละหลัก แล้วที่เหลือต้องใส่เพิ่มเอง เช่น
combo1 = 01
combo2 = 05
text จะเท่ากับ _1_5-___ น่ะครับ
ซึ่งที่ต้องการ นั้นจะต้องเป็น 0105-___ น่ะครับ
ผมลอง set ชนิด ของ combo ทั้งสองเป็นทั้ง number autonumber text แล้ว แล้วก็ set รุปแบบ เป็น 00 แล้ว ซึ่งมันก็แสดงบน combo เป็นเลขสองหลักถูกต้อง
แต่ทำไมดึงมายัง textbox แล้วกลับไม่ได้น่ะครับ
ซึ่งตอนนี้ รูปแบบของ textbox คือ @@@@-@@@
และ inputmark ของ textbox คือ 0000\-000;;_
อาจารย์ช่วยแนะนำด้วยครับ คิดมาหลายวันแล้ว
ขอบคุณมากๆ ครับ
4 Reply in this Topic. Dispaly 1 pages and you are on page number 1
2 @R04159
ลองแล้วครับ มันก็แสดงมาแค่ หลักเดียวอ่ะครับ ไม่ยอม ติด 0 มาด้วย
แก้ไงดีครับ
แก้ไงดีครับ
3 @R04160
ผมลองทำตามที่อ.สุภาพแนะนำก็ได้นะครับ
Private Sub cmb0_AfterUpdate()
Me.Text2 = Format(Me.cmb, "00") & Format(Me.cmb0, "00") _ & "-"
End Sub
ได้
? 0105-
Private Sub cmb0_AfterUpdate()
Me.Text2 = Format(Me.cmb, "00") & Format(Me.cmb0, "00") _ & "-"
End Sub
ได้
? 0105-
4 @R04161
ขอโทษครับพอดีพิมพ์ผิดนิดหน่อยให้ลบตรงนี้ออก _
Private Sub cmb0_AfterUpdate()
Me.Text2 = Format(Me.cmb, "00") & Format(Me.cmb0, "00") & "-"
End Sub
Private Sub cmb0_AfterUpdate()
Me.Text2 = Format(Me.cmb, "00") & Format(Me.cmb0, "00") & "-"
End Sub
Time: 0.1415s
=Format(1,"00")
จะได้ 01