: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

การเปลี่ยนชื่อ....

ฟอรัมถาม-ตอบปัญหาการใช้งานสูตรและฟังก์ชัน Excel
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. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
User avatar
mr.zatan
Bronze
Bronze
Posts: 305
Joined: Sun Sep 05, 2010 8:31 am
Excel Ver: 2016
Contact:

การเปลี่ยนชื่อ....

#1

Post by mr.zatan »

เงื่อนไขมีอยู่ว่า ""ถ้าชื่อTGE 2006ให้เปลี่ยนเป็นET2006 ( ตัวเลขจะเป็นอะไรก็ได้ ไม่จำเป็นต้องเป็น 2006 ข้อสำคัญคือใส่ ET ข้างหน้า)

( ชื่อเดิมอยู่ที่ B3 ชื่อที่เปลี่ยนให้ไปแสดงที่ D3)
User avatar
bank9597
Guru
Guru
Posts: 3868
Joined: Wed Aug 17, 2011 11:49 am

Re: การเปลี่ยนชื่อ....

#2

Post by bank9597 »

mr.zatan wrote:เงื่อนไขมีอยู่ว่า ""ถ้าชื่อTGE 2006ให้เปลี่ยนเป็นET2006 ( ตัวเลขจะเป็นอะไรก็ได้ ไม่จำเป็นต้องเป็น 2006 ข้อสำคัญคือใส่ ET ข้างหน้า)

( ชื่อเดิมอยู่ที่ B3 ชื่อที่เปลี่ยนให้ไปแสดงที่ D3)
:D ตามโจทย์เลยน่ะครับ
ที่ D3 คีย์ =SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(B3,"G",""),"T","")," ","T")
Forum Rules
  1. อย่าใช้ภาษาแชทในการตอบ-ถาม
  2. ตั้งชื่อกระทู้ให้สื่อถึงปัญหาและไม่เจาะจงตัวผู้ตอบ
  3. ให้อธิบายปัญหาและระบุคำตอบที่ต้องการมาในฟอรัม
  4. ควรแนบไฟล์ตัวอย่างมาที่ฟอรั่ม
  5. หากใช้ VBA ให้ลองเขียนมาเองก่อนเสมอ
  6. แจ้งผลการใช้งานทุกครั้งเมื่อได้รับคำตอบ
User avatar
mr.zatan
Bronze
Bronze
Posts: 305
Joined: Sun Sep 05, 2010 8:31 am
Excel Ver: 2016
Contact:

Re: การเปลี่ยนชื่อ....

#3

Post by mr.zatan »

ขอบคุณครับ...
User avatar
mr.zatan
Bronze
Bronze
Posts: 305
Joined: Sun Sep 05, 2010 8:31 am
Excel Ver: 2016
Contact:

Re: การเปลี่ยนชื่อ....

#4

Post by mr.zatan »

เพิ่มอีกนิดครับ....

1. =SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(B3,"G",""),"T","")," ","T")

*** ถ้าชื่อมีตัว B ให้ดึงมาเฉพาะตัวเลข เช่น ( TGB 2007 เป็น 2007 )
User avatar
bank9597
Guru
Guru
Posts: 3868
Joined: Wed Aug 17, 2011 11:49 am

Re: การเปลี่ยนชื่อ....

#5

Post by bank9597 »

:D
ที่ D3 คีย์ =IF(IFERROR(FIND("B",B3),0)=0,SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(B3,"G",""),"T","")," ","T"),SUBSTITUTE(B3,LEFT(B3,FIND(" ",B3)),"")) คัดลอกลงมา
You do not have the required permissions to view the files attached to this post.
Forum Rules
  1. อย่าใช้ภาษาแชทในการตอบ-ถาม
  2. ตั้งชื่อกระทู้ให้สื่อถึงปัญหาและไม่เจาะจงตัวผู้ตอบ
  3. ให้อธิบายปัญหาและระบุคำตอบที่ต้องการมาในฟอรัม
  4. ควรแนบไฟล์ตัวอย่างมาที่ฟอรั่ม
  5. หากใช้ VBA ให้ลองเขียนมาเองก่อนเสมอ
  6. แจ้งผลการใช้งานทุกครั้งเมื่อได้รับคำตอบ
User avatar
mr.zatan
Bronze
Bronze
Posts: 305
Joined: Sun Sep 05, 2010 8:31 am
Excel Ver: 2016
Contact:

Re: การเปลี่ยนชื่อ....

#6

Post by mr.zatan »

เปิดใน Office 2003 แล้วมันขึ้น #NAME?

Code: Select all

=IF(_xlfn.IFERROR(FIND("B",B4),0)=0,SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(B4,"G",""),"T","")," ","T"),SUBSTITUTE(B4,LEFT(B4,FIND(" ",B4)),""))
และผมก็ลองเปลี่ยน Code ทุกอย่างเหมือนกันเดะก็ยังขึ้น #NAME? อยู่ดี

ไม่ทราบว่าเป็นเพราะเหตุใดครับ
User avatar
tupthai
Bronze
Bronze
Posts: 302
Joined: Sat Feb 04, 2012 2:49 pm

Re: การเปลี่ยนชื่อ....

#7

Post by tupthai »

IFERROR ใช้ได้เฉพาะ version 2007 ขึ้นไปครับ
User avatar
mr.zatan
Bronze
Bronze
Posts: 305
Joined: Sun Sep 05, 2010 8:31 am
Excel Ver: 2016
Contact:

Re: การเปลี่ยนชื่อ....

#8

Post by mr.zatan »

tupthai wrote:IFERROR ใช้ได้เฉพาะ version 2007 ขึ้นไปครับ
ใน 2003 พอจะมี Code ไหนที่พอจะทดแทนกันได้มัยครับ
User avatar
tupthai
Bronze
Bronze
Posts: 302
Joined: Sat Feb 04, 2012 2:49 pm

Re: การเปลี่ยนชื่อ....

#9

Post by tupthai »

=IF(ISNUMBER(FIND("B",B3))=FALSE,SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(B3,"G",""),"T","")," ","T"),SUBSTITUTE(B3,LEFT(B3,FIND(" ",B3)),""))
User avatar
mr.zatan
Bronze
Bronze
Posts: 305
Joined: Sun Sep 05, 2010 8:31 am
Excel Ver: 2016
Contact:

Re: การเปลี่ยนชื่อ....

#10

Post by mr.zatan »

ขอบคุณมากครับ

พอดีไปเจอวิธีอื่นมา....โดยการเพิ่ม Module

Function IFERROR(ToEvaluate As Variant, Default As Variant) As Variant
'Duplicates Excel 2007 functionality (UDF)
If IsArray(ToEvaluate) Then
IFERROR = IIf(IsError(ToEvaluate(1)), Default, ToEvaluate)
Else
IFERROR = IIf(IsError(ToEvaluate), Default, ToEvaluate)
End If
End Function



ก็จะทำให้ใช้ Function IFERROR ได้
Post Reply