: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
🪷 คำแสดงเจตนา
ขอผลแห่งการให้ความรู้นี้ จงกลับไปยังผู้ที่เป็นเจ้าของเดิม แม้ข้าพเจ้าจะไม่รู้จักท่านก็ตาม ขอให้แสงแห่งปัญญาที่ท่านเคยจุดไว้ ได้กลับไปเติมเต็มชีวิตของท่านอีกครั้ง และขอให้เจตนาของข้าพเจ้าเป็นการคืนความดีอย่างสงบ

อยากขอสอบถามการรวมข้อมูลโดยใช้ VBA ค่ะ

ฟอรัมถาม-ตอบปัญหาการใช้งาน Macro และ 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. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
zenmaki
Member
Member
Posts: 7
Joined: Mon Sep 05, 2011 1:48 am

อยากขอสอบถามการรวมข้อมูลโดยใช้ VBA ค่ะ

#1

Post by zenmaki »

รบกวนสอบถามอาจารย์หน่อยค่ะ
คือได้ส่งตัวอย่างไฟล์ไปให้ดู คือ ข้อมูล การเติมคลอรีน ของประปา วันที่ 1 กะกลางวัน (ไฟล์1) วันที่ 1-2 กะกลางคืน (ไฟล์ 1-2) วันที่ 2 กะกลางวัน ซึ่งข้อมูลจริงๆที่ต้องทำ เป็นข้อมูลทั้ง 365 วัน โดยต้องการให้เกิดการรวมข้อมูล โดยใช้ VBA เชื่อมโยง หากมีการแก้ไขข้อมูลในนี้ ไฟล์รวมก็จะต้องแก้ไขตาม เช่น ไฟล์ 1 ไฟล์ 1-2 ไฟล์ 2 เรื่อง chlorine ก็จะมีการเรียงต่อลงมาในงาน EXCEL เป็นข้อมูลchlorine ไฟล์ 1 แล้วเว้น 1 บรรทัด ตามด้วย ข้อมูล chlorine ไฟล์ 1-2 ทั้งหมด แล้วเว้น 1 บรรทัด ตามด้วย ไฟล์ 2 ทั้งหมด ทำอย่างนี้ต่อไปจนครบ 365 วัน รบกวนช่วนแนะนำด้วยค่ะ ขอบพระคุณมากนะค่ะ
Attachments
1.xls
(208.5 KiB) Downloaded 3 times
1-2.xls
(279.5 KiB) Downloaded 2 times
2.xls
(211 KiB) Downloaded 3 times
User avatar
snasui
Site Admin
Site Admin
Posts: 31191
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: อยากขอสอบถามการรวมข้อมูลโดยใช้ VBA ค่ะ

#2

Post by snasui »

:D ช่วยระบุว่าให้ดูที่ไฟล์ไหน ชีทไหน เซลล์ไหน ทำตัวอย่างคำตอบที่ต้องการมาด้วยครับว่าคำตอบที่ถูกต้องอยู่ในรูปแบบใด มีค่าเท่าใด โดยการนำไฟล์ไหน ชีทไหน เซลล์ไหนรวมกับไฟล์ไหน ชีทไหน เซลล์ไหน เพื่อเข้าถึงข้อมูลได้อย่างรวดเร็วครับ
zenmaki
Member
Member
Posts: 7
Joined: Mon Sep 05, 2011 1:48 am

Re: อยากขอสอบถามการรวมข้อมูลโดยใช้ VBA ค่ะ

#3

Post by zenmaki »

ได้ส่งไฟล์งานที่ต้องการให้ดู คือ ไฟล์ chlorine ซึ่งเปนการรวม sheet ของ folder มกราคม ในไฟล์ 1 และ 1-2 แต่ที่ทำไป เปนการทำลิงก์ธรรมดา ซึ่งอาจารย์ที่สั่งงานมาได้ต้องการไฟล์เปน VBA ก็ไม่ทราบว่าจะทำยังไง เพราะงานอาจารย์เร่งมาก แต่พื้นฐานความรู้ยังไม่มีเลย กำลังศึกษาอยู่ เลยอยากจะขอรบกวนอาจารย์ช่วยแนะนำ ซึ่งข้อมูลที่ต้องทำทั้งหมด มี 1 ปี แล้วที่ส่งไปเปนตัวอย่างมี 2 folder เพราะว่า เดือน มกราคม - พฤษภาคม ไฟล์จะแบ่งเปน 1 , 1-2 , 2 , 2-3 ,3 ... แต่ตั้งแต่มิถุนายนเปนต้นไป ไฟล์จะแบ่งเปน 1,2,3... ขอคำแนะนำด้วยค่ะ
Attachments
Data operator 53.rar
(279.99 KiB) Downloaded 6 times
User avatar
snasui
Site Admin
Site Admin
Posts: 31191
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: อยากขอสอบถามการรวมข้อมูลโดยใช้ VBA ค่ะ

#4

Post by snasui »

:shock: ไม่ทราบว่าได้อ่านที่ผมถามไปบ้างหรือไม่ครับ
snasui wrote: ช่วยระบุว่าให้ดูที่ไฟล์ไหน ชีทไหน เซลล์ไหน ทำตัวอย่างคำตอบที่ต้องการมาด้วยครับว่าคำตอบที่ถูกต้องอยู่ในรูปแบบใด มีค่าเท่าใด โดยการนำไฟล์ไหน ชีทไหน เซลล์ไหนรวมกับไฟล์ไหน ชีทไหน เซลล์ไหน เพื่อเข้าถึงข้อมูลได้อย่างรวดเร็วครับ
ถ้าระบุมาแล้วช่วยบอกว่าอยู่ในไฟล์ไหน เนื่องจากพบว่าที่แนบมามีหลายชีท
zenmaki wrote:ซึ่งอาจารย์ที่สั่งงานมาได้ต้องการไฟล์เปน VBA ก็ไม่ทราบว่าจะทำยังไง เพราะงานอาจารย์เร่งมาก
สำหรับ Forum เน้นการแก้ที่ติดปัญหาเป็นหลักครับ ไม่ได้รับทำงานหรือทำการบ้านหรือทำ Project ให้ท่านใด กรณีต้องการเป็น VBA ก็ควรเขียนเองได้บ้างเพื่อจะแก้ไขปรับปรุงได้เองเมื่อความต้องการเปลี่ยนไป :P
zenmaki
Member
Member
Posts: 7
Joined: Mon Sep 05, 2011 1:48 am

Re: อยากขอสอบถามการรวมข้อมูลโดยใช้ VBA ค่ะ

#5

Post by zenmaki »

ขอโทษนะค่ะ สำหรับการถามไม่ตรงจุดประสงค์ของ Forum ขอบคุณนะค่ะ สำหรับคำแนะนำ ตอนนี้ได้เริ่มศึกษา VBA แล้วค่ะ แต่กำลังสับสนถึงการจัดข้อมูลที่มี ฟอร์มตารางต่างกัน มาไว้ด้วยกันค่ะ ว่าสามารถทำได้หรือไม่ จึงอยากเรียนสอบถามอาจารย์อีกครั้งนะค่ะ
จากตัวอย่างที่ได้ส่งให้อาจารย์ดู ได้ทำการcopy ไฟล์ โดยทำการลิงก์ แต่ถ้าข้อมูลมีจำนวนมาก อาจารย์คิดว่า จะมีวิธีไหนทำได้เร็วบ้างค่ะ คือในไฟล์ EXที่ส่งให้ดู ได้นำข้อมูลจาก
ไฟล์ 1 sheet chlorine เซลล์ A2:N13 มาลงที่ไฟล์ EX เซลล์ B1:O12
Copy หัวตารางจาก ไฟล์ Ex B1:O3 มาต่อท้ายตารางไฟล์ EX ตรง B13:O15
นำข้อมูลจาก ไฟล์ 2-3 sheet chlorine เซลล์ A1 มาลงที่ ไฟล์ Ex เซลล์ B13
นำข้อมูลจาก ไฟล์ 2-3 sheet chlorine เซลล์ B4:B12 มาลงที่ ไฟล์ Ex เซลล์ E16:E24
นำข้อมูลจาก ไฟล์ 2-3 sheet chlorine เซลล์ E4:E12 มาลงที่ ไฟล์ Ex เซลล์ G16:G24
นำข้อมูลจาก ไฟล์ 2-3 sheet chlorine เซลล์ H4:H12 มาลงที่ ไฟล์ Ex เซลล์ J16:J24
นำข้อมูลจาก ไฟล์ 2-3 sheet chlorine เซลล์ J4:J12 มาลงที่ ไฟล์ Ex เซลล์ K16:K24
นำข้อมูลจาก ไฟล์ 2-3 sheet chlorine เซลล์ K4:K12 มาลงที่ ไฟล์ Ex เซลล์ L16:L24
นำข้อมูลจาก ไฟล์ 2-3 sheet chlorine เซลล์ N4:N12 มาลงที่ ไฟล์ Ex เซลล์ O16:O24
แล้วต้องเว้น 1 บรรทัด ก่อนใส่ข้อมูลใหม่ อาจารย์คิดว่า ทำอย่างไรงานถึงจะทำได้สะดวก ถูกต้องที่สุด พอนั่งทำ paste link ไปเรื่อยๆ รู้สึกว่าสับสนมาก
ถ้าทำเป็น VBA แบบนี้สามารถเขียนได้ไหม ในเมื่อ ฟอร์มตารางคนละแบบ แต่เมื่อรวมข้อมูล จะต้องทำเป็นฟอร์มเดียวกัน
หรือควรเป็นเป็นฟอร์มตารางแบบเดียวกัน ก่อนดึงข้อมูลแบบ VBA จะง่ายกว่า ขอบคุณมากนะค่ะ สำหรับคำแนะนำ
Attachments
Ex.rar
(52.71 KiB) Downloaded 4 times
User avatar
snasui
Site Admin
Site Admin
Posts: 31191
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: อยากขอสอบถามการรวมข้อมูลโดยใช้ VBA ค่ะ

#6

Post by snasui »

:lol: งานแบบนี้สามารถทำด้วย VBA ได้ครับ แต่ยุ่งยากกว่าปกติที่เป็นการ Copy และวางระหว่างไฟล์และเนื่องจากข้อมูลต้นแหล่งมีการ Merge Cells นอกจากนี้ช่วงข้อมูลที่นำมาต่อกันหากมีแต่ะละช่วงไม่เท่ากันก็จะเพิ่มความยุ่งยากเข้าไปอีก เพราะต้องเขียน Code ให้ทราบขอบเขตข้อมูล

หลังจากที่นำมาวางตามที่อธิบายมาแล้ว คำถามคือ

1. ในลำดับถัดไปให้นำข้อมูลจากไฟล์ 2-3 ชีท Chlorine ช่วงเซลล์ B35:N41 มาต่อในไฟล์ Ex ท้ายข้อมูลเดิมลงด้านล่างไปเรื่อย ๆ ในลักษณะเดิม (เพิ่มหัว Field) จนกว่าชุดข้อมูลใน ไฟล์ 2-3 ชีท Chlorine จะหมดใช่หรือไม่ครับ

2. จำเป็นต้อง Copy แล้ววางเป็น Link หรือไม่ ผลกระทบจากการ link กันสร้างภาระให้กับเครื่องในการคำนวณ ไฟล์จะทำงานช้ากว่าไม่มี Link และขนาดไฟล์ใหญ่กว่าไม่มี Link

3. ได้ลองเขียน Code มาแล้วหรือไม่ Code อยู่ที่ใด จะได้นำมาปรับใช้ต่อจากที่เขียนไว้แล้ว
Post Reply