Page 1 of 1

กลับค่าสูตรจากแนวนอนให้เป็นแนวตั้ง

Posted: Sun Oct 02, 2011 8:49 pm
by wisit
อาจารย์ครับ ผมมีปัญหาที่แก้ไม่ตกตรงสูตรที่ทำมันต้องลากไปในแนวนอน (ไม่สามารถลากแนวตั้งได้ เพราะสูตรมันประมาณ =A2, B2, C2,......J2) เมื่อลากเสร็จ สามารถที่จะทำให้มันอยู่ในรูปแนวตั้งได้หรือเปล่าครับอาจารย์ เพราะข้อมูลที่ทำมันมีจำนวนมาก หากเลือนไปที่ละอันจะเสียเวลามากครับ อยากได้วิธีที่ทำให้สูตรแนวนอน เป็นแนวตั้งครับอาจารย์

Re: กลับค่าสูตรจากแนวนอนให้เป็นแนวตั้ง

Posted: Sun Oct 02, 2011 8:53 pm
by snasui
:D ส่งตัวอย่างไฟล์มาด้วยครับ แสดงปัญหาที่เป็นและตัวอย่างคำตอบที่ต้องการ จะได้สะดวกในการตอบครับ 8-)

Re: กลับค่าสูตรจากแนวนอนให้เป็นแนวตั้ง

Posted: Sun Oct 02, 2011 9:43 pm
by wisit
ไฟล์งานที่ส่งรหัสสินค้ายังมีอีกหลายร้อยครับ ผมยังไม่ได้ทำ รบกวนอาจารย์ช่วยหาวิธีหน่อยครับ :mrgreen:

Re: กลับค่าสูตรจากแนวนอนให้เป็นแนวตั้ง

Posted: Sun Oct 02, 2011 10:08 pm
by snasui
:D สำหรับการ Link ลักษณะนั้นไม่ต้องคีย์เข้าไปเองครับ

วิธีการ
1. คลุมช่วงเซลล์ต้นทาง > คลิกขวา > Copy
2. คลิกเซลล์ปลายทาง > คลิกขวา > Paste Special > Paste Link

Re: กลับค่าสูตรจากแนวนอนให้เป็นแนวตั้ง

Posted: Sun Oct 02, 2011 10:27 pm
by wisit
อาจารย์ครับ เมื่อผมวางตามที่อาจารย์แนะนำ ก็ได้ค่าตามอาจารย์แนะนำ แต่เมื่อติ๊กตรงรหัสสินค้า ค่าที่วางกลับขึ้นว่า FALSE ไม่ขึ้น TRUE ครับอาจารย์ :flw:

Re: กลับค่าสูตรจากแนวนอนให้เป็นแนวตั้ง

Posted: Sun Oct 02, 2011 10:51 pm
by snasui
:shock: แนบตัวอย่างพร้อมระบุเซลล์ที่เป็นปัญหามาดูกันครับ

Re: กลับค่าสูตรจากแนวนอนให้เป็นแนวตั้ง

Posted: Sun Oct 02, 2011 11:28 pm
by wisit
อาจารย์ครับผมได้แนบไฟล์มาแล้วครับ ผมได้อธิบายตามในไฟล์งานแล้วครับอาจารย์ :mrgreen:

Re: กลับค่าสูตรจากแนวนอนให้เป็นแนวตั้ง

Posted: Sun Oct 02, 2011 11:41 pm
by snasui
:o ไฟล์เดิมข้อมูลเรียงไปด้านล่างผมก็เลยเข้าใจว่ายังเรียงเหมือนเดิม ตอนนี้เป็นการเรียงไปทางขวา การวางแบบแบบ Link เป็นชุด ๆ จึงไม่สามารถใช้ได้

ลองตามนี้ครับ

ที่เซลล์ B30 คีย์สูตร

=INDEX($AG$2:$AP$13,INT((ROWS(B$30:B30)-1)/10)+1,MOD(ROWS(B$30:B30)-1,10)+1)

Enter > Copy ลงด้านล่าง ทดสอบการใช้งานแล้วสังเกตดูผลครับ

Re: กลับค่าสูตรจากแนวนอนให้เป็นแนวตั้ง

Posted: Mon Oct 03, 2011 12:13 am
by wisit
:lol: ลองทำดูแล้วครับอาจารย์ ได้ผลตามที่แนะนำเลยครับอาจารย์ แต่ผมสงสัยนิดนึงครับอาจารย์ ถ้าเราใช้สูตรที่อาจารย์แนะนำ กับเราใช้ =AG2, AH2,....,AP2 จะมีผลทำให้โปรแกรมทำงานช้าต่างกันมากหรือเปล่าครับอาจารย์ หรือไม่ต่างกันเท่าไหร

อีกนิดครับอาจารย์ ผมอยากได้คำอธิบายเกี่ยวกับสูตรที่อาจารย์แนะนำ เพราะผมไม่ทราบที่มา รบกวนอาจารย์หน่อยครับ

ขอบคุณอาจารย์มากครับที่ช่วยแก้ไขปัญหาต่าง ๆ ให้แก่ผมได้มากที่สุดเลยครับ :mrgreen:

Re: กลับค่าสูตรจากแนวนอนให้เป็นแนวตั้ง

Posted: Mon Oct 03, 2011 11:47 am
by snasui
wisit wrote:แต่ผมสงสัยนิดนึงครับอาจารย์ ถ้าเราใช้สูตรที่อาจารย์แนะนำ กับเราใช้ =AG2, AH2,....,AP2 จะมีผลทำให้โปรแกรมทำงานช้าต่างกันมากหรือเปล่าครับอาจารย์ หรือไม่ต่างกันเท่าไหร
:D ต่างกันครับ =AG2, AH2,....,AP2 เป็นการ Link มาธรรมดา ไม่ต้องออกแรงประมวลผล ส่วนสูตรที่ให้ไปต้องทำการประมวลผลมากกว่า หากพื้นที่ขนาดใหญ่ความเร็วก็จะน้อยลงครับ

จากสูตร =INDEX($AG$2:$AP$13,INT((ROWS(B$30:B30)-1)/10)+1,MOD(ROWS(B$30:B30)-1,10)+1) หมายความว่า จากช่วง $AG$2:$AP$13 ให้นำข้อมูลในบรรทัดที่ได้จากผลลัพธ์ของสูตร INT((ROWS(B$30:B30)-1)/10)+1 และคอลัมน์ที่ได้จากผลลัพธ์ของสูตร MOD(ROWS(B$30:B30)-1,10)+1 มาแสดง

จากสูตร INT((ROWS(B$30:B30)-1)/10)+1 หมายถึง ให้หาจำนวนเต็มของการหาร (ROWS(B$30:B30)-1) ด้วย 10 แล้วบวกด้วย 1

จากสูตร ROWS(B$30:B30) คือจำนวนบรรทัดจาก B30:B30

จากสูตร MOD(ROWS(B$30:B30)-1,10)+1 หมายถึงให้หาเศษจากการหาร ROWS(B$30:B30)-1 ด้วย 10 แล้วบวกด้วย 1

Re: กลับค่าสูตรจากแนวนอนให้เป็นแนวตั้ง

Posted: Mon Oct 03, 2011 10:39 pm
by wisit
ขอบคุณมากครับอาจารย์ ถ้างั้นผมคงต้องใช้สูตร = ที่เป็นแบบ Link ธรรมดา เพื่อให้การประมวลผลเร็วขึ้น แต่ถ้าข้อมูลผมมีประมาณ 7-12 เมก จะให้ผลความเร็วต่างกันไหมครับ พอดีผมยังไม่ได้ลองทำทั้งสองสูตร :mrgreen:

Re: กลับค่าสูตรจากแนวนอนให้เป็นแนวตั้ง

Posted: Mon Oct 03, 2011 10:51 pm
by snasui
:D โดยปกติขนาดไฟล์ไม่ได้สัมพันธ์โดยตรงกับการประมวลผลช้าหรือเร็วครับ โดยหลัก ๆ แล้วสูตร, การ Link ระหว่างไฟล์และเครื่องมือบางอย่าง เช่น PivotTable ที่ใช้ต่างหากครับที่จะมีผลโดยตรง

สำหรับสูตร Index(int,Mod) ตามด้านบน หากใช้จำนวนมากก็ทำให้ประมวลผลช้าลงได้และช้ากว่าการ Link ธรรมดาแน่นอนครับ

Re: กลับค่าสูตรจากแนวนอนให้เป็นแนวตั้ง

Posted: Mon Oct 03, 2011 11:03 pm
by wisit
:D ขอบคุณอาจารย์มากครับ ที่ให้คำแนะนำที่ดีแก่ผมได้มากที่สุด ถ้าไม่มีเว็บนี้ผมคงคิดไม่ตกแน่ ๆ

ขอบคุณอาจารย์มาก ๆ ครับ สำหรับสิ่งดี ๆ ที่อาจารย์แนะนำแก่ผู้ที่มีปัญหา โดยเฉพาะ Excell :lol: