: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. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
tantanz
Member
Member
Posts: 36
Joined: Fri Nov 23, 2012 4:28 pm

ต้องการสลับพื้นที่เซลล์และข้อความในเซลล์ค่ะ

#1

Post by tantanz »

ต้องการสลับพื้นที่ที่แสดงเลข 6 และ เลข 7 ค่ะ แต่จาก code ที่ได้ลองทำมันยังสลับไม่ได้
รบกวนช่วยดูให้หน่อยนะคะ :D

ปล.เวลาสลับกดที่ปุ่มวงกลมด้านขวาค่ะ เวลาเลือกพื้นที่ ลากเม้าส์คลุมช่องเซลที่ต้องการแล้วสลับ(คลุมทุกช่องที่เป็นเลข 6 หรือเลข 7)
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31255
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: ต้องการสลับพื้นที่เซลล์และข้อความในเซลล์ค่ะ

#2

Post by snasui »

:D ลองปรับ Code เป็นตามด้านล่างครับ

Code: Select all

Sub SwitchColor()
    Dim Temp1 As Variant
    Dim Temp2 As Variant
    Dim Range1 As Range
    Dim Range2 As Range
    On Error Resume Next
    Set Range1 = Application.InputBox(Prompt:="เลือกเครื่องจักรที่ต้องการสลับเครื่องที่1", _
    Title:="Please select range", Default:=Selection.Address, Type:=8)
    Set Range2 = Application.InputBox(Prompt:="เลือกเครื่องจักรที่ต้องการสลับเครื่องที่2", _
    Title:="Please select range", Default:=Selection.Address, Type:=8)
    
    Temp1 = Range1.Interior.Color
    Range1.Interior.Color = Range2.Interior.Color
    Range2.Interior.Color = Temp1
    
    Temp2 = Range1.Range("A1").Value
    Range1 = Range2.Range("A1").Value
    Range2 = Temp2
    
    MsgBox "ทำการสลับเรียบร้อยแล้ว"
    MsgBox Worksheets("sheet1").Range("G57").Value
End Sub
tantanz
Member
Member
Posts: 36
Joined: Fri Nov 23, 2012 4:28 pm

Re: ต้องการสลับพื้นที่เซลล์และข้อความในเซลล์ค่ะ

#3

Post by tantanz »

ลองปรับแล้วค่ะสลับได้ แต่ช่องเซลยังเหมือนเดิม คือต้องการให้ 6 มาสลับกับ 7 แต่ยังคงพื้นที่เดิมของ 6 ไว้ เมื่อย้ายแล้ว พื้นที่ของ 6 จะเป็น G13:H15 แทน
ดังรูปค่ะ :)
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31255
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: ต้องการสลับพื้นที่เซลล์และข้อความในเซลล์ค่ะ

#4

Post by snasui »

:D ให้ยกเลิกการ Merge เซลล์ ออกไปก่อน หากไม่ยกเลิกตอนขึ้น InputBox เมื่อคลิกเลือกจะกำหนดค่าให้เซลล์เดียว เนื่องจากถูกมองว่าเป็นเซลล์เดียวกัน เราสามารถคีย์ให้ครอบคลุมขอบเขตของเซลล์ตามที่ควรจะเป็น ใน InputBox ก็ย่อมได้ แต่น่าจะเสียเวลามากกว่า จากนั้นปรับ Code เป็นตามด้านล่างครับ

Code: Select all

Sub SwitchColor()
    Dim Temp1 As Variant
    Dim Temp2 As Variant
    Dim Range1 As Range
    Dim Range2 As Range

    Dim r1addr As String, r2addr As String
    On Error Resume Next
    Set Range1 = Application.InputBox(Prompt:="เลือกเครื่องจักรที่ต้องการสลับเครื่องที่1", _
    Title:="Please select range", Default:=Selection.Address, Type:=8)
    Set Range2 = Application.InputBox(Prompt:="เลือกเครื่องจักรที่ต้องการสลับเครื่องที่2", _
    Title:="Please select range", Default:=Selection.Address, Type:=8)
    r1addr = Range1.Address
    r2addr = Range2.Address
    
    Range1.Cut Range("N1")
    Range2.Cut Range(r1addr)
    Range1.Cut Range(r2addr)
    
    Temp1 = Range1.Interior.Color
    Range1.Interior.Color = Range2.Interior.Color
    Range2.Interior.Color = Temp1
    
    MsgBox "ทำการสลับเรียบร้อยแล้ว"
    MsgBox Worksheets("sheet1").Range("G57").Value
End Sub
tantanz
Member
Member
Posts: 36
Joined: Fri Nov 23, 2012 4:28 pm

Re: ต้องการสลับพื้นที่เซลล์และข้อความในเซลล์ค่ะ

#5

Post by tantanz »

ไม่ได้ค่ะอาจารย์ ลองปรับ code แล้ว จะออกมาตามรูปแบบนี้เลย :sg:

หรือมันคือข้อจำกัดของ excel ในการสลับช่องเซลล์คะ :shock:
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31255
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: ต้องการสลับพื้นที่เซลล์และข้อความในเซลล์ค่ะ

#6

Post by snasui »

:D ผมทดสอบแล้วไม่มีปัญหาใดตามภาพด้านล่างครับ
You do not have the required permissions to view the files attached to this post.
User avatar
bank9597
Guru
Guru
Posts: 3868
Joined: Wed Aug 17, 2011 11:49 am

Re: ต้องการสลับพื้นที่เซลล์และข้อความในเซลล์ค่ะ

#7

Post by bank9597 »

:shock: :shock: :shock: :shock: :shock: :shock: :shock: :shock: :shock: :shock: :shock:
เจอกระทู้แบบนี้ และคำตอบของอาจารย์ ตาถลุนหลุดจากเบ้ากันไปข้างนึงแน่ครับ อย่างน้อยๆก็ผมคนนึงครับ
:shock: :shock: :shock: :shock: :shock: :shock: :shock: :shock: :shock: :shock: :shock:
Forum Rules
  1. อย่าใช้ภาษาแชทในการตอบ-ถาม
  2. ตั้งชื่อกระทู้ให้สื่อถึงปัญหาและไม่เจาะจงตัวผู้ตอบ
  3. ให้อธิบายปัญหาและระบุคำตอบที่ต้องการมาในฟอรัม
  4. ควรแนบไฟล์ตัวอย่างมาที่ฟอรั่ม
  5. หากใช้ VBA ให้ลองเขียนมาเองก่อนเสมอ
  6. แจ้งผลการใช้งานทุกครั้งเมื่อได้รับคำตอบ
Post Reply