snasui.com ยินดีต้อนรับ
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ ระบุ Version ของ Excel
ฟอรัมถาม-ตอบปัญหาการใช้งานสูตรและฟังก์ชัน Excel
Forum rules
ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
suka
Silver
Posts: 920 Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021
#1
Post
by suka » Thu Sep 19, 2013 3:07 pm
เรียนอาจารย์และท่านผู้รู้ช่วยเรื่องปรับสูตรค่ะ
จากไฟล์แนบที่ชีท Sheet1 เซลล์ H5 ใส่เลขที่ใบส่งสินค้า
เพื่อให้ดึงข้อมูลจากชีท Data ตามเลขที่เรียกมาแสดงที่ชืท Sheet1 สูตรติดที่เซลล์ B13:H18 ขอรบกวนช่วยด้วยค่ะ
You do not have the required permissions to view the files attached to this post.
bank9597
Guru
Posts: 3868 Joined: Wed Aug 17, 2011 11:49 am
#2
Post
by bank9597 » Thu Sep 19, 2013 3:20 pm
ลองตามนี้ครับ
ที่ B12 คีย์ =IFERROR(INDEX(Data!C$2:C$10,SMALL(IF(Data!$B$2:$B$10=$H$5,ROW(Data!$B$2:$B$10)-ROW(Data!$B$2)+1),ROWS($B$12:B12))),"") กด Ctrl+Shift+Enter คัดลอกลงมา
ส่วนนอกนั้น ปรับสูตรดูครับว่าจะให้แสดงข้อมูลในคอลัมน์ใด
You do not have the required permissions to view the files attached to this post.
Forum Rules
อย่าใช้ภาษาแชทในการตอบ-ถาม
ตั้งชื่อกระทู้ให้สื่อถึงปัญหาและไม่เจาะจงตัวผู้ตอบ
ให้อธิบายปัญหาและระบุคำตอบที่ต้องการมาในฟอรัม
ควรแนบไฟล์ตัวอย่างมาที่ฟอรั่ม
หากใช้ VBA ให้ลองเขียนมาเองก่อนเสมอ
แจ้งผลการใช้งานทุกครั้งเมื่อได้รับคำตอบ
suka
Silver
Posts: 920 Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021
#3
Post
by suka » Thu Sep 19, 2013 3:38 pm
ขอบคุณคุณ bank9597 ค่ะ ได้ตรงตามต้องการแล้วค่ะ
suka
Silver
Posts: 920 Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021
#4
Post
by suka » Fri Sep 20, 2013 8:16 pm
กวนถามอีกรอบค่ะ
ใช้สูตร =IFERROR(INDEX(Data!C$2:C$10,SMALL(IF(Data!$B$2:$B$10=$H$5,ROW(Data!$B$2:$B$10)-ROW(Data!$B$2)+1),ROWS($B$12:B12))),"")
ไม่สามารถดีงเลขที่ใบส่งที่ตัวเลขชิดทางด้านซ้าย แต่ดึงตัวเลขชิดทางด้านขาวได้ค่ะ เลขตัวอย่างตามรูปแนบค่ะ
You do not have the required permissions to view the files attached to this post.
bank9597
Guru
Posts: 3868 Joined: Wed Aug 17, 2011 11:49 am
#5
Post
by bank9597 » Fri Sep 20, 2013 8:44 pm
ลองปรับใช้สูตรนี้ครับ
=IFERROR(INDEX(Data!C$2:C$10,SMALL(IF((Data!$B$2:$B$10+0)=$H$5,ROW(Data!$B$2:$B$10)-ROW(Data!$B$2)+1),ROWS($B$12:B12))),"")
ต้นเหตุมาจากเลขใบส่งสินค้าถูกจัดเก็บในรูปแบบ Text ไม่ใช่ Number ทำให้สูตรไม่สามารถดึงข้อมูลมาแสดงได้
ดังนั้นควรแก้ที่ข้อมูลครับ สูตรจะได้ไม่ทำงานช้าขึ้นกว่าเดิม
Forum Rules
อย่าใช้ภาษาแชทในการตอบ-ถาม
ตั้งชื่อกระทู้ให้สื่อถึงปัญหาและไม่เจาะจงตัวผู้ตอบ
ให้อธิบายปัญหาและระบุคำตอบที่ต้องการมาในฟอรัม
ควรแนบไฟล์ตัวอย่างมาที่ฟอรั่ม
หากใช้ VBA ให้ลองเขียนมาเองก่อนเสมอ
แจ้งผลการใช้งานทุกครั้งเมื่อได้รับคำตอบ
suka
Silver
Posts: 920 Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021
#6
Post
by suka » Sat Sep 21, 2013 10:30 pm
ขอบคุณค่ะคุณ bank9597
suka
Silver
Posts: 920 Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021
#7
Post
by suka » Mon Sep 23, 2013 11:29 am
ขอรบกวนช่วยดูตัวเลขที่ไฟล์แนบให้หน่อยค่ะ
ได้เช็คการจัดเก็บรูปแบบตัวเลขที่ไฟล์ต้นฉบับโดย
Format Cells => Custom => รูปแบบเป็น General ทั้งหมด
เลย Copy จากไฟล์ต้นฉบับมาวางวางที่ไฟล์แนนนี้
ตัวเลขชุดที่ดึงข้อมูลมาได้มีตามนี้
A190909
VT5600031
56009152
ที่ไม่สามารถดีงมาคือเลข
56009151
56009153
และสงสัยว่าทำไมที่มุมซ้ายบนของตัวเลขดึงไม่ได้ถึงขึ้นรูปสามเหลี่ยมสีเขียวด้วยค่ะ
You do not have the required permissions to view the files attached to this post.
bank9597
Guru
Posts: 3868 Joined: Wed Aug 17, 2011 11:49 am
#8
Post
by bank9597 » Mon Sep 23, 2013 11:53 am
ลองตามนี้ครับ
ที่ H1 คีย์ =IFERROR(($A1+0),$A1) คัดลอกลงมา
แล้วคัดลอกค่าที่ได้ไปวางทับข้อมูลเดิมทั้งหมดครับ
Forum Rules
อย่าใช้ภาษาแชทในการตอบ-ถาม
ตั้งชื่อกระทู้ให้สื่อถึงปัญหาและไม่เจาะจงตัวผู้ตอบ
ให้อธิบายปัญหาและระบุคำตอบที่ต้องการมาในฟอรัม
ควรแนบไฟล์ตัวอย่างมาที่ฟอรั่ม
หากใช้ VBA ให้ลองเขียนมาเองก่อนเสมอ
แจ้งผลการใช้งานทุกครั้งเมื่อได้รับคำตอบ
suka
Silver
Posts: 920 Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021
#9
Post
by suka » Mon Sep 23, 2013 9:29 pm
ขอบคุณค่ะคุณ bank9597 ใช้ตามต้องการได้แล้วค่ะ
มีวิธีป้องกันข้อมูลใหม่ ที่กรอกผ่านฟอร์มมายังชีทรับข้อมูลไหมคะ
bank9597
Guru
Posts: 3868 Joined: Wed Aug 17, 2011 11:49 am
#10
Post
by bank9597 » Mon Sep 23, 2013 9:35 pm
suka wrote: ขอบคุณค่ะคุณ bank9597 ใช้ตามต้องการได้แล้วค่ะ
มีวิธีป้องกันข้อมูลใหม่ ที่กรอกผ่านฟอร์มมายังชีทรับข้อมูลไหมคะ
แบบนั้นจะเป็นในรูปแบบของโปรแกรมสั่งงานครับ จะต้องเขียน VBA ขึ้นมาเองในการสั่งงานต่างๆ จำเป็นต้องเขียนมาเองก่อนเสมอครับ
Forum Rules
อย่าใช้ภาษาแชทในการตอบ-ถาม
ตั้งชื่อกระทู้ให้สื่อถึงปัญหาและไม่เจาะจงตัวผู้ตอบ
ให้อธิบายปัญหาและระบุคำตอบที่ต้องการมาในฟอรัม
ควรแนบไฟล์ตัวอย่างมาที่ฟอรั่ม
หากใช้ VBA ให้ลองเขียนมาเองก่อนเสมอ
แจ้งผลการใช้งานทุกครั้งเมื่อได้รับคำตอบ