Page 1 of 1

กรอกข้อมูลในแนวตั้งแล้วต้องการกดรันข้อมูลให้ไปอยู่ในแนวนอน

Posted: Thu Apr 18, 2019 12:04 pm
by jwwam
จากไฟล์แนบ
เมื่อกรอกข้อมูลลงใน cell D3:D14 แล้ว ต้องการกดปุ่ม DONE แล้วให้ข้อมูลรันไปตารางด้านขวาแบบแนวนอนค่ะ

Re: กรอกข้อมูลในแนวตั้งแล้วต้องการกดรันข้อมูลให้ไปอยู่ในแนวนอน

Posted: Thu Apr 18, 2019 12:13 pm
by puriwutpokin
VBA ต้องมีโค้ดเขียนเองมาด้วยครับ และไฟล์ต้องเป็นนามสกุล .xls,.xlsm,.xlsb นะครับ

Re: กรอกข้อมูลในแนวตั้งแล้วต้องการกดรันข้อมูลให้ไปอยู่ในแนวนอน

Posted: Thu Apr 18, 2019 1:23 pm
by jwwam
puriwutpokin wrote: Thu Apr 18, 2019 12:13 pm VBA ต้องมีโค้ดเขียนเองมาด้วยครับ และไฟล์ต้องเป็นนามสกุล .xls,.xlsm,.xlsb นะครับ
ขออนุญาตตรงสูตร OFFSET หน่อยค่ะ
พอดีกำหนด object ชื่อ Target แล้วใส่สูตร =TRANSPOSE(OFFSET($C$3,COUNTA(Date)+1,8,12,1)) ลงไป แต่มันขึ้นว่าการอ้างอิงไม่ถูกต้องค่ะ รบกวนช่วดูให้หน่อยได้ไหมคะ

Re: กรอกข้อมูลในแนวตั้งแล้วต้องการกดรันข้อมูลให้ไปอยู่ในแนวนอน

Posted: Thu Apr 18, 2019 1:24 pm
by jwwam
jwwam wrote: Thu Apr 18, 2019 1:23 pm
puriwutpokin wrote: Thu Apr 18, 2019 12:13 pm VBA ต้องมีโค้ดเขียนเองมาด้วยครับ และไฟล์ต้องเป็นนามสกุล .xls,.xlsm,.xlsb นะครับ
ขออนุญาตตรงสูตร OFFSET หน่อยค่ะ
พอดีกำหนด object ชื่อ Target แล้วใส่สูตร =TRANSPOSE(OFFSET($C$3,COUNTA(Date)+1,8,12,1)) ลงไป แต่มันขึ้นว่าการอ้างอิงไม่ถูกต้องค่ะ รบกวนช่วดูให้หน่อยได้ไหมคะ
ไฟล์แนบค่ะ

Re: กรอกข้อมูลในแนวตั้งแล้วต้องการกดรันข้อมูลให้ไปอยู่ในแนวนอน

Posted: Thu Apr 18, 2019 1:50 pm
by puriwutpokin
jwwam wrote: Thu Apr 18, 2019 1:24 pm
jwwam wrote: Thu Apr 18, 2019 1:23 pm
puriwutpokin wrote: Thu Apr 18, 2019 12:13 pm VBA ต้องมีโค้ดเขียนเองมาด้วยครับ และไฟล์ต้องเป็นนามสกุล .xls,.xlsm,.xlsb นะครับ
ขออนุญาตตรงสูตร OFFSET หน่อยค่ะ
พอดีกำหนด object ชื่อ Target แล้วใส่สูตร =TRANSPOSE(OFFSET($C$3,COUNTA(Date)+1,8,12,1)) ลงไป แต่มันขึ้นว่าการอ้างอิงไม่ถูกต้องค่ะ รบกวนช่วดูให้หน่อยได้ไหมคะ
ไฟล์แนบค่ะ
Code ที่ดูแล้วไม่สัมพันธ์กับ Define name
และเจตนา ต้องการ ทำให้ข้อมูลต่อกันไปเรื่อยๆ โค้ดนี้ก็ยังไม่ถูกครับ ลองเอาโค้ดต้นฉบับมาดูกันครับ

Re: กรอกข้อมูลในแนวตั้งแล้วต้องการกดรันข้อมูลให้ไปอยู่ในแนวนอน

Posted: Thu Apr 18, 2019 2:15 pm
by jwwam
puriwutpokin wrote: Thu Apr 18, 2019 1:50 pm
jwwam wrote: Thu Apr 18, 2019 1:24 pm
jwwam wrote: Thu Apr 18, 2019 1:23 pm

ขออนุญาตตรงสูตร OFFSET หน่อยค่ะ
พอดีกำหนด object ชื่อ Target แล้วใส่สูตร =TRANSPOSE(OFFSET($C$3,COUNTA(Date)+1,8,12,1)) ลงไป แต่มันขึ้นว่าการอ้างอิงไม่ถูกต้องค่ะ รบกวนช่วดูให้หน่อยได้ไหมคะ
ไฟล์แนบค่ะ
Code ที่ดูแล้วไม่สัมพันธ์กับ Define name
และเจตนา ต้องการ ทำให้ข้อมูลต่อกันไปเรื่อยๆ โค้ดนี้ก็ยังไม่ถูกครับ ลองเอาโค้ดต้นฉบับมาดูกันครับ
ศึกษาจากไฟล์นี้ค่ะ

Re: กรอกข้อมูลในแนวตั้งแล้วต้องการกดรันข้อมูลให้ไปอยู่ในแนวนอน

Posted: Thu Apr 18, 2019 2:25 pm
by puriwutpokin
jwwam wrote: Thu Apr 18, 2019 2:15 pm
puriwutpokin wrote: Thu Apr 18, 2019 1:50 pm
jwwam wrote: Thu Apr 18, 2019 1:24 pm

ไฟล์แนบค่ะ
Code ที่ดูแล้วไม่สัมพันธ์กับ Define name
และเจตนา ต้องการ ทำให้ข้อมูลต่อกันไปเรื่อยๆ โค้ดนี้ก็ยังไม่ถูกครับ ลองเอาโค้ดต้นฉบับมาดูกันครับ
ศึกษาจากไฟล์นี้ค่ะ
ลองดูตามไฟล์แนบครับผมปรับช่วงให้แล้วครับ :D

Re: กรอกข้อมูลในแนวตั้งแล้วต้องการกดรันข้อมูลให้ไปอยู่ในแนวนอน

Posted: Thu Apr 18, 2019 9:55 pm
by jwwam
puriwutpokin wrote: Thu Apr 18, 2019 2:25 pm
jwwam wrote: Thu Apr 18, 2019 2:15 pm
puriwutpokin wrote: Thu Apr 18, 2019 1:50 pm
Code ที่ดูแล้วไม่สัมพันธ์กับ Define name
และเจตนา ต้องการ ทำให้ข้อมูลต่อกันไปเรื่อยๆ โค้ดนี้ก็ยังไม่ถูกครับ ลองเอาโค้ดต้นฉบับมาดูกันครับ
ศึกษาจากไฟล์นี้ค่ะ
ลองดูตามไฟล์แนบครับผมปรับช่วงให้แล้วครับ :D
รันได้แล้วค่ะ ขอบคุณมากๆเลยค่ะ
ขออนุญาตสอบถามเพิ่มนะคะ
พอดีลองทำ vlookup แบบหลายเงื่อนไขแล้วมันขึ้น #N/A รบกวนช่วยดูให้หน่อยได้ไหมคะ
ต้องการให้แสดงข้อมูลใน cell C8 C9 C10 ค่ะ

Re: กรอกข้อมูลในแนวตั้งแล้วต้องการกดรันข้อมูลให้ไปอยู่ในแนวนอน

Posted: Thu Apr 18, 2019 10:28 pm
by puriwutpokin
ปรับเป็นที่ C8=IFERROR(INDEX(T$4:T$53,MATCH(1,INDEX((R$4:R$53=C$3)*(X$4:X$53=C$4)*(U$4:U$53=C$5)*(W$4:W$53=C$6),0),0)),"")
C9=IFERROR(INDEX(AC$4:AC$53,MATCH(1,INDEX((R$4:R$53=C$3)*(X$4:X$53=C$4)*(U$4:U$53=C$5)*(W$4:W$53=C$6),0),0)),"")
C10=IFERROR(INDEX(P$4:P$53,MATCH(1,INDEX((R$4:R$53=C$3)*(X$4:X$53=C$4)*(U$4:U$53=C$5)*(W$4:W$53=C$6),0),0)),"")

Re: กรอกข้อมูลในแนวตั้งแล้วต้องการกดรันข้อมูลให้ไปอยู่ในแนวนอน

Posted: Thu Apr 18, 2019 11:04 pm
by jwwam
puriwutpokin wrote: Thu Apr 18, 2019 10:28 pm ปรับเป็นที่ C8=IFERROR(INDEX(T$4:T$53,MATCH(1,INDEX((R$4:R$53=C$3)*(X$4:X$53=C$4)*(U$4:U$53=C$5)*(W$4:W$53=C$6),0),0)),"")
C9=IFERROR(INDEX(AC$4:AC$53,MATCH(1,INDEX((R$4:R$53=C$3)*(X$4:X$53=C$4)*(U$4:U$53=C$5)*(W$4:W$53=C$6),0),0)),"")
C10=IFERROR(INDEX(P$4:P$53,MATCH(1,INDEX((R$4:R$53=C$3)*(X$4:X$53=C$4)*(U$4:U$53=C$5)*(W$4:W$53=C$6),0),0)),"")
ได้แล้วค่ะ ขอบคุณมากๆเลยนะคะ