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] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
tutape
Member
Posts: 85 Joined: Tue Oct 02, 2012 12:59 pm
#1
Post
by tutape » Tue Oct 09, 2012 9:12 am
สมมุติว่า ที่ A1 B1 C1 D1 คือ เลข 2 , 3 , 3 , 3 ตามลำดับ ที่ E1 ใช้ฟังก์ชัน mode ก็จะได้ค่า = 3
แต่พอเปลี่ยนเลขที่ B1 เป็น 2 คือ 2 , 2 , 3 , 3 สูตร mode ที่ตั้งไว้ที่ E1 จะใช้ไม่ได้ ควรจะทำอย่างไรดีครับ
โดยอยากให้สูตรที่ E1 หาค่า mode ได้ และ ถ้าเป็นอย่างกรณีที่ 2 อยากให้ได้เท่ากับค่าที่มาก ช่วยแนะนำสูตรด้วยครับ
ขอบคุณครับ
bank9597
Guru
Posts: 3868 Joined: Wed Aug 17, 2011 11:49 am
#2
Post
by bank9597 » Tue Oct 09, 2012 9:52 am
ลองตามนี้ครับ
ที่ E1 คีย์ =MODE(A1:H1,MAX(A1:H1))
หากจำนวนตัวเลขมีมากกว่านี้ ก็ต้องปรับสูตรใหม่ครับ
Forum Rules
อย่าใช้ภาษาแชทในการตอบ-ถาม
ตั้งชื่อกระทู้ให้สื่อถึงปัญหาและไม่เจาะจงตัวผู้ตอบ
ให้อธิบายปัญหาและระบุคำตอบที่ต้องการมาในฟอรัม
ควรแนบไฟล์ตัวอย่างมาที่ฟอรั่ม
หากใช้ VBA ให้ลองเขียนมาเองก่อนเสมอ
แจ้งผลการใช้งานทุกครั้งเมื่อได้รับคำตอบ
snasui
Site Admin
Posts: 31255 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#3
Post
by snasui » Tue Oct 09, 2012 12:40 pm
การใช้ Mode แล้วต้องการให้ได้ค่าใดก่อนหากมีจำนวนเท่ากัน ยกตัวอย่างเช่นต้องการค่ามากกว่าหรือน้อยกว่าจะต้องเรียงค่านั้นไว้ก่อนเสมอครับ ซึ่งสามารถใช้ฟังก์ชั่น Large หรือ Small มาช่วยได้ ในกรณีนี้ต้องการค่ามากมาก่อน ดังนั้น ที่เซลล์ใด ๆ คีย์
=MODE(LARGE($A$1:$D$1,ROW(INDIRECT("1:"&COUNT($A$1:$D$1)))))
Enter
bank9597
Guru
Posts: 3868 Joined: Wed Aug 17, 2011 11:49 am
#4
Post
by bank9597 » Tue Oct 09, 2012 12:58 pm
snasui wrote: การใช้ Mode แล้วต้องการให้ได้ค่าใดก่อนหากมีจำนวนเท่ากัน ยกตัวอย่างเช่นต้องการค่ามากกว่าหรือน้อยกว่าจะต้องเรียงค่านั้นไว้ก่อนเสมอครับ ซึ่งสามารถใช้ฟังก์ชั่น Large หรือ Small มาช่วยได้ ในกรณีนี้ต้องการค่ามากมาก่อน ดังนั้น ที่เซลล์ใด ๆ คีย์
=MODE(LARGE($A$1:$D$1,ROW(INDIRECT("1:"&COUNT($A$1:$D$1)))))
Enter
โอ๊ว ขอบคุณครับ ผมพยายามคิดสูตรอยู่นานแล้ว มีแต่เฉียดไปเฉียดมาตลอดเลย อิอิ
Forum Rules
อย่าใช้ภาษาแชทในการตอบ-ถาม
ตั้งชื่อกระทู้ให้สื่อถึงปัญหาและไม่เจาะจงตัวผู้ตอบ
ให้อธิบายปัญหาและระบุคำตอบที่ต้องการมาในฟอรัม
ควรแนบไฟล์ตัวอย่างมาที่ฟอรั่ม
หากใช้ VBA ให้ลองเขียนมาเองก่อนเสมอ
แจ้งผลการใช้งานทุกครั้งเมื่อได้รับคำตอบ
tutape
Member
Posts: 85 Joined: Tue Oct 02, 2012 12:59 pm
#5
Post
by tutape » Tue Oct 09, 2012 3:36 pm
อยากทราบต่ออีกนิดนึงครับว่า เราสามารถใช้ excel สร้างเป็นฐานข้อมูลที่มีการลิ้งหลายๆ ไฟล์ได้หรือเปล่า และทำให้มีการล็อกไฟล์ เหมือนใน access ได้หรือเปล่า
snasui
Site Admin
Posts: 31255 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#6
Post
by snasui » Tue Oct 09, 2012 3:45 pm
ถ้าจะทำเป็นฐานข้อมูลควรใช้โปรแกรมฐานข้อมูลเช่น Access ครับจะได้สะดวกในการสร้างความสัมพันธ์ระหว่างตารางและการดึงข้อมูลมาใช้งาน Excel จะเหมาะกับการคำนวณ การทำรายงานแบบ Dynamic สร้างความคุ้นเคยกับผู้ใช้ได้ง่ายครับ
tutape
Member
Posts: 85 Joined: Tue Oct 02, 2012 12:59 pm
#7
Post
by tutape » Tue Oct 09, 2012 5:07 pm
ขอถามต่ออีกครับ ว่า ใน excel ทำได้หรือเปล่าคับที่ ให้ชื่อ sheet เปลื่ยนตามชื่อที่เราคีย์ลงไป แต่เซลล์ที่คีย์ชื่อ กับ sheet ที่จะให้เปลี่ยนชื่ออยู่คนละไฟล์กัน ขอบคุณครับ
snasui
Site Admin
Posts: 31255 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#8
Post
by snasui » Tue Oct 09, 2012 5:09 pm
การทำเช่นนั้น สามารถทำได้ด้วย VBA ครับ
การ
เปลี่ยนการอ้างอิง ไปยังชีทอื่น ๆ ในไฟล์ใด ๆ ตามค่าที่คีย์ลงในเซลล์ใด ๆ สามารถใช้สูตรมาช่วยได้ครับ แต่ต้องเปิดไฟล์ต้นทางไว้ด้วย แต่หากต้องการให้
เปลี่ยนชื่อชีท ของไฟล์ปลายทางตามค่าที่คีย์ลงในเซลล์ใด ๆ ของไฟล์ต้นทางจำเป็นต้องพึ่ง VBA ครบ
tutape
Member
Posts: 85 Joined: Tue Oct 02, 2012 12:59 pm
#9
Post
by tutape » Tue Oct 09, 2012 5:14 pm
อ. บอกหลักการคร่าวๆ ได้ป่าวคับ ว่ามีแนวทางอย่างไร หรือถ้าจะใช้การบันทึก VBA ช่วย จะได้เปล่า ถ้าได้ รบกวน อ. บอกขั้นตอนคร่าวๆ ได้เปล่าครับ ขอบคุณครับ
snasui
Site Admin
Posts: 31255 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#10
Post
by snasui » Tue Oct 09, 2012 5:18 pm
tutape wrote: อ. บอกหลักการคร่าวๆ ได้ป่าวคับ ว่ามีแนวทางอย่างไร หรือถ้าจะใช้การบันทึก VBA ช่วย จะได้เปล่า ถ้าได้ รบกวน อ. บอกขั้นตอนคร่าวๆ ได้เปล่าครับ ขอบคุณครับ
แก้ไขข้อความด้วยครับ (ตามกฎข้อ 1 ด้านบน) สำหรับการใช้ VBA จะต้องเขียนมาเองเนื่องจากเป็นกฎ เพื่อความเท่าเทียมกันของเพื่อนสมาชิกที่ปฏิบัติตามกฎ กรณียังไม่มีความรู้เกี่ยวกับ VBA จำเป็นต้องศึกษามาก่อนครับ
หลักการในการเขียน Code ในไฟล์ต้นทางเพื่อเปลี่ยนชื่อชีในไฟล์ปลายทางคือ
เขียนชื่อชีทที่ต้องการเปลี่ยนในเซลล์ใด ๆ
เขียน Code เพื่ออ้างอิงค่าในเซลล์นั้นไปเปลี่ยนชื่อชีทในไฟล์ปลายทาง
tutape
Member
Posts: 85 Joined: Tue Oct 02, 2012 12:59 pm
#11
Post
by tutape » Sun Oct 14, 2012 12:37 pm
รบกวนอาจารย์ต่ออีกนิดครับ ผมจะศึกษาขั้นตอนที่ว่านี้ได้จากที่ไหนบ้างครับ
snasui
Site Admin
Posts: 31255 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#12
Post
by snasui » Sun Oct 14, 2012 1:08 pm
คงต้องศึกษาจากตำราร่วมกับการบันทึก Macro มาเป็นลำดับครับ การเขียน Code ในบางงานอาจจะไม่มีในที่ใด ต้องเขียนขึ้นมาเองโดยอาศัยความรู้และประสบการณ์ของเราครับ ไม่แน่ใจว่าเคยบันทึก Macro แล้วดู Code ที่ได้บ้างแล้วยังครับ
tutape
Member
Posts: 85 Joined: Tue Oct 02, 2012 12:59 pm
#13
Post
by tutape » Mon Oct 15, 2012 4:19 pm
เคยดูครับ
snasui
Site Admin
Posts: 31255 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#14
Post
by snasui » Mon Oct 15, 2012 4:24 pm
ถ้าเช่นนั้นก็ลองบันทึก Macro แล้วดู Code แล้วลองปรับใช้ ติดตรงไหนค่อยมาถามกันครับ