: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

ต้องการดึงข้อมูลจากไฟล์อื่นมาไว้ที่ไฟล์งานแบบมีเงื่อนไข

ฟอรัมถาม-ตอบปัญหาการใช้งาน MS Excel and 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. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
March201711
Gold
Gold
Posts: 1047
Joined: Sat Mar 11, 2017 7:01 pm
Excel Ver: 2010, 365

ต้องการดึงข้อมูลจากไฟล์อื่นมาไว้ที่ไฟล์งานแบบมีเงื่อนไข

#1

Post by March201711 »

ต้องการดึงไฟล์งานฐานข้อมูล ชื่อไฟล์ SouceData มาไว้ที่ไฟล์ชื่อ Summary โดยดึงจากชื่อแผนก column A และแยก type ว่าเป็น type foreign หรือ type Domestic
ที่ File "SouceData" มีแยก type Foreign (Column B:E) high light สีฟ้า และ type Domestic (Column F:I) high light สีเขียว ให้มาวางที่ File "Summary" โดยดูว่า เป็น Institution หรือ Retail และมาวางที่ช่อง Buy หรือ Sell
ตามรายละเอียดที่แนบค่ะ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 30913
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: ต้องการดึงข้อมูลจากไฟล์อื่นมาไว้ที่ไฟล์งานแบบมีเงื่อนไข

#2

Post by snasui »

:D ควรออกแบบหัวคอลัมน์ให้อ้างอิงถึงกันได้เสียก่อนถึงจะสามารถใช้สูตรได้สะดวก ยกตัวอย่าง

บรรทัดที่ 1 ใน Sheet1 ไฟล์ Summary จะต้องมีอยู่ใน Sheet1 ไฟล์ SourceData เช่นกัน จึงจะอ้างอิงกันได้ครับ

ด้านคอลัมน์ก็เช่นเดียวกัน กรณีมีรายการย่อย จะต้องสร้างรายการออกมาให้อ้างอิงจนถึงรายการย่อย

ยกเว้นจะเขียนด้วย Code สิ่งที่กล่าวถึงข้างบนสามารถเขียนเป็น Logic เข้าไปใน Code ได้ และหากต้องการใช้ Code กรุณาเขียนมาเองก่อน ไม่ใช่แค่บันทึก Macro มาครับ
March201711
Gold
Gold
Posts: 1047
Joined: Sat Mar 11, 2017 7:01 pm
Excel Ver: 2010, 365

Re: ต้องการดึงข้อมูลจากไฟล์อื่นมาไว้ที่ไฟล์งานแบบมีเงื่อนไข

#3

Post by March201711 »

sheet Source data เป็นข้อมูลที่มีการยิดหยุ่นตลอดเวลา บางครั้งไม่มี Port-Retail, ยางครั้งไม่มี Dept Port-Inst ที่ column B ถ้ามีข้อมูลในแผนกนั้น ๆ จะแสดงที่บรรทัดนั้น ถ้าไม่มีข้อมูล dept นั้นๆ จะไม่มี column b เลยค่ะ
อยากให้สูตรมีความยึดหยุ่น ไม่ต้องมานั่งเปลี่ยน cell แต่ละบรรทัด เพราะฐาข้อมูลมีเยอะมากค่ะ
You do not have the required permissions to view the files attached to this post.
User avatar
norkaz
Gold
Gold
Posts: 1726
Joined: Wed Jan 12, 2011 7:59 pm
Excel Ver: 2013,365

Re: ต้องการดึงข้อมูลจากไฟล์อื่นมาไว้ที่ไฟล์งานแบบมีเงื่อนไข

#4

Post by norkaz »

...

ตามที่อาจารย์ คนควนแนะนำไป ควรออกแบบหัวคอลัมน์ให้อ้างอิงถึงกันได้เสียก่อนถึงจะสามารถใช้สูตรได้สะดวก


ยกตัวอย่าง ตามไฟล์ที่แนบมา

จากนั้นใส่ตัวเลขและ โพสต์มาสอบถามอีกครั้งครับ




** สนับสนุนฟอรั่ม กรุณา คลิกโฆษณาที่หน้าเพจ**



แมวใหญ่-Bigcat9

RCA พระราม9 กรุงเทพฯ

...
You do not have the required permissions to view the files attached to this post.
March201711
Gold
Gold
Posts: 1047
Joined: Sat Mar 11, 2017 7:01 pm
Excel Ver: 2010, 365

Re: ต้องการดึงข้อมูลจากไฟล์อื่นมาไว้ที่ไฟล์งานแบบมีเงื่อนไข

#5

Post by March201711 »

ไม่สามารถแก้ได้ที่ File : SourceData น่ะคะ เพราะเป็นข้อมูลที่ export มาจากระบบ แต่ถ้าจะให้แก้ที่ Fie : Summary ก็พอได้คะ
User avatar
norkaz
Gold
Gold
Posts: 1726
Joined: Wed Jan 12, 2011 7:59 pm
Excel Ver: 2013,365

Re: ต้องการดึงข้อมูลจากไฟล์อื่นมาไว้ที่ไฟล์งานแบบมีเงื่อนไข

#6

Post by norkaz »

...

ยึดอะไรเป็นหลักก็ได้ เช่นยึด Source เป็นหลัก แต่ต้องแก้มาให้เหมือนกันครับ

ในตัวอย่าง

1.ให้เพิ่มแถวที่ Source แล้ว แก้หัวตารางตามตัวอย่าง

2. ที่ Summary ใช้หัวตาราง แบบ Source

3. ใส่ตัวเลขลงไป

4. คำตอบตัวอย่างที่ต้องการ

5.โพสต์มาสอบถามใหม่อีกครั้งครับ



** สนับสนุนฟอรั่ม กรุณา คลิกโฆษณาที่หน้าเพจ**



แมวใหญ่-Bigcat9

RCA พระราม9 กรุงเทพฯ

...
You do not have the required permissions to view the files attached to this post.
March201711
Gold
Gold
Posts: 1047
Joined: Sat Mar 11, 2017 7:01 pm
Excel Ver: 2010, 365

Re: ต้องการดึงข้อมูลจากไฟล์อื่นมาไว้ที่ไฟล์งานแบบมีเงื่อนไข

#7

Post by March201711 »

ที่ Fie SourceData_new เป็นฐานข้อมูล ไม่สามารถเปลี่ยนแปลงได้ ดิฉันจึงไปเพิ่มที่ file Summary_new ที่แถว 2 ใส่คำตอบที่ต้องการให้แล้วค่ะ ไม่ทราบว่่าพอจะดึงข้อมูลจาก File SourceData_new ได้หรือปล่าวคะ ชอบคุณค่ะ
You do not have the required permissions to view the files attached to this post.
User avatar
norkaz
Gold
Gold
Posts: 1726
Joined: Wed Jan 12, 2011 7:59 pm
Excel Ver: 2013,365

Re: ต้องการดึงข้อมูลจากไฟล์อื่นมาไว้ที่ไฟล์งานแบบมีเงื่อนไข

#8

Post by norkaz »

...


1. ต้องทำหัวตารางให้เหมือนกัน 2 แถว ทั้ง2 ไฟล์

2. Description ในคอลัมน์ A ก็ควรตรงกันกับ ไฟล์ Source --ถ้าไม่ตรงให้แทรกอีกคอลัมน์ แล้วทำให้ตรงกัน เพื่อเก็บ Description เดิมที่ไม่ตรงกันไว้ เพื่อง่ายต่อความเข้าใจว่า อันเดิมคือแบบนี้ อันใหม่ที่ตรงกับ Source คือ แบบนี้

3. ตัวอย่างคำตอบที่ให้มา มันไม่ค่อยสัมพันธ์ Description ในคอลัมน์ A

4. เท่าที่ดู ข้อมูล ของเจ้าของ คำถาม แบ่งออกเป็น 4 ส่วนหลักๆ ดังนี้

4.1.คอลัมน์ B C D
4 2.คอลัมน์ E F G
4.3 คอลัมน์ H I J
4.4 คอลัมน์ K L M


5. ผมทำหัวตาราง ทั้ง 2 แถว ให้เหมือนกันทั้ง 2 ไฟล์

6. จากนั้น ใช้ MATCH + VLOOKUP

7. ผลลัพธ์ตามไฟล์แนบ


8. คำตอบบางรายการไม่ตรงกับตัวอย่าง ที่แจ้งมา ลองไปปรับ หัวตารางและ Description ที่คอลัมน์ A ให้สัมพันธ์กันครับ


ิ B3

=IFERROR(VLOOKUP($A3,[SourceData_new.xlsx]Sheet1!$A:$M,INDEX(MATCH(B$1&B$2,[SourceData_new.xlsx]Sheet1!$A$2:$M$2&[SourceData_new.xlsx]Sheet1!$A$4:$M$4,0),0),0),"")


Copy ไปขวา และลงล่าง

** สนับสนุนฟอรั่ม กรุณา คลิกโฆษณาที่หน้าเพจ**



แมวใหญ่-Bigcat9

RCA พระราม9 กรุงเทพฯ

...



...
You do not have the required permissions to view the files attached to this post.
March201711
Gold
Gold
Posts: 1047
Joined: Sat Mar 11, 2017 7:01 pm
Excel Ver: 2010, 365

Re: ต้องการดึงข้อมูลจากไฟล์อื่นมาไว้ที่ไฟล์งานแบบมีเงื่อนไข

#9

Post by March201711 »

เกือบได้แล้วค่ะ แต่แสดงข้อมูลดับเบิ้ลกันอยู่ค่ะ
High light สี้ส้ม เป็นยอดที่แสดงค่าดับเบิ้ลกันค่ะ เพราะเนื้องจาก
Column B ถึง D เป็น Institution ของ Foreign Volume (High light สีเหลือง)
Column E ถึง G เป็น Retial ของ Foreign Volume (High light สีเหลือง)
Column H ถึง I เป็น Institution ของ Domestic Volume (High light สีชมพู)
Column K ถึง M เป็น Retial ของ Domestic Volume (High light สีชมพูฃ)

ดิฉัน เพิ่ม แถวที่ 2 แยก Institution และ Retail
Institution B2 : D2 เป้นของ Foreign Volume
Retail E2 : G2 เป็นของ Foreign Volume

Institution H2 : J2 เป้นของ Domestic Volume
Retail K2 : M2 เป็นของ Domestic Volume
You do not have the required permissions to view the files attached to this post.
User avatar
norkaz
Gold
Gold
Posts: 1726
Joined: Wed Jan 12, 2011 7:59 pm
Excel Ver: 2013,365

Re: ต้องการดึงข้อมูลจากไฟล์อื่นมาไว้ที่ไฟล์งานแบบมีเงื่อนไข

#10

Post by norkaz »

...


หลักการของสูตร ที่ถูกต้อง คือ เขียนสูตรนั้น แล้ว Copy ไปเซลล์ที่เกี่ยวข้อง ตามที่ผมเขียนไป

แต่ถ้าตรงไหน ที่ไม่ต้องการคำตอบก็ ไม่ต้อง Copy สูตรไป เพราะ เจ้าของงานจะรู้หน้างานเองว่า อันไหน เอา อันไหนไม่เอา เนื่องจาก ไม่มีเงื่อนไขอื่นๆ มาให้เช็ค


ส่วนอื่น ผมอธิบายไปทั้งหมดแล้วที่ กระทู้ที่ # 8

หลักการคือ ทำ หัวตาราง และ Description ทั้งสองไฟล์ ให้เหมือนกันครับ

นั่นคือ

a) หัวตาราง ในไฟล์ Source แถวที่ 2 และ 4 เป็นแบบใด
ในไฟล์ Summary หัวตารางก็ต้องทำให้เหมือนกันทุกประการ โดยการ Copy หัวตารางในไฟล์ Source ไปวางเลย ไม่ต้องสร้างเอง

b) Description ในไฟล์ Source คอลัมน์ A เป็นแบบใด
ในไฟล์ Summary หัวตารางก็ต้องทำให้เหมือนกันทุกประการ โดยการ Copy หัวตารางในไฟล์ Source ไปวางเลย ไม่ต้องสร้างเอง



แล้วใช้ VLOOKUP พื้นฐานปกติ หากไม่ต้องการเขียน MATCH ไปบังคับคอลัมน์ ก็คีย์เลข คอลัมน์ที่ต้องการไปเลยครับ

ถ้า หัวตาราง และ Description เหมือนกัน Excel ก็แสดงผลลัพธ์ถูกต้อง

ถ้าไม่เหมือนกัน Excel ก็แสดงผลลัพธ์ไม่ถูกต้องครับ




** สนับสนุนฟอรั่ม กรุณา คลิกโฆษณาที่หน้าเพจ**



แมวใหญ่-Bigcat9

RCA พระราม9 กรุงเทพฯ

...
March201711
Gold
Gold
Posts: 1047
Joined: Sat Mar 11, 2017 7:01 pm
Excel Ver: 2010, 365

Re: ต้องการดึงข้อมูลจากไฟล์อื่นมาไว้ที่ไฟล์งานแบบมีเงื่อนไข

#11

Post by March201711 »

แต่สูตรที่ดึงมาดึงมาไม่ถูกบาง column น่ะค่ะ
User avatar
snasui
Site Admin
Site Admin
Posts: 30913
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: ต้องการดึงข้อมูลจากไฟล์อื่นมาไว้ที่ไฟล์งานแบบมีเงื่อนไข

#12

Post by snasui »

:D กรุณาแนบไฟล์ประกอบพร้อมชี้ให้เห็นว่าหลังจากได้ทำตามคำแนะนำแล้วคอลัมน์ไหนไม่ถูกต้อง ที่ถูกต้องจะต้องได้ค่าเท่าใด จะได้ช่วยกันดูได้ครับ
March201711
Gold
Gold
Posts: 1047
Joined: Sat Mar 11, 2017 7:01 pm
Excel Ver: 2010, 365

Re: ต้องการดึงข้อมูลจากไฟล์อื่นมาไว้ที่ไฟล์งานแบบมีเงื่อนไข

#13

Post by March201711 »

ที่ tab : sheet1 ตรง column B10:D13 ดึงข้อมูลซ้ำกันกับ E10:G13 ควรดึง (high light สีส้ม) และ H10:J10 ก็ดึงข้อมูลซ้ำกันกับ K10:M10
และ K4:M5 ก็ดึงข้อมูลซ้ำกับ H4:J5 โดยดูจาก tab : คำตอบที่้ถูกต้อง ค่ะ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 30913
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: ต้องการดึงข้อมูลจากไฟล์อื่นมาไว้ที่ไฟล์งานแบบมีเงื่อนไข

#14

Post by snasui »

:D ตัวอย่างสูตรที่เซลล์ B4 ครับ

=IFERROR(INDEX([SourceData_new.xlsx]Sheet1!$B$5:$M$22,MATCH($A4,[SourceData_new.xlsx]Sheet1!$A$5:$A$22,0)+IF(B$2="Institution",1,2),MATCH(B$1,[SourceData_new.xlsx]Sheet1!$B$2:$M$2,0)+MATCH(B$3,[SourceData_new.xlsx]Sheet1!$B$4:$E$4,0)-1),"")

Enter > Copy ไปยังเซลล์ด้านขวาและด้านล่างที่เกี่ยวข้อง
March201711
Gold
Gold
Posts: 1047
Joined: Sat Mar 11, 2017 7:01 pm
Excel Ver: 2010, 365

Re: ต้องการดึงข้อมูลจากไฟล์อื่นมาไว้ที่ไฟล์งานแบบมีเงื่อนไข

#15

Post by March201711 »

ได้แล้วค่ะ ขอบคุณค่ะอาจารย์ :D
Post Reply