:D snasui.com ยินดีต้อนรับ :D
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย :thup: สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ :arrow: ระบุ Version ของ Excel
:!: โปรดทราบ :!:
  1. กรุณาอ่านกฎการใช้บอร์ด (Forum rules) ในตำแหน่งด้านบนของแต่ละบอร์ด
  2. การสมัครสมาชิก การ Login การกู้คืนรหัสผ่าน
    1. สมัครสมาชิกดูขั้นตอนได้ที่ :arrow: สมัครสมาชิก
    2. Login เข้าระบบโดยคลิกปุ่ม Login ตรงมุมขวาบนของหน้านี้ :roll:
    3. การ Login ผ่าน Facebook ดูวิธีที่ :arrow: Login ผ่าน Facebook
    4. ลืมรหัสผ่านสามารถรับรหัสใหม่ได้ที่ :arrow: Reset รหัสผ่าน
  3. มีปัญหาการใช้งาน แจ้งผู้ดูแลระบบได้ที่ :arrow: ติดต่อผู้ดูแลระบบ
  4. กำหนดการตั้งค่าส่วนตัว เช่นตั้งค่าภาษาเป็นไทยหรืออังกฤษดูได้ที่ :arrow: ตั้งค่าส่วนตัว
  5. การตั้งและตอบกระทู้ดูได้ที่ :arrow: วิธีการตั้งและตอบกระทู้
  6. การจัดรูปแบบตัวอักษรด้วย bbcode ในช่องแสดงความคิดเห็นดูได้ที่ :arrow: จัดรูปแบบตัวอักษร
  7. กำหนดขนาดตัวอักษรใน Browser ดูได้ที่ :arrow: กำหนดขนาดตัวอักษรใน Browser

ขออนุญาตสอบถามเรื่องการใช้ฟังก์ชั่น contcat ในการเขื่อมต่อและเปลี่ยนข้อความ

ฟอรัมถาม-ตอบปัญหาการใช้งาน MS Excel and VBA
Forum rules
  1. ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
  2. ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
  3. กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
  4. กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
  5. กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
  6. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
9KiTTi
Member
Member
Posts: 227
Joined: Thu Jun 28, 2012 3:46 pm
Excel Ver: 2016,2019

ขออนุญาตสอบถามเรื่องการใช้ฟังก์ชั่น contcat ในการเขื่อมต่อและเปลี่ยนข้อความ

#1

Post by 9KiTTi »

ขออนุญาตสอบถามเรื่องการใช้ฟังก์ชั่น contcat ในการเขื่อมต่อและเปลี่ยนข้อความ โดยที่กำหนดให้ช่อง B3 มีรูปแบบข้อความเป็น 6601-OM-01 C3 เป็น 6601-OM-02 D3 เป็น 6602-OM-01 และE3 เป็น 6602-OM-02 ซึ่งความหมายแต่ละส่วน ส่วนแรก 4 ตัวแรก 66 คือ ปี พ.ศ. 01 คือ งวดแรกของเดือน (วันที่ 1-15) 02 คือ งวดที่ 2 ของเดือน (16-สิ้นเดือน) และ ชุดเลข 01 และ 02 ที่ต่อจาก OM คือ 01 คือ งวดแรกของเดือน (วันที่ 1-15) 02 คือ งวดที่ 2 ของเดือน (16-สิ้นเดือน) โดยที่ผมต้องการให้เปลี่ยนข้อความที่แสดงในช่อง B3 ถึง Y3 จากเดือน 01 เป็น 02 ครบทั้ง 12 เดือน และเปลี่ยนเลขเดือนหลังปีพ.ศ. ให้ครบทุกเดือน และ 01 หลัง OM เป็น 01 และ 02 ซึ่งเท่ากับว่า 1 เดือนจะมี 2 ช่อง

Code: Select all

=CONCAT(TEXT(B1,"bb")-0,"01","-","OP","-","01")
ผมทำได้แค่รวมข้อความ แต่ไม่สามารถเปลี่ยนเลขเดือน และเลขงวดให้สัมพันธ์กันได้ รบกวนชี้แนะผมด้วย ขอบพระคุณครับ
You do not have the required permissions to view the files attached to this post.
jirakorn.png
Member
Member
Posts: 4
Joined: Wed Sep 27, 2023 11:43 pm
Excel Ver: 365

Re: ขออนุญาตสอบถามเรื่องการใช้ฟังก์ชั่น contcat ในการเขื่อมต่อและเปลี่ยนข้อความ

#2

Post by jirakorn.png »

สวัสดีครับ ผมเขียนเป็นสูตรเพื่อให้ได้ผลลัพธ์แบบที่คุณระบุมา เพียงแต่ว่ามันจะต้องใช้ที่ column B ถึง Y เท่านั้นนะครับผม

B3 =CONCAT(TEXT($B$1, "bb"), BASE(INT(COLUMN()/2), 10, 2), "-OM-", BASE(MOD(COLUMN()-2,2)+1, 10, 2))

Copy จาก B3 ถึง Y3
9KiTTi
Member
Member
Posts: 227
Joined: Thu Jun 28, 2012 3:46 pm
Excel Ver: 2016,2019

Re: ขออนุญาตสอบถามเรื่องการใช้ฟังก์ชั่น contcat ในการเขื่อมต่อและเปลี่ยนข้อความ

#3

Post by 9KiTTi »

jirakorn.png wrote: Wed Oct 18, 2023 10:53 pm สวัสดีครับ ผมเขียนเป็นสูตรเพื่อให้ได้ผลลัพธ์แบบที่คุณระบุมา เพียงแต่ว่ามันจะต้องใช้ที่ column B ถึง Y เท่านั้นนะครับผม

B3 =CONCAT(TEXT($B$1, "bb"), BASE(INT(COLUMN()/2), 10, 2), "-OM-", BASE(MOD(COLUMN()-2,2)+1, 10, 2))

Copy จาก B3 ถึง Y3
ขอบพระคุณมากครับ ใช้ได้อย่างที่ต้องการครับ :thup: :thup: :thup:
User avatar
norkaz
Gold
Gold
Posts: 1739
Joined: Wed Jan 12, 2011 7:59 pm
Excel Ver: 2013,365

Re: ขออนุญาตสอบถามเรื่องการใช้ฟังก์ชั่น contcat ในการเขื่อมต่อและเปลี่ยนข้อความ

#4

Post by norkaz »

...

อีกตัวอย่าง

B3
=6600+INT(SEQUENCE(,99,2)/2)&"-OM-"&0&MOD(SEQUENCE(,99,2),2)+1

**สนับสนุนฟอรั่ม กรุณาคลิกโฆษณาที่หน้าเพจ***

แมวใหญ่ Bigcat9
RCA พระราม9 กรุงเทพฯ
9KiTTi
Member
Member
Posts: 227
Joined: Thu Jun 28, 2012 3:46 pm
Excel Ver: 2016,2019

Re: ขออนุญาตสอบถามเรื่องการใช้ฟังก์ชั่น contcat ในการเขื่อมต่อและเปลี่ยนข้อความ

#5

Post by 9KiTTi »

norkaz wrote: Thu Oct 19, 2023 8:03 am ...

อีกตัวอย่าง

B3
=6600+INT(SEQUENCE(,99,2)/2)&"-OM-"&0&MOD(SEQUENCE(,99,2),2)+1

**สนับสนุนฟอรั่ม กรุณาคลิกโฆษณาที่หน้าเพจ***

แมวใหญ่ Bigcat9
RCA พระราม9 กรุงเทพฯ
ขอบพระคุณมากครับ
9KiTTi
Member
Member
Posts: 227
Joined: Thu Jun 28, 2012 3:46 pm
Excel Ver: 2016,2019

Re: ขออนุญาตสอบถามเรื่องการใช้ฟังก์ชั่น contcat ในการเขื่อมต่อและเปลี่ยนข้อความ

#6

Post by 9KiTTi »

norkaz wrote: Thu Oct 19, 2023 8:03 am ...

อีกตัวอย่าง

B3
=6600+INT(SEQUENCE(,99,2)/2)&"-OM-"&0&MOD(SEQUENCE(,99,2),2)+1

**สนับสนุนฟอรั่ม กรุณาคลิกโฆษณาที่หน้าเพจ***

แมวใหญ่ Bigcat9
RCA พระราม9 กรุงเทพฯ
ขออนุญาตขอคำอธิบายเกี่ยวกับรูปแบบฟังก์ชั่นได้ไหมครับ ขอบคุณครับ
User avatar
norkaz
Gold
Gold
Posts: 1739
Joined: Wed Jan 12, 2011 7:59 pm
Excel Ver: 2013,365

Re: ขออนุญาตสอบถามเรื่องการใช้ฟังก์ชั่น contcat ในการเขื่อมต่อและเปลี่ยนข้อความ

#7

Post by norkaz »

9KiTTi wrote: Thu Oct 19, 2023 11:34 am
norkaz wrote: Thu Oct 19, 2023 8:03 am ...

อีกตัวอย่าง

B3
=6600+INT(SEQUENCE(,99,2)/2)&"-OM-"&0&MOD(SEQUENCE(,99,2),2)+1

**สนับสนุนฟอรั่ม กรุณาคลิกโฆษณาที่หน้าเพจ***

แมวใหญ่ Bigcat9
RCA พระราม9 กรุงเทพฯ
ขออนุญาตขอคำอธิบายเกี่ยวกับรูปแบบฟังก์ชั่นได้ไหมครับ ขอบคุณครับ
รูปแบบฟังก์ชั่น สามารถหาได้ ตาม www. ทั่วไป ในที่นี้หลักๆ ประกอบด้วย
SEQUENCE
INT
MOD

การทำความเข้าใจกับองค์ประกอบทั้งหมด ลองแกะไปตามนี้ดูครับ ทำไปทีละขั้น

"การถอดล็อก หรือสูตร ควรถอดจากข้างในไปข้างนอก ทีละชุด"

ส่วนที่เชื่อมด้วย & ให้มองโดยการแยกสูตรนั้นๆออกจากกันก่อน แล้วค่อยนำสูตรมาประกอบกัน
เพื่อให้ผลลัพธ์เป็นไป ตามที่โจทย์กำหนด

จะช่วยสามารถมองเห็นภาพรวมทั้งหมด ได้ชัดเจนมากกว่า การถอดล็อก จาก ข้างนอกไปข้างใน แบบ รวดเดียว

a) =SEQUENCE(,99,2)
ได้เลข 2-99 วิ่ง จากซ้ายไปขวา


b) กลเลขลำดับเรียงชุดละ 2 ตัว
=INT(SEQUENCE(,99,2)/2)
ได้เลข 1 1 2 2 3 3 4 4 ....ถึง...

c) =6600+INT(SEQUENCE(,99,2)/2)
ได้เลข 6601 6601 6602 6602 6603 6603 6604 6604... ไปเรื่อยๆ


d) =6600+INT(SEQUENCE(,99,2)/2)&"-OM-"&0
ได้
6601-OM-0 6601-OM-0 6602-OM-0 6602-OM-0


e) =SEQUENCE(,99,2)
ได้เลข 2-99 วิ่ง จากซ้ายไปขวา


f) กลเลขสลับ 1 2 1 2 1 2 1 2 ....
=MOD(SEQUENCE(,99,2),2)+1
ได้เลข 1 2 1 2 1 2 1 2…วิ่งไปทางขวา

g) d&f
=6600+INT(SEQUENCE(,99,2)/2)&"-OM-"&0&MOD(SEQUENCE(,99,2),2)+1

**สนับสนุนฟอรั่ม กรุณาคลิกโฆษณาที่หน้าเพจ***

แมวใหญ่ Bigcat9
RCA พระราม9 กรุงเทพฯ
9KiTTi
Member
Member
Posts: 227
Joined: Thu Jun 28, 2012 3:46 pm
Excel Ver: 2016,2019

Re: ขออนุญาตสอบถามเรื่องการใช้ฟังก์ชั่น contcat ในการเขื่อมต่อและเปลี่ยนข้อความ

#8

Post by 9KiTTi »

ขอบพระคุณมากครับ จะนำไปปรับใช้ครั้งต่อๆไปครับ
Post Reply