Page 1 of 1

สอบถามเรื่องการดึงข้อมูลข้ามไฟล์ โดยมีเงื่อนไขให้

Posted: Thu Dec 19, 2013 10:51 am
by am_leslady
สวัสดีคะ ต้องการสอบถาม สอบถามเรื่องการดึงข้อมูลข้ามไฟล์ โดยมีเงื่อนไขให้ข้อมูลแถวนั้นไปต่อบรรทัดสุดท้ายของตารางอีกไฟล์คะ

Re: สอบถามเรื่องการดึงข้อมูลข้ามไฟล์ โดยมีเงื่อนไขให้

Posted: Thu Dec 19, 2013 11:06 am
by snasui
:D การทำเช่นนั้นอาศัย VBA ซึ่งต้องเขียนมาก่อนตามกฎการใช้บอร์ดข้อ 5 ด้านบนครับ :roll:

Re: สอบถามเรื่องการดึงข้อมูลข้ามไฟล์ โดยมีเงื่อนไขให้

Posted: Thu Dec 19, 2013 11:12 am
by am_leslady
คะ ขอบคุณมากคะ

Re: สอบถามเรื่องการดึงข้อมูลข้ามไฟล์ โดยมีเงื่อนไขให้

Posted: Fri Dec 20, 2013 11:41 am
by am_leslady
ได้ลองทดลองใช้ offset ส่งข้อมูลข้ามชีท ได้แล้ว แต่ไม่สามารถส่งข้ามไฟล์ได้คะ มีไฟล์ตัวอย่างแนบมา รบกวนช่วยชี้แนะด้วยคะ
ต้องการส่งจากไฟล์ main ไปไฟล์ subคะ

Re: สอบถามเรื่องการดึงข้อมูลข้ามไฟล์ โดยมีเงื่อนไขให้

Posted: Fri Dec 20, 2013 3:51 pm
by joo
:D ลองศึกษาจากลิงค์นี้ไปประยุกต์ปรับใช้ดูครับ
viewtopic.php?f=3&t=3155
http://www.snasui.com/viewtopic.php?f=3&t=4781

Re: สอบถามเรื่องการดึงข้อมูลข้ามไฟล์ โดยมีเงื่อนไขให้

Posted: Fri Dec 20, 2013 4:47 pm
by am_leslady
ขอบคุณคะ ตอนนี้สามารถส่งในWorksheetเดียวกัน และคนละWorkSheet ได้แล้ว แต่ไม่สามารถส่งข้าม workbook ได้คะ

Re: สอบถามเรื่องการดึงข้อมูลข้ามไฟล์ โดยมีเงื่อนไขให้

Posted: Fri Dec 20, 2013 4:58 pm
by joo
:D ได้ลองนำโค๊ดจากลิงค์ที่แนะนำไปปรับใช้ดูหรือยังครับ ถ้าสังเกตให้ดีๆ ถึงเส้นทางของการวางข้อมูลก็จะสามารถประยุกต์ได้ ติดขัดตรงไหนก็ให้แนบไฟล์ที่ได้ลองแล้วกลับมาถามได้เรื่อยๆ ครับ

Re: สอบถามเรื่องการดึงข้อมูลข้ามไฟล์ โดยมีเงื่อนไขให้

Posted: Sat Dec 21, 2013 9:03 am
by am_leslady
ตอนนี้ดึงข้อมูลข้ามไฟล์ได้แล้ว แต่มันไม่ต่อท้ายตาราง มันไปแทนที่ อันเก่าคะ
Sub PasteData()
Dim db As Worksheet
Dim ws As Worksheet
Dim objWorkbook As Workbook
Dim rs As Range
Dim rt As Range
Set objWorkbook = Workbooks.Open("D:\book1.xlsx")
Set db = objWorkbook.Sheets("sheet1")
Set ws = Workbooks("main.xlsm").Worksheets("sheet1")
Set rs = ws.Range("D4:F4")
Set rt = db.Range("F65536").End(xlUp).Offset(1, 0)

rs.Copy
rt.PasteSpecial xlPasteValues
Application.CutCopyMode = False
MsgBox "Finish."
End Sub

Re: สอบถามเรื่องการดึงข้อมูลข้ามไฟล์ โดยมีเงื่อนไขให้

Posted: Sat Dec 21, 2013 9:19 am
by joo
:D แนบไฟล์ที่ได้ลองแล้วไม่ได้มาดูกันหน่อยครับ

Re: สอบถามเรื่องการดึงข้อมูลข้ามไฟล์ โดยมีเงื่อนไขให้

Posted: Sat Dec 21, 2013 9:26 am
by snasui
:D เสริมอีกนิดครับ สำหรับการโพสต์ Code ให้แสดงเป็น Code เพื่อสะดวกในการอ่านและ Copy ไปทดสอบสามารถทำตาม Link นี้ครับ viewtopic.php?f=3&t=1187

Re: สอบถามเรื่องการดึงข้อมูลข้ามไฟล์ โดยมีเงื่อนไขให้

Posted: Sat Dec 21, 2013 10:19 am
by am_leslady
ทีแรกที่ส่งไปแล้วค่ามันทับค่าเดิมเพราะส่งไปแล้วไม่ได้บันทึกลงไฟล์ใหม่
เป็นการส่งไปอย่างเดียว ตอนนนี้เลยสั่งให้ ส่งไปแล้วมีการบันทึกข้อมูลเลย
ข้อมูลที่ส่งไปใหม่ก็จะไปต่อท้ายเรื่อยๆคะ

ตอนนี้กำลังหา การส่งค่าที่เส้นตารางไปด้วยคะ ใช้ rt.PasteSpecial xlPasteValues ส่งไปแต่ค่า

Re: สอบถามเรื่องการดึงข้อมูลข้ามไฟล์ โดยมีเงื่อนไขให้

Posted: Sat Dec 21, 2013 10:34 am
by am_leslady
มีวิธีPast แบบให้ Format มันมาด้วยหรือป่าวคะ

Re: สอบถามเรื่องการดึงข้อมูลข้ามไฟล์ โดยมีเงื่อนไขให้

Posted: Sat Dec 21, 2013 10:44 am
by snasui
:D ลองบันทึก Macro สำหรับการวาง Format แล้วนำมาปรับใช้ ติดตรงไหนสามารถถามมาได้เรือย ๆ ครับ

Re: สอบถามเรื่องการดึงข้อมูลข้ามไฟล์ โดยมีเงื่อนไขให้

Posted: Sat Dec 21, 2013 1:50 pm
by am_leslady
โอเค ได้แล้วคะ จากเดิม rt.PasteSpecial xlPasteValues เพิ่ม
rt.PasteSpecial xlPasteFormats เข้าไปอีกบรรทัด ได้ตามแบบที่ต้องการแป๊ะเลย