Page 1 of 1
จะทำ Database แต่จำนวน row ไม่เท่ากัน จะทำ template อย่างไร
Posted: Thu Feb 21, 2013 2:25 pm
by godman
สวัสดีครับ
ผมมีปัญหาที่ยากสำหรับผม คือเรื่องมีอยู่ว่า ผมอยากนำข้อมูลจาก word มาใส่ใน excel โดยให้เจ้าหน้าที่ copy วางแต่ว่าข้อมูลใน word ไม่คงที่มีแถวมากบ้างน้อยบ้างในบางวัน แล้วแต่จำนวนรายการเอกสารที่จะลงทะเบียน บางวันอาจมี 1 เอกสารคือ 1 รายการต่อ 1 ใบ DCR ผมอยากจะเก็บข้อมูลในลักษณะนี้อย่างไรดี ผมแนบไฟล์ ในไฟล์ยกตัวอย่างแค่ 2 style โดยอยากสร้าง sheet template ตามที่เคยได้รับการสอนมาจากเว็บนี้ แต่ผมจะสร้างสูตรที่ sheet template เซลล์ B2 ได้อย่างไรครับ ผมลองสูตรพวก indirect มันไม่ได้เลย มันมีจุดร่วมที่ชื่อหัวข้อของฟอร์ม เหมือนกันและคอลัมพ์น่าจะเหมือนกัน
Re: จะทำ Database แต่จำนวน row ไม่เท่ากัน จะทำ template อย่า
Posted: Thu Feb 21, 2013 7:33 pm
by snasui

ไม่เข้าใจคำถามครับ ควรจะยกตัวอย่างให้เห็นว่าค่า B2 เป็นค่าใด เนื่องจากเงื่อนไขใด จะได้เข้าใจตรงกัน
Re: จะทำ Database แต่จำนวน row ไม่เท่ากัน จะทำ template อย่า
Posted: Thu Feb 21, 2013 9:57 pm
by godman
ขอโทษทีครับ ผมไม่ใส่ให้เรียบร้อยผมใส่คำตอบให้แล้วครับ ช่องนี้คือเอาจากชี้ต Style1 แต่จริงๆคือฟอร์มใน Style นี้อาจจะมีหน้าตาเหมือน Style2 ก็ได้ เพราะข้อมูลไม่เท่ากัน แต่ห้ัวข้อหรือwording จะเหมือนกันเพราะมาจากฟอร์ม word เดียวกัน
Re: จะทำ Database แต่จำนวน row ไม่เท่ากัน จะทำ template อย่า
Posted: Thu Feb 21, 2013 10:03 pm
by snasui

ลองตามนี้ครับ
เซลล์ B2 คีย์สูตร
=IF(C2="","",TRIM(MID(Style1!$A$3,FIND(":",Style1!$A$3)+1,255)))
Enter > Copy ลงด้านล่าง
Re: จะทำ Database แต่จำนวน row ไม่เท่ากัน จะทำ template อย่า
Posted: Thu Feb 21, 2013 10:27 pm
by godman
ขอบคุณครับ ผมขอนุญาติส่งการบ้าน ผมทำได้จากสูตรที่อาจารย์ให้มา แต่ว่า เจอความซับซ้อนตรง F2 เพราะจำนวนแถวในแต่ละอันไม่เท่ากัน แต่เรารู้แน่นอนว่าไม่เกินคำสองคำคือหัวข้อที่อยู่ระหว่างกลางครับ ผมอยากได้สูตรที่ F2 ครับ
Re: จะทำ Database แต่จำนวน row ไม่เท่ากัน จะทำ template อย่า
Posted: Thu Feb 21, 2013 10:45 pm
by snasui

ไม่เข้าใจครับ
หากต้องการหาจำนวนแถวของข้อมูลสามารถใช้ Match เข้ามาช่วยได้ เช่น
=MATCH("REASON(s) FOR CHANGE:",Style1!A:A,0)-MATCH("Documents affected: ",Style1!A:A,0)-
2
คำตอบจะได้ 11 เลข 2 ที่ใช้หักเพื่อให้ได้ข้อมูลจริง เนื่องจากค่าทั้งสองอยู่ก่อนและหลังข้อมูล นอกจากนี้ยังมีบรรทัดว่างก่อนข้อมูลด้วย
Re: จะทำ Database แต่จำนวน row ไม่เท่ากัน จะทำ template อย่า
Posted: Thu Feb 21, 2013 10:49 pm
by godman
อ๋อ ผมนึกออกแล้ว ว่าผมเคยเห็นอาจารย์ตอบในที่ใดที่หนึ่งเกี่ยวกับ index มาแสดง ผมจะลองนำไป apply ดูครับ ขอบพระคุณมากครับ
Re: จะทำ Database แต่จำนวน row ไม่เท่ากัน จะทำ template อย่า
Posted: Thu Feb 21, 2013 11:07 pm
by snasui

ผมเข้าใจว่าต้องการนำช่วงข้อมูลที่อยู่ระหว่าง
REASON(s) FOR CHANGE: กับ
Documents affected: มาแสดง
ลองดูตัวอย่างสูตรที่ F2 ตามด้านล่างครับ
=IF(ROWS(F$2:F2)>MATCH("REASON(s) FOR CHANGE:",Style1!A:A,0)-MATCH("Documents affected: ",Style1!A:A,0)-2,"",INDEX(INDEX(Style1!A:A,MATCH("REASON(s) FOR CHANGE:",Style1!A:A,0)-1):INDEX(Style1!A:A,MATCH("Documents affected: ",Style1!A:A,0)+2),ROWS(F$2:F2)))
Enter > Copy ลงด้านล่าง
Re: จะทำ Database แต่จำนวน row ไม่เท่ากัน จะทำ template อย่า
Posted: Fri Feb 22, 2013 8:46 am
by godman
ผมลองทำแล้วครับ แต่ยังไม่บรรลุผล หรือว่าจะเกี่ยวกับ merge cell หรือปล่าวครับ ผมแนบไฟล์ที่ผมทำมาให้ดู
Re: จะทำ Database แต่จำนวน row ไม่เท่ากัน จะทำ template อย่า
Posted: Fri Feb 22, 2013 8:50 am
by snasui

คำว่า
REASON(s) FOR CHANGE: ในชีท
Style1 มีวรรคระหว่างคำ 2 วรรค ส่วนในสูตรมีวรรคเดียว เปลี่ยนให้เหมือนกันก็จะได้คำตอบครับ
เพื่อความมั่นใจให้ Copy ค่าในเซลล์ A19 ของชีท
Style1 มาวางแทนคีย์เข้าไปเอง นอกจากนี้ฟังก์ชั่น Rows ก็กำหนดการ Lock เซลล์ไม่ถูกต้อง
Re: จะทำ Database แต่จำนวน row ไม่เท่ากัน จะทำ template อย่า
Posted: Fri Feb 22, 2013 9:10 am
by godman
OH MY GOD ได้แล้วครับ ขอบพระคุณมากครับ มาเที่ยวแถวอยุธยาเมื่อไหร่บอกด้วยครับ