Page 1 of 3
ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง
Posted: Sat Feb 18, 2012 3:54 pm
by YOYIYOYI
เรียนอาจารย์ครับ ผมได้ลองทำงานออมทรัพย์ของบริษัทแห่งหนึ่งที่ผมทำงานอยู่ (ไม่ขอเอ่ยนาม)
คือตอนนี้ยังไม่มีตัวอย่างไฟล์งานครับลืมไว้ที่บริษัท แต่อยากจะถามอาจารย์คร่าวๆๆก่อนว่าผลเสียมันจะเกิดมั้ยพอถึงขั้นตอนการคำนวนในเซลล์ แต่ทุกชีทที่ผทคำนวนจะวางข้อมูลตรงกันทุกเซลล์ครับ
เริ่มเลยละกันนะครับ
ชีท EM เป็นชีทข้อมูลหลักครับ ตัวอย่าง A1-ลำดับ B1-ชื่อ C1-นามสกุล D1-ยอดออมยกมา54 E1-ยอดกู้ยืมยกมา54
ชีท A55 คือผมก้อใส่สูตร ที่A1 =EM!A1 B1=EM!B1 C1=EM!C1 D1=EM!D1 E1=EM!E1
และชีทอื่นๆๆ ก้อทำในลักษณะเดียวกัน เพียงแต่ เซลล์ต่อจากนั้นก้อจะเอาข้อมูลมาคำนวนแค่นั้นเองครับ
จึงอยากเรียนถามอาจารย์ก่อนว่า มันจะมีผลเสียอะไรบ้าง หรือว่าอาารย์พอจะแนะนำสูตรที่ดีกว่านี้ จักขอบพระคุณอย่างสูงครับ คือเรื่องของเรื่องก็ไม่ค่อยเก่งเอ็กเซล เท่าไหร่ครับ แต่พอดีสงสารคนทำออมทรัพย์ที่บริษัท เขียนในสมุดกดเครื่องคิดเลขเอา ผิดๆๆถูกๆๆ ช้ามากๆด้วยครับ ถ้าผมอธิบายไม่เข้าใจยังไงกราบขอโทษด้วยครับ ไว้พรุ่งนี้จะเอาไฟล์มาปรึกษาครับ
Re: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง
Posted: Sat Feb 18, 2012 4:02 pm
by snasui
ช่วยแก้ข้อความด้วยครับ มีการพิมพ์
คับ แทน ครับ ไปหลายคำ
ตอบในเบื้องต้น จากที่ถามมาสามารถใช้ได้ เป็นการอ้างอิงมาใช้ตรง ๆ ลดการคีย์ซ้ำได้ ไม่ได้เป็นสูตรที่ซับซ้อนครับ
Re: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง
Posted: Sun Feb 19, 2012 12:24 pm
by YOYIYOYI
กราบขอโทษอีกครั้งครับ สำหรับคำที่พิมพ์ตกหล่นในโพสน์ ต้องไปแก้ตรงไหนครับ ผมหาที่แก้ไม่เจอจริงๆครับ
Re: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง
Posted: Sun Feb 19, 2012 12:39 pm
by snasui
ผมแก้ให้แล้วครับ
เนื่องจากผมกำหนดให้สามารถแก้ได้ภายใน 1 ชม. หลังจากโพสต์ หากต้องการแก้ไขหลังจากนั้นจะไม่สามารถแก้ได้ครับ
Re: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง
Posted: Sun Feb 19, 2012 1:04 pm
by YOYIYOYI
ขอถามอาจารย์ต่อนะครับ ถ้าสมมุติที่ ชีทงาน P54 คีย์ เลข 1 ตรง H3 แล้วให้ C3 โชว์ข้อมูล ชื่อ -นามสกุล กับ C6:C18 และD6:D18 โชว์ตามลำดับ โดยอ้างมาจากชีท A54 ซึ่งต้องได้ข้อมูลที่ตรงจากลำดับสมาชิก ผมจะต้องใช้สูตรไหนลิ้งมาได้บ้างครับนอกจาก = ที่ผมทำอยู่เพราะถ้าทำทั้งชีทคงยุ่งยากน่าดูครับ เพราะว่าจำนวนพนักงานมีค่อนข้างเยอะต้องมานั่งCOPY ทุกเซลล์ จึงอยากปรึกษาอาจารย์ช่วยแนะนำด้วยครับ ตัวอย่างครับ
C3=A54!E6
D6=A54!J6
D7=A54!L6
D8=A54!W6
D9=A54!AH6
D10=A54!AS6
D11=A54!BD6
D12=A54!BO6
D13=A54!BZ6
D14=A54!CK6
D15=A54!CV6
D16=A54!DG6
D17=A54!DR6
D18=A54!EC6
Re: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง
Posted: Sun Feb 19, 2012 1:35 pm
by snasui
ลองตามนี้ครับ
- เซลล์ C3 คีย์สูตรเพื่อ Lookup ชื่อมาแสดง
=VLOOKUP(H3,'A54'!$C$6:$E$105,3,0)
Enter
- เซลล์ D6 Lookup ยอดยกมามาแสดง
=VLOOKUP(C3,'A54'!$E$6:$J$105,6,0)
Enter
- เซลล์ D7 Lookup ค่าตามเดือนมาแสดง
=INDEX('A54'!$L$6:$EL$105,MATCH($C$3,'A54'!$E$6:$E$105,0),11*(ROWS(D$7:D7)-1)+1)
Enter > Copy ลงด้านล่าง
Re: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง
Posted: Sun Feb 19, 2012 2:13 pm
by YOYIYOYI
ขอบคุณอาจารย์มากครับ แก้ปัญหาได้เร็วมากครับ ไม่ต้องรอข้ามวันข้ามคืน
ถามต่ออีกนิดนะครับ จากสูตรที่อาจารย์ให้มา ถ้าเราจะคลุมเซลล์แล้วcopy ไปวางเซลล์ถัดไปเพราะผมกำหนด 1 หน้า
จะพิมพ์รายการออกมาได้ 4 คน นะครับ สูตรมันยังจะคำนวนตามเซลล์ให้ถูกต้องตามต้องการในเซลล์อยู่หรือเปล่าครับ
Re: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง
Posted: Sun Feb 19, 2012 2:16 pm
by snasui
ควรลองทำก่อนครับ ติดตรงไหนก็ค่อยมาถามกันครับ
Re: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง
Posted: Sun Feb 19, 2012 5:14 pm
by YOYIYOYI
ครับผม ลองทำตามอาจารย์บอกแล้วครับ ถ้าคลุมแล้ววางไปทางขวาไม่มีปัญหาครับ
แต่พอเอาลงล่างเกิดปัญหาตามนี้ครับ ที่ติดสูตรไว้จะขึ้น #REF!
ตามสูตรอาจารย์ผมดูแล้วก็ไม่รู้จะแก้ตรงเซลล์ไหนนะครับ
พอจะแนะนำวิธีการอ่านสูตรให้คร่าวๆได้ไหมครับ เพราะถ้าให้อาจารย์คอยบอกอย่างเดียว
ผมคิดว่าผมคงไม่เข้าใจวิธีอ่านสูตร เพื่อจะได้นำไปพัฒนาปรับปรุงแก้ไขต่อไปด้วยครับ
ขอบพระคุณมากครับ
Re: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง
Posted: Sun Feb 19, 2012 5:30 pm
by snasui
ลองศึกษา Vlookup จากที่นี่ครับ
http://snasui.blogspot.com/2009/12/vlookup.html
สำหรับ Index และ Match ผมจะแปลสูตรเพื่อทำความเข้าใจคร่าว ๆ ตามด้านล่างครับ
จาก สูตร =INDEX('A54'!$L$6:$EL$105,MATCH($C$3,'A54'!$E$6:$E$105,0),11*(ROWS(D$7:D7)-1)+1) หมายความว่า
จากช่วงข้อมูล 'A54'!$L$6:$EL$105 ซึ่งมีลักษณะเป็นตาราง ให้นำ
บรรทัดที่เป็นผลลัพธ์ของ MATCH($C$3,'A54'!$E$6:$E$105,0) และ
คอลัมน์ที่เป็นผลลัพธ์ของ 11*(ROWS(D$7:D7)-1)+1 มาแสดง
จากสูตร MATCH($C$3,'A54'!$E$6:$E$105,0) หมายถึง ให้หาว่า $C$3 อยู่ในลำดับที่เท่าไรของช่วงข้อมูล ,'A54'!$E$6:$E$105 ผลลัพธ์ที่ได้จะเป็นลำดับที่ เพื่อจะใช้เป็นบรรทัดที่ในฟังก์ชั่น Index ต่อไป
จากสูตร 11*(ROWS(D$7:D7)-1)+1 หมายถึง ให้นำจำนวนแถวในช่วง D$7:D7 มาลบด้วย 1 แล้วคูณด้วย 11 จากนั้นให้บวกด้วย 1 เข้าไปอีกรอบ ผลลัพธ์ที่ได้จะเป็นลำดับคอลัมน์เพื่อจะใช้เป็นส่วนประกอบของฟังก์ชั่น Index ต่อไป
การแกะสูตรสามารถคลิกลงในเซลล์ที่มีสูตร จากนั้นเลือกคลุมช่วงที่ต้องการทราบคำตอบใน Formula bar แล้วกดแป้น F9 ช่วงที่คลุมจะแสดงผลลัพธ์ออกมาให้เห็นว่าได้เป็นเท่าไรครับ
Re: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง
Posted: Tue Feb 21, 2012 1:03 pm
by YOYIYOYI
ขอบคุณอาจารย์มากครับ หลังจากที่ได้นำสูตรของอาจารย์ไปใช้ ตอนนี้ได้ผลตามเป้าหมายครับ ส่วนที่ผมถามไปผมก็ทำได้แล้วครับ ผมรู้สึกดีใจมากเลยครับที่ได้ช่วยพี่ๆๆที่บริษัทนะครับ ภูมิใจด้วยครับ ที่พอทำออกมาได้แต่ส่วนนึงก็มาจากอาจารย์ที่คอยแนะนำ แต่ก็ยังติดเรื่องแกะสูตรครับ ยังไม่ค่อยเข้าใจดีเท่าไหร่ ต้องให้เวลากับมันอีกสักพักนะครับ อยากจะขอคำแนะนำอาจารย์อีกเรื่องนึงครับ อยากถามอาจารย์ว่า ตั้งแต่อาจารย์หัดเริ่มแรกๆเลยนะครับ อาจารย์มีวิธีมีแนวคิดเริ่มยังไงครับ ถึงทำให้ได้เก่งและจดจำสูตรได้แม่นนะครับ คือผมจะได้เอาไปเป็นแนวทางเพื่อศึกษาเพิ่มเติมระดับความรู้ของผมครับ เพราะงานที่ทำอยู่ทุกวันนี้ ดูแล้วมันยังต้องการพวกนี้ไปปรับปรุงแก้ไขอีกมากเลย แต่ว่าผมไม่รู้จะเริ่มตรงไหนดีถึงมันจะไม่ได้เก่งและจำแม่นขนาดอาจารย์ ก็แค่ขอให้ได้สักนิดก็ยังดีนะครับ รบกวนด้วยครับ ขอบพระคุณมากครับผม
Re: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง
Posted: Tue Feb 21, 2012 2:01 pm
by snasui
ขอตอบแบบหลัก ๆ นะครับ เนื่องจากผมใช้ Excel ในการทำงานประจำวัน และตอบปัญหาให้กับเพื่อน ๆ จึงมีความคุ้นเคยและจำได้ค่อนข้างแม่น สิ่งสำคัญเกิดจากการฝึกฝนประยุกต์ใช้งานในลักษณะต่าง ๆ มาค่อนข้างเยอะครับ
Re: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง
Posted: Tue Feb 21, 2012 2:08 pm
by YOYIYOYI
ขอบคุณอาจารย์ครับ ที่แนะนำ จะนำไปเป็นแนวทางครับ เพื่อพัฒนาตัวเองขึ้นไปอีกระดับ
Re: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง
Posted: Tue Feb 21, 2012 2:54 pm
by YOYIYOYI
เจอปัญหาอีกแล้วครับอาจารย์ ถามต่ออีกนิดครับ คือข้อมูลในตารางมันมีมากกว่า 1 หน้านะครับ เวลาพิมพ์ คือผมต้องการพิมพ์เฉพาะจุดที่ต้องการ ลองหาข้อมูลดูแล้วต้องเขียน VBA มีวิธีที่ไม่ต้องเขียนไม่ได้ไหมครับ เพราะผมยังไม่ถึงขั้นเขียนได้ครับ
Re: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง
Posted: Tue Feb 21, 2012 3:02 pm
by snasui
ช่วยยกตัวอย่างข้อมูลว่ามีการวางตำแหน่งอย่างไร จะได้สะดวกในการตอบ ปกติถ้าตำแหน่งข้อมูลอยู่ในระนาบเดียวกันไม่ว่าจะเป็นทางบรรทัดหรือทางคอลัมน์ เราสามาซ่อนส่วนที่ไม่ต้องการพิมพ์ไว้ก่อนได้ครับ
Re: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง
Posted: Tue Feb 21, 2012 3:16 pm
by YOYIYOYI
ครับผม คือ ข้อมูลที่มี ตั้งแต่ A1:EQ105 แต่ที่ผมต้องการพิมพ์คือ แบ่งเป็นช่วงๆครับ เช่น A1:U105 , V1:AF105 ประมาณนี้นะครับ
Re: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง
Posted: Tue Feb 21, 2012 3:37 pm
by snasui
ช่วงข้อมูลที่ยกมาเป็นตัวอย่างอยูติดกันครับ ไม่ทราบว่าจะพิมพ์ช่วงไหนครับ ช่วยระบุช่วงเซลล์ที่ต้องการพิมพ์ เช่น
A1:C30, Z1:AB30 เช่นนี้เป็นต้น
และหากต้องการพิมพ์ตามที่ผมยกตัวอย่างมา ให้ทำการ
ซ่อนคอลัมน์ D:Y ไปก่อนครับแล้วค่อยพิมพ์ครับ
Re: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง
Posted: Tue Feb 21, 2012 3:48 pm
by YOYIYOYI
ผมคงอธิบายไม่ละเอียด คือตามนี้คับ ประมาณว่า ข้อมูล A1:EQ105 แต่งานที่ผมต้องการ มันแยกเป็นเดือนนะครับอย่างที่บอกไป ช่วงแรก ต้องการพิมพ์ A1:U105 จะเป็นเดือน มกราคมครับ แล้ว W1:AF105 เป็น เดือนกุมภาพันธ์ เป็นต้นครับมันจะถัดไปเป็นช่วง ๆ แต่ต้องการพิมพ์ตามช่วงที่บอก ถ้าใช้วิธีซ่อนผมต้องซ่อนตลอดครับ พอเดือนถัดไปผมก็ต้องคลิกเปิดมันมาใหม่อีก ที่ถามคือต้องการมีวิธีไหนดีกว่าซ่อนนะครับ ขอบคุณครับ
Re: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง
Posted: Tue Feb 21, 2012 3:51 pm
by snasui
มันมีวิธีการซ่อนการยกเลิกการซ่อนของมันอยู่ครับ ทำไว้ตั้งแต่แรก จากนั้นจะซ่อนหรือยกเลิกการซ่อนก็แค่คลิกเดียวไม่ได้ยุ่งยากอะไร ทางที่ดีช่วยแนบไฟล์ตัวอย่างมาดีกว่า ระบายสีให้เห็นชัดเจนว่าต้องการซ่อนจากไหนถึงไหน จะได้ง่ายต่อการตอบครับ
Re: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง
Posted: Wed Feb 22, 2012 1:50 pm
by YOYIYOYI
ขอโทษอีกครั้งครับ เขียนอธิบายนี่มันก็ค่อนข้างลำบากเหมือนกันครับ ผมได้แนบไฟล์มาแล้วครับ
ช่วยแนะนำด้วยครับ
ตัวอย่างยกมาแค่ 4 เดือนครับ ที่ทำไฮไลน์ไว้ครับต้องการพิมพ์ A1:L13 เป็นเดือนมกราคม ผมต้องซ่อนตั้งแต่ คอลัม M1:AD13พอสิ้นเดือน ก้อจะเป็นเดือน กุมภาพันธ์ ครับ ต้องการพิมพ์ผมก็ จะซ่อน G1:L13 ซึ่งจะเป็นของเดือน มกราคม แล้ว M1:R13 ก็จะมาแทนครับ เป็นเดือน กุมภาพันธ์ และต้องซ่อน R1:AD13 อีกถ้าจะพิมพ์ เดือน กุมภาพันธ์ ก็เป็นแบบนี้ไปทุกเดือนนะครับซึ่งมันลำบากมากครับเนื่องจากไฟล์งานจริงคอลัมที่ต้องการพิมพ์มันเยอะกว่านี้นะครับ อาจารย์พอจะมีวิธีแก้และแนะนำได้ไหมครับ