Page 1 of 1
นำข้อมูลจาก web ภายนอกมาลงใน worksheet ค่ะ
Posted: Fri May 01, 2015 2:16 pm
by taumez
เรียนท่าน อาจารย์/ท่านผู้รู้ เรื่องวิธีการนำข้อมูลจาก web ภายนอก เข้ามาในงาน (วิธี web query ใช้ไม่ได้ค่ะ)
คือหนูต้องนำ ตารางอันดับ ไปใช้ต่อในสมุดงานอื่นอีก ซึ่งก่อนหน้านี้ ใช้วิธีนำเข้าจาก web query ได้ แต่คาดว่าหน้า web ที่อ้างอิงมีการเปลี่ยนรูปแบบเลยไม่สามารถนำเข้าแล้วอัพเดทได้เหมือนเดิม ซึงพี่คนที่ทำงานตรงนี้อยู่เขาก็ลาออกไปแล้ว พี่ๆที่ทำงานก็ไม่มีใครทำเป็นเลยคะ เลยอยากให้ท่านอาจารย์/ท่านผู้รู้ ช่วยชี้แนะหรือบอกวิธีการทำงานให้ด้วยจะเป็นพระคุณอย่างสูงค่ะ ขอบคุณค่ะ
Re: นำข้อมูลจาก web ภายนอกมาลงใน worksheet ค่ะ
Posted: Fri May 01, 2015 3:05 pm
by snasui

การนำข้อมูลเข้าจากเว็บหากว่ามีการเปลียนแปลงหน้าตาเว็บก็จะกระทบกับข้อมูลที่เคยนำเข้า สำหรับตามไฟล์แนบเมื่อทำการ Refresh แล้วเกิดปัญหา Script ทำงานไม่ถูกต้อง คงต้องทำการ Import เข้ามาใหม่ หากลอง Import แล้วจะพบว่าข้อมูลเรียงไม่เหมือนเดิม
ปัญหาลักษณะนี้ไม่ว่าคนเดิมจะอยู่หรือไม่อยู่ก็ไม่ใช่ว่าจะแก้ปัญหาได้เสมอไป เพราะเป็นที่ต้นทางไม่ได้เป็นที่ Excel ต้องค่อยๆ ทำเองใหม่
สิ่งสำคัญคุณ taumez ต้องทราบว่าข้อมูลนำเข้ามาจากเว็บใดเสียก่อนจึงจะดึงข้อมูลเข้ามาได้ และการจะทราบ เราสามารถเข้าไปดูได้จากเมนูของ Excel ครับ ซึ่งคงต้องเริ่มจาก Import ข้อมูลที่ต้องการแต่ละ Table เข้ามาใหม่
ตามไฟล์ที่แนบมานั้นเป็น Excel 2003 ผมจึงไม่สามารถแนะนำเมนูให้ได้เนื่องจากเครื่องที่ใช้ตอนนี้ไม่มี Version นั้นครับ
Re: นำข้อมูลจาก web ภายนอกมาลงใน worksheet ค่ะ
Posted: Fri May 01, 2015 4:33 pm
by taumez
ขอบคุณอาจารย์ ค่ะที่เข้ามาตอบ คือ ตอนนี้หนู พยายาม import เข้ามาด้วยวิธี web query ก็ไม่มีช่องให้ติ๊กที่ตาราง ที่จะนำเข้ามา ส่วนที่ติ๊กได้ก็เป็นข้อมูลที่เราไม่ต้องการค่ะ เลยอยากให้อาจารย์ชี้แนะวิธีการทำให้นำข้อมูลเข้ามาได้ และอัพเดทได้ด้วย ค่ะ
Re: นำข้อมูลจาก web ภายนอกมาลงใน worksheet ค่ะ
Posted: Fri May 01, 2015 4:39 pm
by snasui

จากที่โพสต์มาแสดงว่าสามารถทราบแล้วว่านำข้อมูลเข้ามาจาก Web ใด
เมื่อไม่มีให้ Tick ก็ไม่ต้อง Tick แต่ให้ Import เข้ามาทั้งหมด เมื่อได้มาแล้วค่อยนำข้อมูลนั้นไปใช้กับตารางที่เราสร้างไว้รองรับ
ให้ Import ข้อมูลเข้ามาให้ได้ก่อนแล้วค่อยมาดูกันต่อครับ
Re: นำข้อมูลจาก web ภายนอกมาลงใน worksheet ค่ะ
Posted: Fri May 01, 2015 5:09 pm
by snasui

ดูตัวอย่างการดึงข้อมูลมาตาม Sheet1 และการใช้สูตรช่วยในคอลัมน์ B ของ Sheet1 เพื่อดึงข้อมูลไปชีท ตารางอันดับ B2:K22 ตามไฟล์แนบครับ
Re: นำข้อมูลจาก web ภายนอกมาลงใน worksheet ค่ะ
Posted: Sat May 02, 2015 1:33 am
by taumez
กราบขอบพระคุณอาจารย์มากๆค่ะ ตอนนี้ปรับใช้ได้แล้วค่ะ
แต่ขอรบกวนอาจารย์ให้ความกระจ่างในสูตร
=IF(OR(ISNUMBER(LEFT(A545,1)+0),ISNUMBER(A545)),"",LOOKUP(9.99999999999999E+307,B$305:B544)+1)
ข้อนี้หน่อยค่ะหนูพยายามจะศึกษาให้มากยิ่งขึ้น ขอบพระคุณอีกครั้งค่ะ
Re: นำข้อมูลจาก web ภายนอกมาลงใน worksheet ค่ะ
Posted: Sat May 02, 2015 3:37 pm
by snasui

จากสูตร
=IF(
OR(ISNUMBER(LEFT(A545,1)+0),ISNUMBER(A545)),
"",LOOKUP(9.99999999999999E+307,B$305:B544)+1)
หมายถึงหาก
OR(ISNUMBER(LEFT(A545,1)+0),ISNUMBER(A545)) เป็นจริง ให้แสดง
"" หากไม่เป็นจริงให้แสดงผลลัพธ์ของ LOOKUP(9.99999999999999E+307,B$305:B544)+1
ซึ่ง LOOKUP(9.99999999999999E+307,B$305:B544)+1 เป็นการหาค่าตัวเลขสุดท้ายในช่วง B$305:B544 แล้วบวกเพิ่มอีก 1 ครับ
Re: นำข้อมูลจาก web ภายนอกมาลงใน worksheet ค่ะ
Posted: Sat May 02, 2015 3:43 pm
by taumez
กราบขอบพระคุณท่านอาจารย์ที่ช่วยให้ความกระจ่างค่ะ หนูจะพยายามศึกษาต่อไปค่ะ

Re: นำข้อมูลจาก web ภายนอกมาลงใน worksheet ค่ะ
Posted: Fri May 08, 2015 6:50 pm
by taumez
รบกวนท่านอาจารย์อีกครั้งนะค่ะ หลังจากนำไปใช้งานจริงมาประมาณเกือบสัปดาห์ หนูพบปัญหาคือ ทุกครั้งที่เราทำการอัพเดท ข้อมูลจะเปลี่ยนบรรทัดค่ะ เลยทำให้สูตรได้ข้อมูลที่ไม่ตรง หนูใช้วิธีแก้โดยการ copy สูตร ใหม่ทุกครั้งในทุก sheet โดยสังเกต จาก A ต้องเป็น Pts และ B =0 ไม่ทราบว่า มีวิธีการใดบ้างที่แก้ปัญหานี้ได้บ้างค่ะ
Re: นำข้อมูลจาก web ภายนอกมาลงใน worksheet ค่ะ
Posted: Fri May 08, 2015 7:22 pm
by snasui

ที่ Sheet1 ทำตามด้านล่างครับ
- เซลล์ B1 คีย์ 0
- เซลล์ B2คีย์สูตร
=IF(ROWS(B$1:B2)<=MATCH("Pts",$A:$A,0),"",IF(COUNT(A2:A4)=0,"",IF(OR(ISNUMBER(LEFT(A2,1)+0),ISNUMBER(A2)),"",LOOKUP(9.99999999999999E+307,B$1:B1)+1)))
Enter > Copy ลงด้านล่าง
Re: นำข้อมูลจาก web ภายนอกมาลงใน worksheet ค่ะ
Posted: Sat May 09, 2015 7:26 pm
by taumez
สูตรที่อาจารย์ให้มาใช้งานได้อย่างดีเยี่ยมเลยค่ะ กราบขอบพระคุณอาจารย์อีกครั้งค่ะ
