Page 1 of 1
การสั่งบันทึกข้อมูลด้วยโค๊ดที่กระทัดรัด
Posted: Thu Oct 17, 2013 6:08 pm
by bank9597

สวัสดีครับ ผมขอรบกวนเรื่องโค๊ด VBA หน่อยครับ
พอดีว่าผมเขียนโค๊ดที่สั่งบันทึกข้อมูลลงบนเนื้อที่ที่ไม่ต่อเนื่องกันไม่ได้ เลยได้แต่เขียนโค๊ดสั่งบันทึกข้อมูลทีละชุด ทำให้การทำงานโค๊ดช้าลง รบกวนอาจารย์ช่วยปรับโค๊ดให้มันกระทัดรัดกว่านี้ได้ไหมครับ
เงื่อนไขคือ คัดลอกข้อมูลในตารางสีส้ม ไปวางในตารางที่สร้างขึ้นมา 2 ตาราง ที่ไม่ต่อเนื่องกัน
ตารางด้านบน 23 บรรทัด
ตารางด้านล่าง 22 บรรทัดครับ
ผมได้ทำตัวอย่างไว้ในไฟล์แล้วครับ
โค๊ดอยู่ในโมดูลชื่อ copy ชื่อ copy_to_print
Re: การสั่งบันทึกข้อมูลด้วยโค๊ดที่กระทัดรัด
Posted: Thu Oct 17, 2013 7:49 pm
by snasui

หากไม่ติดปัญหาใดก็ใช้ได้ สามารถปรับให้สั้นลงได้ตามตัวอย่างด้านล่าง
Code: Select all
Sub Test()
With Sheets("ใบโอน")
.Range("a10:c32") = .Range("k10:m32").Value
.Range("i10:i32") = .Range("n10:n32").Value
.Range("a40:c61") = .Range("k33:m54").Value
.Range("i40:i61") = .Range("n33:n54").Value
End With
End Sub
Re: การสั่งบันทึกข้อมูลด้วยโค๊ดที่กระทัดรัด
Posted: Thu Oct 17, 2013 8:09 pm
by bank9597

ขอบคุณมากครับ
เห็นภาษาไทยในโค๊ดแว็บๆ ทำไงถึงจะมีแบบนั้นบ้าง อิอิ
Re: การสั่งบันทึกข้อมูลด้วยโค๊ดที่กระทัดรัด
Posted: Thu Oct 17, 2013 8:13 pm
by snasui
bank9597 wrote:เห็นภาษาไทยในโค๊ดแว็บๆ ทำไงถึงจะมีแบบนั้นบ้าง

ช่วยอธิบายเพิ่มเติมหรือจับภาพมาให้ดูว่าต้องการให้มีลักษณะเป็นอย่างไรครับ
Re: การสั่งบันทึกข้อมูลด้วยโค๊ดที่กระทัดรัด
Posted: Thu Oct 17, 2013 8:17 pm
by bank9597

โค๊ดด้านล่างนี้ครับ คำว่า "ใบโอน" จะเป็นภาษาต่างด้าว
Code: Select all
Sub Test()
With Sheets("ãºâ͹")
.Range("a10:c32") = .Range("k10:m32").Value
.Range("i10:i32") = .Range("n10:n32").Value
.Range("a40:c61") = .Range("k33:m54").Value
.Range("i40:i61") = .Range("n33:n54").Value
End With
End Sub
แต่ดูโค๊ดของอาจารย์ คำว่า "ใบโอน" เป็นภาษาไทยเลย ไม่ทราบว่าใน vbe ของอาจารย์ สามารถแสดงภาษาไทยได้เลยหรือครับ
Code: Select all
Sub Test()
With Sheets("ใบโอน")
.Range("a10:c32") = .Range("k10:m32").Value
.Range("i10:i32") = .Range("n10:n32").Value
.Range("a40:c61") = .Range("k33:m54").Value
.Range("i40:i61") = .Range("n33:n54").Value
End With
End Sub
Re: การสั่งบันทึกข้อมูลด้วยโค๊ดที่กระทัดรัด
Posted: Thu Oct 17, 2013 8:48 pm
by snasui

ใน VBE สามารถกำหนดให้แสดงภาษาไทยได้ครับ
โดยเข้าเมนู Tools > Options > กำหนด Font ที่แถบ Editor Format เลือกภาษาที่มี (Thai) ต่อท้ายเช่น Tahoma (Thai)
Re: การสั่งบันทึกข้อมูลด้วยโค๊ดที่กระทัดรัด
Posted: Thu Oct 17, 2013 8:56 pm
by bank9597
snasui wrote:
ใน VBE สามารถกำหนดให้แสดงภาษาไทยได้ครับ
โดยเข้าเมนู Tools > Options > กำหนด Font ที่แถบ Editor Format เลือกภาษาที่มี (Thai) ต่อท้ายเช่น Tahoma (Thai)

ดูภาษาต่างด้าวมานานแรมปี เพิ่งจะรู้วันนี้เอง