:!: โปรดทราบ Image
    1. กรุณาอ่านกฎการใช้บอร์ด (Forum rules) ในตำแหน่งด้านบนของแต่ละบอร์ดครับ Image
    2. การสมัครสมาชิกเพื่อโพสต์คำถาม ดาวน์โหลดไฟล์แนบไปศึกษา ทำตามขั้นตอนด้านล่างครับ
      1. สมัครสมาชิก ดูขั้นตอนตาม Link นี้ครับ => สมัครสมาชิก กรณีลืมรหัสผ่านสามารถรับรหัสใหม่ได้ที่นี่ครับ => Reset รหัสผ่านImage
      2. Login เข้าระบบโดยคลิก Login ตรงมุมขวาบนของหน้านี้ Image กรณีมีปัญหาในการเข้าใช้งาน คลิก Link นี้เพื่อแจ้งผู้ดูแลระบบครับ => ติดต่อผู้ดูแลระบบ
    3. เมื่อ Login แล้วสามารถกำหนดการตั้งค่าส่วนตัว เช่นตั้งค่าภาษาเป็นไทยหรืออังกฤษได้ที่ Link นี้ครับ => ตั้งค่าส่วนตัว Image
    4. วิธีการตั้งและตอบกระทู้ดูได้ที่ Link นี้ครับ => วิธีการตั้งและตอบกระทู้ Image
    5. การจัดรูปแบบตัวอักษรด้วย bbcode ในช่องแสดงความคิดเห็นดูได้ที่ Link นี้ครับ => จัดรูปแบบตัวอักษร และสามารถกำหนดขนาดตัวอักษรใน Browser ได้ที่นี่ครับ ==> กำหนดขนาดตัวอักษรใน Browser Image

สอบถามวิธีการจัดรูปแบบข้อมูล

ฟอรั่มถาม-ตอบปัญหาการใช้งาน MS Excel and VBA
Forum rules
  1. ไม่อนุญาตให้ใช้ภาษาแชทในการถาม-ตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
  2. ห้ามถามโดยระบุชื่อผู้ตอบ ต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
  3. อธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
  4. ควรแนบตัวอย่างไฟล์มาที่ฟอรั่มนี้เพื่อเพิ่มความสะดวกในการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่น นอกจากนี้ไม่ควรแนบไฟลที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
  5. สำหรับคำถามเกี่ยวกับ VBA ให้ลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน ควรโพสต์ Code ให้แสดงเป็น Code เพื่อสะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
  6. แจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
Chanon.witt
Member
Member
Posts: 26
Joined: Sun Sep 14, 2014 4:52 pm

สอบถามวิธีการจัดรูปแบบข้อมูล

#1

Postby Chanon.witt » Thu Dec 07, 2017 6:46 pm

จากไฟล์แนบ มี 2 Sheet โดยมี Sheet : Before ,After
ซึ่ง Sheet :Before เป็นข้อมูลที่ Export ออกมาจากระบบ
และต้องจัดรูปแบบให้เหมือน Sheet : After
ผมรบกวนขอความรู้ และวิธีการทำแบบเร็วๆด้วยครับ
Sample1.JPG

Sample2.JPG


ขอบพระคุณ อาจารย์และพี่ๆล่วงหน้าครับ
You do not have the required permissions to view the files attached to this post.

User avatar
parakorn
Silver
Silver
Posts: 739
Joined: Thu Mar 14, 2013 9:41 am
Contact:

Re: สอบถามวิธีการจัดรูปแบบข้อมูล

#2

Postby parakorn » Fri Dec 08, 2017 7:02 pm

Sheet "Before"
F1 =IF(AND(N(G3),G3<>""),G3,E1) Enter+Copy ไปทางขวา
C8 =IF(B8="",C7,B8) Enter+Copy ลงด้านล่าง

Sheet "After"

N4 ถึง N8 ใส่ข้อมูล SVO,PLN,OLOP,TKJ,POTC ตามลำดับ
O4 และ O5 ใส่ Order,Forecast

K3 =SUMPRODUCT(1/COUNTIF(Before!$C$8:$C$62,Before!$C$8:$C$62))
K4 =IF(ROWS($K$3:K3)>$K$3,"",INDEX(Before!$C$8:$C$62,SMALL(IF(FREQUENCY(MATCH(Before!$C$8:$C$62,Before!$C$8:$C$62,0),ROW(Before!$C$8:$C$62)-ROW(Before!$C$8)+1),ROW(Before!$C$8:$C$62)-ROW(Before!$C$8)+1),ROWS(Before!$C$8:C8)))) Ctrl+Shift+Enter +Copy ลงด้านล่าง
L4 พิมพ์ 1
L5 =COUNTA($M$4:$M$8)*COUNTA($N$4:$N$8)*COUNTA($O$4:$O$5)+L4 Enter+Copy ลงด้านล่างจนสุด
M3 =SUMPRODUCT(1/COUNTIF(Before!$G$1:$AD$1,Before!$G$1:$AD$1))
M4 =IF(ROWS($M$3:M3)>$M$3,"",INDEX(Before!$G$1:$AD$1,,SMALL(IF(TRANSPOSE(FREQUENCY(MATCH(Before!$G$1:$AD$1,Before!$G$1:$AD$1,0),COLUMN(Before!$G$1:$AD$1)-COLUMN(Before!$G$1)+1)),COLUMN(Before!$G$1:$AD$1)-COLUMN(Before!$G$8)+1),ROWS(Before!$C$8:C8)))) Ctrl+Shift+Enter +Copy ลงด้านล่าง

P4 =MID(Before!$I$2,FIND("/",Before!$I$2)+1,2)+0

ตารางผลลัพท์
B3 =LOOKUP(ROWS($B$3:$B3),$L$4:$L$23,$K$4:$K$23) Enter+Copy ลงด้านล่าง
C3 =IF($B3<>"",INDEX($N$4:$N$8,MOD(ROWS($C$3:$C3)+4,COUNTA($N$4:$N$8))+1)) Enter+Copy ลงด้านล่าง
D3 =IF($B3<>"",INDEX($O$4:$O$5,MOD(INT((ROWS($A$1:A1)-1)/5)+1,2)+1)) Enter+Copy ลงด้านล่าง
E3 =IF(B3<>"",$P$4) Enter+Copy ลงด้านล่าง
F3 =IF($B3<>"",INDEX($M$4:$M$8,MOD(INT((ROWS($A$1:A1)-1)/10)+1,$M$3))) Enter+Copy ลงด้านล่าง
G3 =SUM(IF(Before!$F$4:$AD$4=$C3,IF(Before!$F$1:$AD$1=$F3,IF(Before!$E$8:$E$62=After!$D3,IF(Before!$C$8:$C$62=After!$B3,IF(ISNUMBER(Before!$F$8:$AD$62+0),Before!$F$8:$AD$62+0)))))) Ctrl+Shift+Enter +Copy ลงด้านล่าง
อธิบายปัญหาสักนิด เผื่อวันหน้า มีคนต้องการศึกษา จะได้ "Search" ค้นหาเจอกระทู้นะครับ :idea:

Chanon.witt
Member
Member
Posts: 26
Joined: Sun Sep 14, 2014 4:52 pm

Re: สอบถามวิธีการจัดรูปแบบข้อมูล

#3

Postby Chanon.witt » Sat Dec 09, 2017 5:25 pm

พี่ parakorn ครับ
ผมได้ลองทำตามที่พี่บอกแล้วมี Column B ,Sheet :After ,Customer มาแต่ A1,A2 ครับ
ผมต้องแก้ไขอย่างไรครับ
SAMPLE.jpg
You do not have the required permissions to view the files attached to this post.

User avatar
snasui
Site Admin
Site Admin
Posts: 22338
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Contact:

Re: สอบถามวิธีการจัดรูปแบบข้อมูล

#4

Postby snasui » Sat Dec 09, 2017 5:29 pm

:D แนบไฟล์ที่ได้ทดลองทำเองแล้วมาด้วยเพื่อน ๆ จะได้ช่วยดูให้ได้ครับ

Chanon.witt
Member
Member
Posts: 26
Joined: Sun Sep 14, 2014 4:52 pm

Re: สอบถามวิธีการจัดรูปแบบข้อมูล

#5

Postby Chanon.witt » Sat Dec 09, 2017 5:38 pm

ขอโทษด้วยครับ ลืมครับอาจารย์ ><"
You do not have the required permissions to view the files attached to this post.

User avatar
snasui
Site Admin
Site Admin
Posts: 22338
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Contact:

Re: สอบถามวิธีการจัดรูปแบบข้อมูล

#6

Postby snasui » Sat Dec 09, 2017 7:16 pm

:D อีกตัวอย่างสูตรครับ

ที่ชีต Before

  1. ที่ C8 คีย์
    =IF(E8="","",LOOKUP(CHAR(255),B$8:B8))
    Enter > Copy ลงด้านล่าง
  2. ที่ D8 คีย์
    =IF(C8="","",COUNTA($F$4:$AD$4)*COUNTIF(C$8:C8,"*?")-COUNTA($F$4:$AD$4)+1)
    Enter > Copy ลงด้านล่าง
  3. ที่ C63 คีย์
    =COUNTA(F4:AD4)*COUNTIF(C8:C62,"*?")

ที่ชีต After

  1. ที่ B3 คีย์
    =IF(ROWS(B$3:B3)>Before!$C$63,"",LOOKUP(ROWS(B$3:B3),Before!$D$8:$D$62,Before!$C$8:$C$62))
    Enter > Copy ลงด้านล่าง
  2. ที่ C3 คีย์
    =IF(B3="","",INDEX(Before!$F$4:$AD$4,MOD((ROWS(C$3:C3)-1),COUNTA(Before!$F$4:$AD$4))+1))
    Enter > Copy ลงด้านล่าง
  3. ที่ D3 คีย์
    =IF(B3="","",INDEX(Before!$E$8:$E$9,MOD((INT((ROWS(D$3:D3)-1)/(COUNTA(Before!$F$4:$J$4)))+1)-1,COUNTA(Before!$E$8:$E$9))+1))
    Enter > Copy ลงด้านล่าง
  4. ที่ E3 คีย์
    =IF(B3="","",MONTH(LEFT(Before!$I$2,FIND("-",Before!$I$2)-1)))
    Enter > Copy ลงด้านล่าง
  5. ที่ F3 คีย์
    =IF(B3="","",LOOKUP(9.99999999999999E+307,OFFSET(Before!$F$3,0,1,1,MOD((ROWS(F$3:F3)-1)/COUNTA(Before!$E$8:$E$9),COUNTA(Before!$F$4:$AD$4))+1)))
    Enter > Copy ลงด้านล่าง
  6. ที่ G3 คีย์
    =IF(B3="","",IFERROR(INDEX(Before!$F$8:$AD$62,MATCH(1,IF(Before!$C$8:$C$62=B3,IF(Before!$E$8:$E$62=D3,1)),0),MATCH(F3,Before!$F$3:$AD$3,0)-1+MATCH(C3,Before!$F$4:$J$4,0)-1),""))
    Ctrl+Shift+Enter > Copy ลงด้านล่าง


!
Note: Ctrl+Shift+Enter
เป็นการสร้างสูตร Array โดยสามารถเลือกดำเนินการตามข้อ 1 หรือ 2 ด้านล่าง
  1. กรณีคีย์สูตรเอง เมื่อคีย์สูตรแล้ว แทนที่จะกด Enter ให้กดแป้น
    Ctrl และ Shift พร้อมกันค้างไว้แล้วกด Enter เพื่อสร้างเป็นสูตร Array
  2. กรณี Copy สูตรไปวางให้กดแป้น F2 เพื่อทำการ Edit Cell นั้นก่อน
    จากนั้นกดแป้น Ctrl และ Shift พร้อมกันค้างไว้แล้วตามด้วย Enter เพื่อสร้างเป็นสูตร Array
  3. หากกดแป้นถูกต้องสูตรนั้นจะมีเครื่องหมายปีกกาครอบ เช่น {=YourFormulas(...)}
    ปีกกานี้ไม่สามารถคีย์เข้าไปเอง จะต้องมาด้วยการกดแป้น Ctrl+Shift+Enter เท่านั้น
    ถ้ายังไม่เห็นปีกกาครอบสูตรแสดงว่ากดแป้นให้รับสูตรไม่ถูกต้อง

  4. การแก้ไขเปลี่ยนแปลงสูตร Array จะต้องกดแป้นให้รับสูตรด้วย Ctrl+Shift+Enter ทุกครั้ง

Chanon.witt
Member
Member
Posts: 26
Joined: Sun Sep 14, 2014 4:52 pm

Re: สอบถามวิธีการจัดรูปแบบข้อมูล

#7

Postby Chanon.witt » Sat Dec 09, 2017 7:42 pm

ได้แล้วครับ ขอบพระคุณมากครับ
จะลองแก้สูตรและทำความเข้าใจ ถ้าไม่เข้าใจตรงไหนจะมารบกวนอีกรอบนะครับ
ขอบพระคุณพี่ๆและอาจารย์ทุกท่านอีกครั้งครับ

User avatar
parakorn
Silver
Silver
Posts: 739
Joined: Thu Mar 14, 2013 9:41 am
Contact:

Re: สอบถามวิธีการจัดรูปแบบข้อมูล

#8

Postby parakorn » Sat Dec 09, 2017 8:42 pm

Chanon.witt wrote:พี่ parakorn ครับ
ผมได้ลองทำตามที่พี่บอกแล้วมี Column B ,Sheet :After ,Customer มาแต่ A1,A2 ครับ
ผมต้องแก้ไขอย่างไรครับ
SAMPLE.jpg


ถ้าในส่วนของสูตรผม ลืม Copyสูตรจาก L5 ลงมาครับ :lol: :lol:
อธิบายปัญหาสักนิด เผื่อวันหน้า มีคนต้องการศึกษา จะได้ "Search" ค้นหาเจอกระทู้นะครับ :idea:


Return to “Excel”

Who is online

Users browsing this forum: 060090, parakorn, smonekai and 38 guests