snasui.com ยินดีต้อนรับ
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ ระบุ Version ของ Excel
ฟอรัมถาม-ตอบปัญหาการใช้งาน MS Excel and VBA
Forum rules
ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code]
และปิดด้วย [/code]
ตัวอย่างเช่น [code]dim r as range[/code]
เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
sup
Member
Posts: 136 Joined: Mon Sep 13, 2010 11:36 am
#1
Post
by sup » Thu Jul 26, 2012 10:23 am
เรียนอาจารย์ และกูรูทุกท่านครับ
วันนี้ผมมีข้อสงสัยมาสอบถามเกี่ยวกับ Pivort Table ครับ
1. ปกติ Pivort Table สามารถใช้ Range เข้ามาช่วยให้ ข้อมูล Update ได้ง่ายขึ้น
2. ปกติ Pivort Table สามารถที่จะทำข้ามไฟล์ได้ หรือแยกออกจาก Data ได้
คำถามคือ
1. หากผมทำ Pivort Table ข้ามไฟล์(แยกออกจาก DATA) แต่อยากให้ข้อมูล Update ตลอดตามที่ไฟล์ Data มีข้อมูลเพิ่มเข้าไปโดยใช้ Range ได้หรือไม่ครับ และหากได้จะเขียนสูตรอย่างไรครับ(ผมลองแล้วทำไม่ได้ครับ ต้องกลับไปแก้ไขช่วงข้อมูลใหม่ทุกครั้งที่มีข้อมูลเพิ่มเข้าไปใหม่ หรือไม่ก็สร้างช่วงข้อมูลเผื่อไว้เลย)
2. หากทำไม่ได้มีเทคนิคใดบ้างครับที่จะทำได้(ข้ามไฟล์และ สามารถUp date ได้ตลอด)
ต้องขอขอบคุณทุกๆท่านล่วงหน้าครับ
bank9597
Guru
Posts: 3868 Joined: Wed Aug 17, 2011 11:49 am
#2
Post
by bank9597 » Thu Jul 26, 2012 10:35 am
เรื่อง PivotTable ผมไม่ถนัดเลยครับ
แต่เรื่อง RangeName สามารถตั้งคำถามแยกมาได้เลยครับ
Forum Rules
อย่าใช้ภาษาแชทในการตอบ-ถาม
ตั้งชื่อกระทู้ให้สื่อถึงปัญหาและไม่เจาะจงตัวผู้ตอบ
ให้อธิบายปัญหาและระบุคำตอบที่ต้องการมาในฟอรัม
ควรแนบไฟล์ตัวอย่างมาที่ฟอรั่ม
หากใช้ VBA ให้ลองเขียนมาเองก่อนเสมอ
แจ้งผลการใช้งานทุกครั้งเมื่อได้รับคำตอบ
sup
Member
Posts: 136 Joined: Mon Sep 13, 2010 11:36 am
#3
Post
by sup » Thu Jul 26, 2012 10:42 am
ขอบคุณมากๆครับคุณ Bank9597 ที่ยังสละเวลาเข้าช่วยดูให้ครับ เป็นกำลัวใจให้นะครับ
snasui
Site Admin
Posts: 30919 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:
#4
Post
by snasui » Thu Jul 26, 2012 12:08 pm
ลองแนบตัวอย่างที่ทำข้ามไฟล์รวมทีมีการสร้าง Range Name ให้กับ Database ไว้แล้วมาดูกันครับ
sup
Member
Posts: 136 Joined: Mon Sep 13, 2010 11:36 am
#5
Post
by sup » Thu Jul 26, 2012 2:17 pm
ครับอาจารย์ ผมลองทำไฟล์ตัวอย่างมาให้ดูแล้วครับ(ตามไฟล์แนบ)
ในไฟล์ ทดลอง! Sheet Hold ผมลองเพิ่มข้อมูลเข้าไปอีก 10 บรรทัด Save แล้วไปเปิดไฟล์ Report! Sheet1 ผมกด Refresh Data ข้อมูลไม่เปลี่ยนแปลงเลยครับ หากทำในไฟล์เดยวกัน โดยใช้ rangeName สามารถ Update ข้อมูลได้ครับ
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 30919 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:
#6
Post
by snasui » Thu Jul 26, 2012 3:13 pm
การนำข้อมูลจากไฟล์อื่นมาใช้ใน PivotTable แล้วต้องการให้ Dynamic ต้องเปลี่ยน Range ตามภาพให้เป็นชื่อที่ตั้งไว้ครับ โดยคลิกขวาลงในตาราง PivotTable แล้วทำตามภาพด้านล่างครับ
You do not have the required permissions to view the files attached to this post.
sup
Member
Posts: 136 Joined: Mon Sep 13, 2010 11:36 am
#7
Post
by sup » Thu Jul 26, 2012 3:40 pm
ผมลองทำในไฟล์ทดลองที่ส่งไปให้ดูได้แล้วครับ เดี๋ยวจะลองใช้กับไฟล์จริงครับ ขอบคุณมากๆครับอาจารย์
sup
Member
Posts: 136 Joined: Mon Sep 13, 2010 11:36 am
#8
Post
by sup » Tue Aug 14, 2012 9:39 am
สวัสดีครับอาจารย์ แลักูรูทุกท่าน
กลับมาสอบถามเรื่อง Pivort table ใหม่อีกรอบครับ
ผมลองทำ Pivort Table ข้ามไดร์ฟครับ แต่ปรากฎว่าเมื่อข้อมูลในไดร์ฟที่เป็นข้อมูลดิบ Update แต่ในไดร์ฟที่สร้างPivort Table ไม่ Update ตามครับ
วิธีการผมใช้วิธีเดียวกับการสร้างPivort Table ข้ามไฟล์ครับ
ทำอย่างไรให้สามารถ Update ได้ตลอดเวลาครับ
snasui
Site Admin
Posts: 30919 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:
#9
Post
by snasui » Tue Aug 14, 2012 11:13 am
ได้ Refresh PivotTable แล้วหรือไม่ครับ ปกติข้อมูลที่มีการ Link ข้ามไฟล์ ในตอบเปิดโปรแกรมจะมีการถามเสมอว่าให้ Update Link หรือไม่ ซึ่งควร Update Link ด้วยเสมอครับ
sup
Member
Posts: 136 Joined: Mon Sep 13, 2010 11:36 am
#10
Post
by sup » Mon Aug 20, 2012 10:51 am
สวัสดีครับอาจารย์
ต้องขอโทษด้วยครับที่ไม่ได้ติดตามกระทู้ที่ถามหลายวัน เนื่องจากป่วยซะ 2 วัน และหลังจากหายป่วยต้องไปเป็นวิทยากรอบรมระบบ GMP ด้วยครับ เลยห่างหายไป ต้องขอโทษจริงๆครับ
กลับมาที่คำถามนะครับ
ผมได้ทำ Pivot Table ไว้ในไดร์ฟส่วนกลาง สมมติว่า Z โดยดึงข้อมูลจากไดร์ฟ D ของเครื่องที่ใช้บันทึกข้อมูล ที่ชื่อว่า N ครับ ตอนทำก็ทำได้ครับ แต่พอมีการ Up Date ข้อมูลใน ไดร์ฟ D ใหม่ แล้วกลับไปเปิด Pivot Table ในไดร์ฟ Z (ตั้งใน Refresh Data ทุกครั้งที่เปิดไฟล์) มันจะแสดงข้อความว่า Reference is not Valid เมื่อคลิ๊ก OK ก็จะมีข้อความว่า Cannot open Pivot table source file 'Hold IOQ.xls'. ครับ และข้อมูลก้ไม่ Up Date ตามครับ
จะมีวิธีการทำ หรือแก้ไขอย่างไรให้ Pivot Table สามารถ Up Date ตามการเปลี่ยนแปลงของข้อมูลในไดร์ฟ D ได้ตลอดครับ รบกวนอาจารย์แนะนำด้วยครับ
ขอบคุณอาจารย์ล่วงหน้าครับ
snasui
Site Admin
Posts: 30919 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:
#11
Post
by snasui » Mon Aug 20, 2012 11:43 am
จากภาพด้านบนข้อที่ 3
ตรง Range ให้ใส่ Path ให้ครบครับ
เช่น D:\Folder\SubFolder\[ทดลอง.xls]!hold
sup
Member
Posts: 136 Joined: Mon Sep 13, 2010 11:36 am
#12
Post
by sup » Mon Aug 20, 2012 2:12 pm
ขอบคุณครับอาจารย์
ผมลืมบอกไปครับว่าผมได้ใส้ Path เรียบร้อยแล้วครับ เป็น 'Z:\A1.HOLD QA\HOLD.xls'!ทดลอง (จะไม่มี [ ] เหมือนของอาจารย์เพราะใส่ไปแล้วเครื่องจะปรับเป็นอย่างที่ผมเขียนครับ)
อีกอย่างครับ หากทำถูกต้องแล้วเครื่องอื่นที่สามารถเปิดไดร์ฟ Z ได้ จะ Up Date เหมือนกันไหมครับ
snasui
Site Admin
Posts: 30919 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:
#13
Post
by snasui » Mon Aug 20, 2012 2:31 pm
หากเครื่องที่เป็น Drive Z
ไม่ได้ปิด อยู่ก็ย่อมจะ Update ได้ทุกเครื่องที่ใช้ไฟล์นั้นเป็น Source ครับ
sup
Member
Posts: 136 Joined: Mon Sep 13, 2010 11:36 am
#14
Post
by sup » Mon Aug 20, 2012 4:02 pm
ผมลองปรับใหม่ครับอาจารย์ เป็น 'ชื่อเครื่อง:\ชื่อไดร์ฟของเครื่อง\ชื่อโฟล์เดอร์\ชื่อไฟล์.xls'!Range ครับ('N:\D\A1.HOLD QA\HOLD.xls'!ทดลอง) น่าจะได้ กำลังทดลองอยู่ครับ หากมีตรงไหนไม่ถูกต้องแนะนำด้วยครับ(ก่อนหน้านี้พิมพ์มาผิดครับ 'Z:\A1.HOLD QA\HOLD.xls'!ทดลอง ต้องเป็น 'D:\A1.HOLD QA\HOLD.xls'!ทดลอง)
ขอบคุณมากๆครับ
breeze2002
Member
Posts: 3 Joined: Fri Mar 14, 2014 6:58 pm
#15
Post
by breeze2002 » Fri Mar 14, 2014 8:34 pm
ก่อนอื่น ต้องขอขอบคุณครับ สำหรับความรู้ เพิ่งเป็นสมาชิกใหม่
ปัญหาเดียวกัน เลยลอง ค้นหาดู ลองทำแล้วใช้ได้ครับ
แต่อยากทราบ ว่า จะทำอย่างไร ที่เราไม่ต้องไปค่อยกด Refresh ที ไฟล์ report
ประมาณว่า ให้ มัน refresh ทุก 5 นาที โดยที่เราเปิด ไฟล์ report ไว้นะครับ
ขอบคุณครับ
snasui
Site Admin
Posts: 30919 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:
#16
Post
by snasui » Fri Mar 14, 2014 8:52 pm
การกำหนดเวลาให้ Refresh ได้จะต้องเลือก External data source ตั้งแต่ตอนสร้าง PivotTable ซึ่งจะมีลักษณะการติดต่อกับฐานข้อมูลอีกแบบครับ
breeze2002
Member
Posts: 3 Joined: Fri Mar 14, 2014 6:58 pm
#17
Post
by breeze2002 » Fri Mar 14, 2014 8:57 pm
ใช้ครับ อาจารย์ เคยทำกับ database external data source แล้วใช้ได้ครับ ตั้งเวลา refresh ได้ แต่กับ excel ด้วยกันไม่มีให้เซตนะครับ
ถ้าอย่างนั้น เราต้องทำ กับ excel ให้เป็น external data source ด้วยหรือเปล่า ครับ
snasui
Site Admin
Posts: 30919 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:
#18
Post
by snasui » Fri Mar 14, 2014 8:59 pm
breeze2002 wrote: ถ้าอย่างนั้น เราต้องทำ กับ excel ให้เป็น external data srource ด้วยหรือเปล่า ครับ
ถูกต้องครับ External data source สามารถใช้ได้กับหลาย ๆ data source ไม่ว่าจะเป็น Excel, Access, SQL, Text, etc.
breeze2002
Member
Posts: 3 Joined: Fri Mar 14, 2014 6:58 pm
#19
Post
by breeze2002 » Fri Mar 14, 2014 9:12 pm
ขอบคุณครับ จะลองทำดู แต่แบบนี้ง่ายนะครับ แต่ติดตรง มันไม่มี refresh excel กับ excel ด้วยกัน
ตอนลองทำ เปิด ไฟล์ เช่น test.xlsx แก้ไขข้อมูลยังไม่ต้องเซฟ แต่เปิดค้างไว้ ไฟล์ test.xlsx แล้วมาเปิด report.xlsx ยังดึงมาได้ update ได้ครับ
ติดตรง ไม่มี refresh ให้ทำ เหมือน external data source