Page 1 of 1
สอบถามการดึงข้อมูลหน่อยครับ
Posted: Sun Jan 20, 2013 10:35 am
by sakoobaa
เรียนอาจารย์ครับ จากไฟล์ที่แนบมาให้นั้น ชีสที่ 1 จะเห็นได้ว่า ช่อง C5 จะเป็นชื่อที่ดึงมาจาก ชีส 2
และ ชีส 1 ช่อง E5 จะใส่สูตร ดึงค่ามาจากชีส 2 แต่มีบางค่าดึงข้อมูลไม่ได้ ไม่ทราบว่าควรปรับเปลี่ยนสูตรอย่างไรดีครับ
Re: สอบถามการดึงข้อมูลหน่อยครับ
Posted: Sun Jan 20, 2013 12:12 pm
by joo

ลองตามนี้ดูครับ ที่ Sheet2 ควรจัดเก็บข้อมูลเรียงต่อกันลงมาด้านล่างและที่ Sheet1 เซลล์ E5 ปรับสูตรเป็น
=IF(ISNA(VLOOKUP(C5,Sheet2!B1:C44,2,0)),"",VLOOKUP(C5,Sheet2!B1:C44,2,0))Enter>Copy ลงด้านล่าง
ที่ Sheet1 ในช่องรายการสินค้าควรทำ Validation เพื่อใช้เลือกรายการสินค้า
Re: สอบถามการดึงข้อมูลหน่อยครับ
Posted: Sun Jan 20, 2013 12:19 pm
by tigerwit
ไม่เจอเพราะ สูตร =IF(ISNA(VLOOKUP(C14,Sheet2!B10:K29,2,0)),"",VLOOKUP(C14,Sheet2!B10:K29,2,0))
มันจะวิ่งไปหา ที่เซล b10 : k29 คอลัมน์ที่ 2 ของ sheet2 เท่านั้น
มันจะเจอเฉพาะ
เสื้อแขนสั้น/เสื้อกล้าม
เสื้อคอปก/เสื้อเชิ้ต แขนสั้น
เสื้อแขนยาว/เสื้อแขน3ส่วน
เสื้อ/กางเกง/กระโปรง เด็ก
เสื้อกันหนาว
เสื้อแฟชั่น ช/ญ
กางเกงขาสั้น
กางเกงขายาว
กางเกงยีนส์
กางเกงแฟชั่น ช/ญ
ตุ๊กตา เล็ก
ตุ๊กตา กลาง
ตุ๊กตา ใหญ่
เท่านั้น
ตัวอย่างที่ไม่เจอเช่น "ชุดกระโปรงไหมเทียม" มันอยู่ที่ เซล e9 อย่างไรก็ไม่เจอครับ
ต้องปรับ sheet2 ให้กรอกข้อมูลเรียงกันลงมาเรื่อย ๆ
ไม่งั้นก็ต้องเขียนสูตรใหม่..
ลองดูไฟล์ที่แนบมาพร้อมนี้ครับ

อ้าว!! ชนคุณ Joo ซะแล้ว

Re: สอบถามการดึงข้อมูลหน่อยครับ
Posted: Sun Jan 20, 2013 1:59 pm
by sakoobaa
ขอบคุณครับ จะทำการแก้ไขแบบฟรอมดาต้าใหม่ ตามที่แนะนำครับ
Re: สอบถามการดึงข้อมูลหน่อยครับ
Posted: Sun Jan 20, 2013 3:59 pm
by sakoobaa
เรียนอาจารย์ สอบถามเพิ่มเติมนะครับ จากไฟล์ที่แนบ พอดีผมเขียน vba ตรง ชีส 002 โมดุล ที่6 ครับให้ไปบันทึกที่ ชีส data 2 ครับ
ตอนแรกทำงานได้ แต่พอกดไปสักสองสามครับก็ ไม่ทำงานเลย ไม่ทราบว่าควรเพิ่มเติมหรือแก้ไข สูตรอย่างไรบ้างครับ
Re: สอบถามการดึงข้อมูลหน่อยครับ
Posted: Sun Jan 20, 2013 4:39 pm
by joo

ไฟล์ที่แนบมาตรวจสอบแล้วไม่พบ โค๊ดที่สั่งให้บันทึกข้อมูลครับ ไม่ทราบว่าอยู่ที่ Module ไหน Procedure ใดครับ และต้องการให้เก็บค่าไหนไปไว้ที่เซลล์ไหนครับ
Re: สอบถามการดึงข้อมูลหน่อยครับ
Posted: Sun Jan 20, 2013 6:58 pm
by sakoobaa
อยู่ใน Module6 คับ ปุ่ม Sub S002_Button2_Click() ครับ เป็นการเก็บค่าจากชีส 002 ไปไว้ในชีส data2 ครับ
Re: สอบถามการดึงข้อมูลหน่อยครับ
Posted: Sun Jan 20, 2013 7:37 pm
by snasui

จากตัวอย่างที่แนบมาล่าสุด
ช่วยทำตัวอย่างคำตอบที่ต้องการไว้ด้วยเพื่อจะได้เข้าใจตรงกันว่านำค่าต่าง ๆ ไปอย่างไร เพราะดูเหมือนว่ามีการเตรียมให้วางข้อมูลในชีท data2 ไปทางขวาเรื่อย ๆ
Re: สอบถามการดึงข้อมูลหน่อยครับ
Posted: Sun Jan 20, 2013 8:14 pm
by sakoobaa
เรียนอาจารย์ ผมได้แนบไฟล์ตัวอย่าง เมือ่ทำการกดปุ่มบันทึก ในชีส 002 จะทำการนำเอาข้อมูลไปเรียงต่อแบบแนวนอน ใน ชีส data2 ครับ
-สิ่งที่ต้องการคือ เวลาผมกด vba มันไม่มีการบันทึกครับ
-ถ้าสูตรที่ผมเขียนผิดไม่ทราบว่าควรแก้ไขอย่างไรหรือ เพิ่มเติมตรงไหนชี้แนะด้วยครับ
Re: สอบถามการดึงข้อมูลหน่อยครับ
Posted: Sun Jan 20, 2013 8:39 pm
by snasui
ลบค่าในบรรทัดที่ 2727 ออกไปก่อน จากนั้นลองปรับ Code เป็นตามด้านล่างครับ
Code: Select all
Sub S002_Button2_Click()
Lastline = Sheets("data2").Range("a65536").End(xlUp).Row + 1 '<== Change b65536 to a65536
Sheets("data2").Cells(Lastline, 1) = Range("d1").Value
Sheets("data2").Cells(Lastline, 3) = Range("c2").Value
Sheets("data2").Cells(Lastline, 4) = Range("e4").Value
Sheets("data2").Cells(Lastline, 5) = Range("f16").Value
Sheets("data2").Cells(Lastline, 6) = Range("i16").Value
Sheets("data2").Cells(Lastline, 7) = Range("c6").Value
Sheets("data2").Cells(Lastline, 8) = Range("d6").Value
Sheets("data2").Cells(Lastline, 9) = Range("c7").Value
Sheets("data2").Cells(Lastline, 10) = Range("d7").Value
Sheets("data2").Cells(Lastline, 11) = Range("c8").Value
Sheets("data2").Cells(Lastline, 12) = Range("d8").Value
Sheets("data2").Cells(Lastline, 13) = Range("c9").Value
Sheets("data2").Cells(Lastline, 14) = Range("d9").Value
Sheets("data2").Cells(Lastline, 15) = Range("c10").Value
Sheets("data2").Cells(Lastline, 16) = Range("d10").Value
Sheets("data2").Cells(Lastline, 17) = Range("c11").Value
Sheets("data2").Cells(Lastline, 18) = Range("d11").Value
Sheets("data2").Cells(Lastline, 19) = Range("c12").Value
Sheets("data2").Cells(Lastline, 20) = Range("d12").Value
Sheets("data2").Cells(Lastline, 21) = Range("c13").Value
Sheets("data2").Cells(Lastline, 22) = Range("d13").Value
Sheets("data2").Cells(Lastline, 23) = Range("c14").Value
Sheets("data2").Cells(Lastline, 24) = Range("d14").Value
Sheets("data2").Cells(Lastline, 25) = Range("c15").Value
Sheets("data2").Cells(Lastline, 26) = Range("d15").Value
End Sub
Re: สอบถามการดึงข้อมูลหน่อยครับ
Posted: Sun Jan 20, 2013 8:48 pm
by sakoobaa
ขอบคุณอาจารย์ มากครับ
