Page 1 of 1
ส่งค่า วว/ดด/ปป, ดด/ปป, ปป
Posted: Mon Jul 02, 2012 5:06 pm
by sup
เรียนอาจารย์ และท่านผู้รู้ครับ
ผมลองเขียน Code VBA ให้ Textbox ส่งค่าวันที่จาก Userform1 ไปเก็บไว้ที่ Sheet1 ต่อเนื่องไปเรื่อยๆ โดยอยากให้
Colum A = วันที่ - เดือน - ปีพ.ศ.
Colum B = เดือน - ปีพ.ศ.
Colum C = ปีพ.ศ.
ซึ่งผมจะทำได้แค่ Colum A อย่างเดียว(วันที่ - เดือน - ปี) ส่วน colum B,C ไม่สามารถทำได้ครับ ต้องใช้การจัดรูปแบบ Cell มาช่วย หากไม่ต้องการใช้การจัดรูปแบบ Cell ช่วย อยากใช้ CODE VBA เลยจะเขียนอย่างไรครับ
(ตามไฟล์แนบครับ
ขอบคุณทุกท่านล่วงหน้าครับ
Re: ส่งค่า วว/ดด/ปป, ดด/ปป, ปป
Posted: Mon Jul 02, 2012 5:56 pm
by snasui

ไม่ทราบว่าปัญหาของการใช้กาจัดรูปแบบเข้ามาช่วยนั้นคืออะไรครับ การจัดรูปแบบสามารถใช้ VBA จัดก็สามารถทำได้ครับ หรือต้องการให้ค่าในเซลล์เป็น Text แทน Number ช่วยอธิบายเพิ่มด้วยครับ
Re: ส่งค่า วว/ดด/ปป, ดด/ปป, ปป
Posted: Mon Jul 02, 2012 8:30 pm
by sup
ในงานจริงที่ผมทำซึ่งจะมี Code อยู่หลายชุด แต่เมื่อส่งค่าจาก textbox ไปยังเซลที่ได้มีการจัดรูปแบบรอรับข้อมูลไว้แล้ว ผลที่ได้ก็จะเป็น วว/ดด/ปป ตลอดครับ ไม่ปรับให้ตามที่เราจัดรูปแบบเซลรอไว้ครับ ซึ่งจะไม่เหมือนกับไฟล์แนบที่ผมทำมาซึ่งจัดรูปแบบรอไว้ก็จะปรับให้ครับ เลยคิดว่าน่าจะใช้ Code เป็นตัวสั่งการน่าจะแก้ปัญหาได้ครับอาจารย์
Re: ส่งค่า วว/ดด/ปป, ดด/ปป, ปป
Posted: Mon Jul 02, 2012 8:36 pm
by snasui

ลองใช้ Code จัดรูปแบบดูครับ เช่น
Code: Select all
Range("A1")=Format(TextBox1.Text,"mm-yy")
Re: ส่งค่า วว/ดด/ปป, ดด/ปป, ปป
Posted: Mon Jul 02, 2012 8:50 pm
by sup
ขอบคุณครับอาจารย์ เดี๋ยวผมจะลองดูครับ เป็นอย่างไรจะแจ้งให้ทราบภายหลังนะครับ ขอบคุณครับ
Re: ส่งค่า วว/ดด/ปป, ดด/ปป, ปป
Posted: Mon Jul 02, 2012 9:04 pm
by snasui

ลองดูตัวอย่าง Code ด้านล่างนี้ดีกว่าครับ เป็นการปรับ Format ใน Excel เลย หลังจากนำค่ามาวางแล้วก็ให้เพิ่ม Code การจัดรูปแบบเข้าไปอีก 1 บรรทัด เช่น
Code: Select all
Worksheets("Sheet1").Cells(R, 2).NumberFormat = "mm-yy"
Re: ส่งค่า วว/ดด/ปป, ดด/ปป, ปป
Posted: Tue Jul 03, 2012 2:54 pm
by sup
ขอบคุณครับอาจารย์ แต่ยังติดปัญหาว่าผลที่ได้ครับ เช่นเรา Key 7/3/201 ผลออกมาเป็น 07-12 ครับ ไม่เป็น ก.ค. 55 ครับ จะต้องปรับ Code อย่างไรเพิ่มครับ ผมไป Format Cell แล้วก็ไม่หายครับ
Re: ส่งค่า วว/ดด/ปป, ดด/ปป, ปป
Posted: Tue Jul 03, 2012 5:45 pm
by snasui

คลิกขวาในเซลล์ใด ๆ แล้วเลือก Format Cells... > Custom แล้วสังเกตดูว่าการกำหนด
วันเดือนปีเป็นไทยนั้นใช้ Code ใดได้บ้าง ยกตัวอย่างการกำหนดเป็นเดือน ปี สามารถเปลี่ยน Code ที่ผมให้ไป จาก
"mm-yy" เป็น
"ดดด-ปป" เป็นต้น
Re: ส่งค่า วว/ดด/ปป, ดด/ปป, ปป
Posted: Wed Jul 04, 2012 7:48 am
by sup
ขอบคุณครับอาจารย์
ผมลองแล้วครับก็ไม่ได้ตามต้องการ โดยเปลี่ยนเป็น Thai > "ดดด-ปป" จะขึ้นเป็นเลขไทยครับ ยังไม่ได้ลองเป็น English จะลองปรับไปเรื่อยๆครับ
ขอบคุณมากครับ
Re: ส่งค่า วว/ดด/ปป, ดด/ปป, ปป
Posted: Wed Jul 04, 2012 9:20 am
by bank9597

ลองปรับจาก "ดดด-ปป" เป็น "mmm-bb" ดูครับ
Re: ส่งค่า วว/ดด/ปป, ดด/ปป, ปป
Posted: Wed Jul 04, 2012 9:42 am
by sup
ได้แล้วครับทุกท่าน
ต้องขออภัยอย่างยิ่งครับที่รบกวนชวนปวดหัว จริงแล้ว Code ที่อาจารย์ คนควนแนะนำมาถูกต้องแล้วครับ พอตรวจสอบอย่างละเอียดพบว่าผมผิดพลาดเอง พิมพ์ Code ตกไป 1 ตัวครับ จาก ดดด/ปป เป็น ดด/ปป (ตาลายครับ Code เยอะมาก) เพราะนึกเอะใจอยู่แล้ว Code ที่อาจารย์ให้มาน่าจะถูกต้อง แต่ทำไมถึงทำไม่ได้ ต้องมีผิดพลาดแน่ๆ เลยค่อยๆนั้งดู(ตั้งใจมาก) จึงพบครับว่าผิด
ต้องข้ออภัยทุกท่านครับที่รบกวนเวลา ยังมีอีกหลายประเด็นครับที่ต้องรบกวน แต่จะค่อยๆมาทีละเรื่องครับ ขอลองเขียนเองก่อนติดตรงไหนผมแก้ไขจนด้วยเกล้าแล้วจะเข้ามาถามต่อนะครับ
ขอบคุณสำหรับความรู้ทุกๆเกล็ดที่ได้รับครับ