Page 1 of 1

ขอทราบวิธีเกี่ยวกับการดึงข้อมูลข้ามไฟล์ครับ

Posted: Mon Jan 23, 2012 4:55 pm
by wasaruud
คืออยากทราบวิธีการกำหนดการดึงค่าข้อมูลจากไฟล์อื่น โดยสามารถกำหนดให้ดึงจากชื่อไฟล์ครับ
เช่น ให้ดึงข้อมูลจากไฟล์ที่ชื่อ test1.xls หรือ test2.xls มาแสดงก็ได้ หากระบุชื่อข้อมูลลงในเซล (ขอสมมุติว่าพิมพ์ในเซล A1 ของไฟล์ Test.xls) ว่าให้เลือกจากไฟล์ไหน
คือ พิมพ์ในช่อง A1 ชื่อไฟล์ test1 ในช่อง B1 ก็ให้ดึงข้อมูลจาก test1 มาแสดง หรือถ้าพิมพ์ในช่อง A1 ชื่อไฟล์ test2 ในช่อง B1 ก็ให้ดึงข้อมูลจาก test2 มาแสดง ประมาณนี้ครับ

ปล.รบกวนด้วยครับ น้องใหม่พึ่งหัดโพสก์ครั้งแรกครับ ขอบคุณอีกครั้งครับ

Re: ขอทราบวิธีเกี่ยวกับการดึงข้อมูลข้ามไฟล์ครับ

Posted: Mon Jan 23, 2012 5:15 pm
by bank9597
:D การ Link ข้ามไฟล์ทำตามนี้ครับ
1. เปิดไฟล์ทั้งสองขึ้นมาพร้อมกัน
2. คลิกไปที่ไฟล์ปลายทาง > คลิกชีทที่ต้องการ > คลิกเซลล์ที่ต้องการวางข้อมูล > คีย์เครื่องหมาย =
3. คลิกเลือกไฟล์ต้นทาง > คลิกชีทที่ต้องการ > คลิกเซลล์ที่ต้องการนำข้อมูลไปวาง > กดแป้น F4 จำนวน 3 ครั้งติดกัน เพื่อเปลี่ยนการอ้างอิงเซลล์ให้เป็นแบบสัมพันธ์
4. Copy เซลล์ในข้อ 3 ไปยังตำแหน่งอื่น ๆ ตามต้องการ

Re: ขอทราบวิธีเกี่ยวกับการดึงข้อมูลข้ามไฟล์ครับ

Posted: Mon Jan 23, 2012 5:28 pm
by wasaruud
อาจารย์ครับ ที่ผมถามหมายถึงว่าเรากำหนดลิ้งไว้ในไฟล์หลักแล้ว แต่จะสามารถดึงโดยกำหนดชื่อไฟล์ครับ
เช่น ถ้ากำหนดชื่อใน A1 เป็น Test1 ข้อมูลทั้งหมดใน Test.xls ก็จะดึงลิ้งค์ข้อมูลของ Test1 ทั้งหมดมาแสดง
แต่ถ้าเปลี่ยนข้อมูลใน A1 ของ Test.xls เป็นชื่อ Test2 ข้อมูลที่กำหนดลิ้งไว้ก็จะไปเลือกเอาไฟล์จาก Test2 มาแสดงแทน
ประมาณนี้ครับ
รบกวนด้วยครับ คือ ผมมีไฟล์หลักอยู่ 1 ไฟล์ ส่วนไฟล์ที่ใช้ดึงบางทีมาจากหลายไฟล์ครับ

อ้อ ผมทำงานเกี่ยวกับเลือกตั้งครับ
การใช้งานของผมคือผมมีไฟล์หลัก 1 ไฟล์ ถ้าต้องเรียกไฟล์จากไฟล์ อบต.ครับ คืออยากให้พิมพ์ชื่อ อบต.ลงในเซลแล้วให้ไฟล์หลักไปดึงข้อมูลจากไฟล์ของ อบต.นั้นมาเลยครับ

Re: ขอทราบวิธีเกี่ยวกับการดึงข้อมูลข้ามไฟล์ครับ

Posted: Mon Jan 23, 2012 5:46 pm
by wasaruud
อาจารย์ครับ ที่ผมถามหมายถึงว่าเรากำหนดลิ้งไว้ในไฟล์หลักแล้ว แต่จะสามารถดึงโดยกำหนดชื่อไฟล์ครับ
เช่น ถ้ากำหนดชื่อใน A1 เป็น Test1 ข้อมูลทั้งหมดใน Test.xls ก็จะดึงลิ้งค์ข้อมูลของ Test1 ทั้งหมดมาแสดง
แต่ถ้าเปลี่ยนข้อมูลใน A1 ของ Test.xls เป็นชื่อ Test2 ข้อมูลที่กำหนดลิ้งไว้ก็จะไปเลือกเอาไฟล์จาก Test2 มาแสดงแทน
ประมาณนี้ครับ
รบกวนด้วยครับ คือ ผมมีไฟล์หลักอยู่ 1 ไฟล์ ส่วนไฟล์ที่ใช้ดึงบางทีมาจากหลายไฟล์ครับ

อ้อ ผมทำงานเกี่ยวกับเลือกตั้งครับ
การใช้งานของผมคือผมมีไฟล์หลัก 1 ไฟล์ ถ้าต้องเรียกไฟล์จากไฟล์ อบต.ครับ คืออยากให้พิมพ์ชื่อ อบต.ลงในเซลแล้วให้ไฟล์หลักไปดึงข้อมูลจากไฟล์ของ อบต.นั้นมาเลยครับ

จะถามต่อแต่งงกับการโพสก์ครับ

Re: ขอทราบวิธีเกี่ยวกับการดึงข้อมูลข้ามไฟล์ครับ

Posted: Mon Jan 23, 2012 5:57 pm
by bank9597
:D ผมไม่ใชอาจารย์ครับ

งั้นลองศึกษาตามนี้ดูครับ

viewtopic.php?f=3&t=886

Re: ขอทราบวิธีเกี่ยวกับการดึงข้อมูลข้ามไฟล์ครับ

Posted: Mon Jan 23, 2012 6:17 pm
by snasui
wasaruud wrote:อาจารย์ครับ ที่ผมถามหมายถึงว่าเรากำหนดลิ้งไว้ในไฟล์หลักแล้ว แต่จะสามารถดึงโดยกำหนดชื่อไฟล์ครับ
เช่น ถ้ากำหนดชื่อใน A1 เป็น Test1 ข้อมูลทั้งหมดใน Test.xls ก็จะดึงลิ้งค์ข้อมูลของ Test1 ทั้งหมดมาแสดง
แต่ถ้าเปลี่ยนข้อมูลใน A1 ของ Test.xls เป็นชื่อ Test2 ข้อมูลที่กำหนดลิ้งไว้ก็จะไปเลือกเอาไฟล์จาก Test2 มาแสดงแทน
ประมาณนี้ครับ
รบกวนด้วยครับ คือ ผมมีไฟล์หลักอยู่ 1 ไฟล์ ส่วนไฟล์ที่ใช้ดึงบางทีมาจากหลายไฟล์ครับ

อ้อ ผมทำงานเกี่ยวกับเลือกตั้งครับ
การใช้งานของผมคือผมมีไฟล์หลัก 1 ไฟล์ ถ้าต้องเรียกไฟล์จากไฟล์ อบต.ครับ คืออยากให้พิมพ์ชื่อ อบต.ลงในเซลแล้วให้ไฟล์หลักไปดึงข้อมูลจากไฟล์ของ อบต.นั้นมาเลยครับ
:D จากความต้องการนี้สามารถใช้สูตร Indirect เข้ามาช่วยได้แต่ต้องเปิดไฟลต้นแหล่งทุกไฟล์เอาไว้ด้วยถึงจะใช้สูตร Indirect เข้ามาช่วยเพื่อดึงข้อมูลจากไฟล์ใด ๆ ตามที่เราคีย์ลงไปในเซลล์ได้ ลองศึกษา Link ที่คุณ Bank9597 เพิ่มเติม หากยังไม่ตรงกับที่ต้องการช่วยแนบไฟล์ตัวอย่างและคีย์ตัวอย่างคำตอบที่ต้องการมาให้สักสองสามตัวอย่างเพื่อจะได้สะดวกในการตอบครับ

Re: ขอทราบวิธีเกี่ยวกับการดึงข้อมูลข้ามไฟล์ครับ

Posted: Mon Jan 23, 2012 8:33 pm
by wasaruud
ผมไม่แน่ใจว่าผมอธิบายชัดเจนรึเปล่า เลยแนบไฟล์มาครับ (ผมคิดว่าถ้าได้เห็นไฟล์คงเข้าใจมากกว่าที่ผมถาม เพราะผมก็ไม่รู้จะอธิบายยังไงดีครับ)

ผมแนบไฟล์มาพร้อมนี้ครับ

ขอบคุณล่วงหน้าครับ

Re: ขอทราบวิธีเกี่ยวกับการดึงข้อมูลข้ามไฟล์ครับ

Posted: Mon Jan 23, 2012 8:46 pm
by snasui
:D ที่ชีท Main เซลล์ C9 คีย์

=INDIRECT("'["&$C$4&".xlsx]"&"Sheet1'!"&E9)

Enter > Copy ไปเซลล์อื่น ๆ

อย่าลืมสังเกตคอลัมน์ E ผมเขียนเซลล์ที่ต้องการดึงข้อมูลมากำกับไว้เพื่อให้สูตรมีความยืดหยุ่นและง่ายต่อการทำความเข้าใจ กรณีไม่ต้องการให้แสดงคอลัมน์ E สามารถเขียนเข้าไปในสูตรได้เลย แต่กรณีมีการแก้ไขเซลล์อ้างอิงหลาย ๆ เซลล์จะมีความยุ่งยากลำบากในการเปลี่ยนแปลงแก้ไขสูตร อีกประการ จำเป็นต้องเปิดไฟล์ต้นทางไว้ด้วยเสมอครับ

Re: ขอทราบวิธีเกี่ยวกับการดึงข้อมูลข้ามไฟล์ครับ

Posted: Mon Jan 23, 2012 8:54 pm
by wasaruud
อาจารย์ครับ กรณีนี้ถ้าไม่ได้เปิดไฟล์ที่ต้องการดึงข้อมูลไว้ด้วยก็เรียกข้อมูลมาไม่ได้ใช่รึเปล่าครับ
เพราะถ้าเก็บข้อมูลไว้ในโฟลเดอร์แยกต่างหาก แล้วให้ไฟล์หลักไปดึงข้อมูลมาดู เพื่อจะไม่ให้คนเข้าไปยุ่งกับไฟล์ data ก็ไม่ได้สิครับ

Re: ขอทราบวิธีเกี่ยวกับการดึงข้อมูลข้ามไฟล์ครับ

Posted: Mon Jan 23, 2012 8:58 pm
by snasui
wasaruud wrote:อาจารย์ครับ กรณีนี้ถ้าไม่ได้เปิดไฟล์ที่ต้องการดึงข้อมูลไว้ด้วยก็เรียกข้อมูลมาไม่ได้ใช่รึเปล่าครับ
ถูกต้องครับ
wasaruud wrote:เพราะถ้าเก็บข้อมูลไว้ในโฟลเดอร์แยกต่างหาก แล้วให้ไฟล์หลักไปดึงข้อมูลมาดู เพื่อจะไม่ให้คนเข้าไปยุ่งกับไฟล์ data ก็ไม่ได้สิครับ
ใช่แล้วครับ การดึงข้อมูลโดยใช้สูตรให้เลือกดึงตามแต่ละไฟล์ลักษณะนี้มีข้อจำกัดครับ

วิธีที่เหมาะสมคือให้ทำไฟล์ Database ไว้ต่างหาก 1 ไฟล์ ไม่ใช่ทำเช่นที่ทำอยู่นี้ครับ การเก็บข้อมูลก็ให้เก็บทุกตำบลอยู่ในไฟล์เดียวกันและเก็บลงไปด้านล่างเรื่อย ๆ ถึงจะเหมาะกับการใช้สูตรดึงข้อมูลมาแสดงครับ

Re: ขอทราบวิธีเกี่ยวกับการดึงข้อมูลข้ามไฟล์ครับ

Posted: Mon Jan 23, 2012 9:03 pm
by wasaruud
ผมติดปัญหาเรื่อง data ครับ เพราะให้แต่ละ อบต.เป็นคนกรอกข้อมูล เลยทำให้แยกเป็นหลายไฟล์ครับ
ขอบคุณอาจารย์ที่ให้ความกระจ่างครับ

Re: ขอทราบวิธีเกี่ยวกับการดึงข้อมูลข้ามไฟล์ครับ

Posted: Mon Jan 23, 2012 9:09 pm
by snasui
:D ในขั้นที่แจ้งมานั้นเป็นขั้นตอนการรวบรวม ขั้นการทำ Database ก็เป็นอีกขั้นหนึ่งครับ การนำไฟล์ที่ได้มารวมไว้ด้วยกันให้เป็น Database ก็ทำหลังจากรวบรวมข้อมูลมาแล้ว เมื่อเป็น Database แล้วก็จะง่ายที่จะสรุปข้อมูล ไม่ว่าจะด้วยสูตรหรือด้วยความสามารถอื่น ๆ เช่น PivotTable เพื่อจะดูรายงานในมิติต่าง ๆ ได้สะดวก

กรณีมีไฟล์จำนวนมากและต้องการรวมกันเป็น Database อาจจะต้องใช้ VBA เข้ามาช่วยเพื่อความรวดเร็วและลดข้อผิดพลาด แต่จะเหมาะกับผู้ที่มีความรู้เรื่อง VBA มาบ้างไม่เช่นนั้นจะปรับปรุงเปลี่ยนแปลงแก้ไขเองไม่ได้ครับ :P

Re: ขอทราบวิธีเกี่ยวกับการดึงข้อมูลข้ามไฟล์ครับ

Posted: Mon Jan 23, 2012 9:13 pm
by wasaruud
พอเข้าใจแล้วครับ กรณีนี้ต้องทำไฟล์ขึ้นมาอีก 1 ไฟล์เพื่อนำข้อมูลแต่ละไฟล์มารวมกันเป็น database แล้วถึงใช้ไฟล์หลักเรียกข้อมูลที่รวบรวมไว้อีกทีนึง