Page 1 of 1

รบกวนด้วยครับ เรื่องการทำ database

Posted: Thu Aug 11, 2011 11:37 am
by Boykaae
สวัสดีครับพี่พงษ์
หลังจากเข้ามาเก็บความรู้จาก web นี้มานานและได้รับความช่วยเหลือจากพี่มาตลอด
ในวันนี้ผมก็ติดปัญหาอีกแล้วครับ
คือผมทำได้ สั่ง export file จาก database เป็น 1 sheet ;1 file ใหม่
แล้วในfile report ซึ่งผมใช้สูตร Sumproduct ในการดึงข้อมูล
จาก file database ที่เราทำเอาไว้ในตอนแรกครับ
ผลออกมา โปรแกรมทำงานช้ามากๆๆๆเลยครับ
มีวิธีทำให้มันเร็วๆบ้างไหมครับ ขอคำปรึกษาด้วยครับ

Re: รบกวนด้วยครับ เรื่องการทำ database

Posted: Thu Aug 11, 2011 11:47 am
by Boykaae
ผมว่าไม่เห็นภาพ ผมได้ลองแนบ file ที่มีลักษณะเดียกันมานะครับ

Re: รบกวนด้วยครับ เรื่องการทำ database

Posted: Thu Aug 11, 2011 1:18 pm
by snasui
:D การทำให้สูตร Sumprduct ขยายตามช่วงข้อมูลให้ใช้การตั้งชื่อให้กับช่วงเซลล์ครับ กรณีใช้ Sumproduct หลายเงื่อนไขทั้งใช้กับช่วงข้อมูลขนาดใหญ่ และยังใช้สูตรจำนวนมากย่อมคำนวณช้าเป็นเรื่องปกติครับ

การตั้งชื่อให้กับช่วงเซลล์เช้าเมนู Insert > Name > Define > ช่อง Name in workbook: กรอกชื่อที่ต้องการ > ช่อง Refers to: กรอกสูตรเช่น

=Offset($A$1,0,0,Counta($A:$A),1)

สูตรข้างต้นจะขยายตามปริมาณข้อมูลในคลัมน์ A

Re: รบกวนด้วยครับ เรื่องการทำ database

Posted: Thu Aug 11, 2011 1:27 pm
by Boykaae
ถ้าเราใช้ VB จะพอช่วยได้ไหมครับ

Re: รบกวนด้วยครับ เรื่องการทำ database

Posted: Thu Aug 11, 2011 1:37 pm
by Boykaae
คือ ใช้ VB แทน sumproduct นะครับ
พอแนะนำเป็น guide line ได้ไหมครับ
ในทางเดียวกัน คือ รวมตามเงื่อนไขนะครับ

Re: รบกวนด้วยครับ เรื่องการทำ database

Posted: Thu Aug 11, 2011 2:23 pm
by snasui
:lol: ปกติ VBA จะไม่เร็วไปกว่าฟังก์ชั่นปกติที่มากับ Excel ครับ ถ้าจะทำก็ทำได้แต่น่าจะช้ากว่าเดิมครับ หากต้องการลองก็ลองเขียนมาก่อนครับ ติดตรงไหนก็มาดูกันต่อ

สำหรับแนวทางสำหรับใช้สูตรแล้วให้เร็วขึ้นคือ นำเงื่อนไขทั้งหลายมาเชื่อมกันแล้วใช้ Sumif, Countif มาช่วย จะเร็วขึ้นอย่างเห็นได้ชัดครับ

Re: รบกวนด้วยครับ เรื่องการทำ database

Posted: Sat Aug 13, 2011 8:41 am
by Boykaae
ขอบคุณสำหรับคำแนะนำครับ

Re: รบกวนด้วยครับ เรื่องการทำ database

Posted: Mon Aug 15, 2011 1:20 pm
by Boykaae
พี่ครับ
รบกวนสอบถามอีกเรื่องครับ คือ
ทำไมผมใช้สูตร sumproduct แล้วเวลาที่มีข้อมูลเพิ่ม แล้วรูปแบบเซลล์กลายเป็น Date หมดเลยครับ
มีวิธีแก้ไขไหมครับ

Re: รบกวนด้วยครับ เรื่องการทำ database

Posted: Mon Aug 15, 2011 2:02 pm
by snasui
:D เป็นไปได้ว่าเซลล์ที่ใช้แสดงผลลัพธ์มีรูปแบบเป็นวันที่อยู่ก่อนหน้านั้น หรือ เป็นการคำนวณจากเซลล์ที่เป็นวันที่ ถ้าเป็นไปได้ช่วงส่งตัวอย่างไฟล์และชี้ให้เห็นเซลล์ที่เป็นปัญหาจะได้วินิจฉัยได้ตรงประเด็นขึ้นครับ