Page 1 of 1
นำข้อความมาต่อกัน
Posted: Mon Sep 08, 2014 9:43 am
by seeper
เรียนอาจารย์ครับ
จากในตัวอย่างที่แนบมา ผมต้องการเอาข้อมูลตั้งแต่ F3 จนถึงสุดท้ายมาต่อที่ข้อมูลชุดสุดท้ายของ column E
และต้องการเอาข้อมูลตั้งแต่ E3 จนถึงข้อมูลชุดสุดท้ายมาต่อที่ข้อมูลชุดสุดท้ายของ Column F ครับ
จึงขอรบกวนอาจารย์ช่วยปรับปรุงสูตรให้ผมด้วยครับ ขอบคุณครับ

Re: ช่วยแก้สูตรให้ผมด้วยครับ
Posted: Mon Sep 08, 2014 7:06 pm
by snasui

พยายามเขียนหัวกระทู้ให้สื่อถึงปัญหาที่จะถาม สำหรับกระทู้นี้ผมเปลียนให้แล้ว
ช่วยทำตัวอย่างคำตอบที่ต้องการมาด้วยจะได้เข้าถึงปัญหาได้โดยไวครับ
Re: นำข้อความมาต่อกัน
Posted: Tue Sep 09, 2014 9:05 am
by seeper
เรียน อาจาารย์
ผมได้แนบไฟล์มาใหม่แล้วครับ และขอถือโอกาสขอความช่วยเหลือจากอาจารย์อีกข้อเลยครับ
สำหรับข้อสองคือปกติใช้ sumproduct ในการรวมค่าของ column L และ M ได้ค่าในช่อง N8
แต่ผมต้องการเพิ่มเงือนไข คือให้ sumproduct เฉพาะช่วงที่ J มีข้อมูลครับ
จึงขอให้อาจารย์ช่วยผมด้วยครับ

Re: นำข้อความมาต่อกัน
Posted: Tue Sep 09, 2014 3:23 pm
by snasui

เงื่อนไขในการนำมาต่อกันลักษณะนั้นคืออะไร หมายถึงโปรแกรมจะทราบได้อย่างไรว่าเราจะนำมาต่อกันในลักษณะนั้น มีเงื่อนไขใดให้ตรวจสอบครับ
ส่วนเซลล์ N8 ไม่เข้าใจคำว่ามีข้อมูลว่าแตกต่างจากสูตรที่เขียนไว้แล้วอย่างไร เนื่องจากสูตรที่เขียนมาก็พิจารณาเฉพาะที่มีข้อมูล
Re: นำข้อความมาต่อกัน
Posted: Tue Sep 09, 2014 3:43 pm
by seeper
หลักการต่อข้อความคือนำข้อมูลที่เหมือนกันมาต่อกันเพียงแต่ต่อแบบสลับด้าน โดยนำข้อมูลของ F3-F17 มาต่อจาก E17 และนำข้อมูลจาก E3-E17 มาต่อจาก F17 จะได้ช่วงข้อมูลที่สมบูรณ์ดังช่องที่ทำสีเหลืองไว้
ผมขอให้อาจารย์ช่วยอันนี้ก่อนครับ ส่วน N28 ผมจะลองหาวิธีการดูหากไม่ได้อย่างไรคงต้องขอคำแนะนำจากอาจารย์อีกที ขอบคุณครับ

Re: นำข้อความมาต่อกัน
Posted: Tue Sep 09, 2014 3:59 pm
by snasui

ถ้าไม่มีเงื่อนไขอื่นใดให้ Copy มาวางแบบ Paste Link ครับ
โดยคลุมเซลล์ต้นทาง > Click ขวา > Copy > คลิกเซลล์ที่ต้องการวาง > คลิกขวา > Paste Special > Paste Link
Re: นำข้อความมาต่อกัน
Posted: Tue Sep 09, 2014 4:16 pm
by seeper
เงื่อนไข คือถ้า column E และ F ไม่มีข้อมูลมาต่อให้นำชุดข้อมูลข้างบนของอีก Column มาต่อ เช่น ในตัวอย่างที่ E 17 เป็นชุดข้อมูลตัวสุดท้ายเพราะฉะนั้นที่ E 18 จะเป็นชุดข้อมูลของ F3 ลงไปสุดจนมีข้อมูลถึง F 17 เป็นต้นครับ
ผมต้องการทำให้เป็นอัตโนมัติครับ ใช้ coppy ไม่ได้เลยครับ
Re: นำข้อความมาต่อกัน
Posted: Tue Sep 09, 2014 5:05 pm
by snasui

ตัวอย่างการปรับสูตร
เซลล์ I3 คีย์
Code: Select all
=IF(ROWS(I$3:I3)>$Q$18*2,"",IF(ROWS(I$3:I3)<=$Q$18,LOOKUP(ROWS(I$3:I3),$R$6:$R$17,$C$3:$C$15),INDEX($F$3:$F$17,$Q$18-ROWS(I$3:I3))))
Enter > Copy ลงด้านล่าง
เซลล์ J3 คีย์
Code: Select all
=IF(ROWS(J$3:J3)>$Q$18*2,"",IF(ROWS(J$3:J3)<=$Q$18,OFFSET($C$2,MATCH(I3,$C$3:$C$15,0)+COUNTIF(I$3:I3,I3),0),INDEX($E$3:$E$17,ROWS(J$3:J3)-$Q$18)))
Enter > Copy ลงด้านล่าง
Re: นำข้อความมาต่อกัน
Posted: Tue Sep 09, 2014 5:41 pm
by seeper
ช่อง I 18 ลงไป ขึ้น #Value ครับ
ช่อง J ได้แล้วครับขอบคุณครับ
Re: นำข้อความมาต่อกัน
Posted: Tue Sep 09, 2014 5:51 pm
by snasui

แนบไฟล์ล่าสุดมาดูกันครับ
Re: นำข้อความมาต่อกัน
Posted: Wed Sep 10, 2014 8:50 am
by seeper
แนบไฟล์ครับ อาจารย์
อาจารย์ครับเป็นไปได้ไหมที่ผมจะเอาช่อง C มาจัดเรียงข้อมูลในช่อง I และ J โดยไม่ต้องสร้างช่อง E และ F ครับ

Re: นำข้อความมาต่อกัน
Posted: Wed Sep 10, 2014 9:30 am
by snasui

เซลล์ I4 ปรับสูตรเป็นด้านล่างครับ
Code: Select all
=IF(ROWS(I$3:I3)>$Q$18*2,"",IF(ROWS(I$3:I3)<=$Q$18,LOOKUP(ROWS(I$3:I3),$R$6:$R$17,$C$3:$C$15),INDEX($F$3:$F$17,ROWS(I$3:I3)-$Q$18)))
seeper wrote:อาจารย์ครับเป็นไปได้ไหมที่ผมจะเอาช่อง C มาจัดเรียงข้อมูลในช่อง I และ J โดยไม่ต้องสร้างช่อง E และ F ครับ

ใน Excel เราสามารถเขียนโปรแกรมด้วยภาษา VB ที่เรียกว่า VBA เพื่อหาคำตอบตามที่เราต้องการได้ ซึ่งหากเขียนโปรแกรมก็ย่อมจะทำได้ทุกอย่างแทบจะไร้ขีดจำกัด ลองเขียนมาเองก่อนตามกฎการใช้บอร์ดข้อ 5 ด้านบน

ติดตรงไหนค่อยมาถามกันต่อครับ
Re: นำข้อความมาต่อกัน
Posted: Wed Sep 10, 2014 9:33 am
by seeper