กระทู้เก่าบอร์ด อ.สุภาพ ไชยา
357 7
URL.หัวข้อ /
URL
ผมต้องการแยกคำนำหน้าชื่อออกจากชื่อครับซึ่งมี ( , )
ซึ่ง link มาจาก dbf ครับ ตัวอย่างข้อมูล แดง คนตรง,ด.ช. และ ชมพู่ คนสวย,นางสาว เป็นต้นครับ ผมอยากนำมาสลับที่มาไว้ข้างหน้า โดยทำใน แบบสอบถาม เพื่อพิมพ์ซองจดหมาย โดยที่ข้อมูลใน dbf ไม่เปลี่ยนแปลงครับ
7 Reply in this Topic. Dispaly 1 pages and you are on page number 1
1 @R01361
ข้อมูลมีจำนวนมากมั้ยครับ
2 @R01362
ใช้ Instr() และ Mid() เข้าช่วยครับ
? mid("แดง คนตรง,ด.ช.",instr("แดง คนตรง,ด.ช.",",")+1)
ด.ช.
? left("แดง คนตรง,ด.ช.",instr("แดง คนตรง,ด.ช.",",")-1)
แดง คนตรง
3 @R01364
ประมาณ 80,000 กว่า ครับ แต่เราค้นเอามาเฉพาะ ID ที่ต้องการ วันหนึ่งก็ประมาณ 20-40 รายนี่ละครับ หรือมีวิธีอื่นแนะนำหรือเปล่าครับ เพราะตอนนี้ใช้เขียนเองอยู่ครับ
4 @R01366
อ.สุภาพ ครับแล้วถ้ารายชื่อมันเปลี่ยนแปลงตามแต่ละรายละครับ คือถ้าพิมพ์ชื่อลงไปเหมือน อ. ก็จะได้ครับ คือผมต้องการให้มันเปลี่ยนทุกรายที่ โหลดมา เช่น 10 รายก็ เปลี่ยนทั้งสิบรายรอการดึงมาพิมพ์ครับ ผมพยามนำมาประยุคแต่ไม่ได้ครับไม่รู้ผมคิดถูกหรือเปล่า
name: Format(Mid("name",InStr("name",",")+1))
5 @R01367
ถ้าทำใน Query โดยที่ฟีลด์ที่เก็บคือ Name
ให้ลองใช้
แยกคำนำหน้า
MyTitle: Mid("[ชื่อฟีลด์ที่เก็บชื่อ]",InStr("[ชื่อฟีลด์ที่เก็บชื่อ]",",")+1)
แยกชื่อสกุล
MyName: Left("[ชื่อฟีลด์ที่เก็บชื่อ]",InStr("[ชื่อฟีลด์ที่เก็บชื่อ]",",")-1)
6 @R01368
ทำตามที่ อ. บอก
MyTitle: Mid("[name]",InStr("[name]",",")+1)
มันจะ นำชื่อฟีลด์คือ NAMEมาในรูป[NAME]ครับ
7 @R01369
อันดับแรกเลย คือ ไม่ควรตั้งชื่อฟีลด์ให้ตรงกับคำสงวนของ Access เช่น Name, Type, Field, Date, Month, Year
ให้ลองใส่เหมือนที่ผมแนะนำดูครับ
หรือจะให้มีคำนำหน้าและชื่ออยู่ด้วยกัน ก็ลอง
MyName: Mid("[ชื่อฟีลด์ที่เก็บชื่อ]",InStr("[ชื่อฟีลด์ที่เก็บชื่อ]",",")+1) & Left("[ชื่อฟีลด์ที่เก็บชื่อ]",InStr("[ชื่อฟีลด์ที่เก็บชื่อ]",",")-1)
Time: 0.1279s