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

รบกวนอยากให้ช่วยดู error ใน excel

ฟอรัมถาม-ตอบปัญหาการใช้งาน MS Excel and VBA
Forum rules
  1. ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
  2. ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
  3. กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
  4. กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
  5. กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
  6. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
premNaka
Member
Member
Posts: 18
Joined: Fri Jul 28, 2017 9:30 pm

รบกวนอยากให้ช่วยดู error ใน excel

#1

Post by premNaka »

รบกวนอยากให้ช่วยดู error ใน excel ด้วยค่ะ คือต้องการแสดงเลขที่ RV. ค่ะ
จากตััวอย่างใช้ สูตร vlookup กับ match แต่ใน excel ขึ้น #value
สิ่งที่ต้องการคือ
1. แสดงเลขที่ RV. โดยให้ดึงข้อมูลมาจากชีท bill ในกรณีที่ลูกค้ารายเดิม (อ้างอิงจากรหัสลูกค้า)ในเดือนนั้นซื้อมากกว่า 1 บิล
ต้องการให้แสดง list box สำหรับให้เลือกที่เลขที่ RV. (ต้องพิมพ์ส่งบัญชี) หรือจะมีท่านผู้รู้แนะนำสูตรอื่นที่ใช้งานง่ายกว่านี้ก็ยินดีค่ะ
2. ให้แสดงจำนวนเงินจากเลขที่ RV. ที่เลือก
3. ในบรรทัดถัดมาให้แสดงคำว่า "ค่าธรรมเนียมบัตรเครดิต" ในกรณีที่ลูกค้าชำระบัตรเครดิต (ไม่แน่ใจว่าจะต้องเขียนสูตรในช่องไหนเพื่อให้ excel รู้ว่า ลูกค้ารายนี้ชำระผ่านบัตรเครดิต) และให้คำนวณค่าธรรมเนียมบัตรเครดิต 3% จากยอดที่รับชำระ (บริษัทฯ support ให้ลูกค้า เพราะฉะนั้น จำนวนเงินที่รับจริงจากลูกค้าจะไม่เท่ากับจำนวนเงินที่รูดจริง หรือราคาของสินค้า)
3. สุดท้ายอยากให้แสดงข้อความ bahttext เป็นภาษาอังกฤษค่ะ
premNaka
Member
Member
Posts: 18
Joined: Fri Jul 28, 2017 9:30 pm

Re: รบกวนอยากให้ช่วยดู error ใน excel

#2

Post by premNaka »

ขอโทษค่ะลืมแนบไฟล์ข้อมูลให้
You do not have the required permissions to view the files attached to this post.
User avatar
DhitiBank
Gold
Gold
Posts: 1676
Joined: Mon Oct 15, 2012 12:07 am

Re: รบกวนอยากให้ช่วยดู error ใน excel

#3

Post by DhitiBank »

ลองแบบนี้ครับ

1. สร้าง name range เพื่อทำ drop down list กรณีลูกค้า 1 คนทำหลายรายการ
1.1 สร้าง dynamic range name รหัสลูกค้า
-- กด Ctrl+F3 เพื่อแสดงหน้าต่าง Name manager กดปุ่ม New...
-- ช่อง Name ใส่ _CustCode (จริงๆ แล้วจะใส่อะไรก็ได้ที่สื่อความหมาย)
-- ช่อง refer to คีย์ =OFFSET(Bill!$A$1,1,,MAX(1,COUNTA(Bill!$A:$A)-1)) > กด OK

1.2 สร้าง range name เลขที่บิล
-- เปิด name manager กดปุ่ม New...
-- ช่อง Name ใส่ _RV
-- ช่อง refer to คีย์ =OFFSET(Bill!$A$1,MATCH(RV!$A$11,_CustCode,0),2,COUNTIF(_CustCode,RV!$A$11)) > OK

2. สร้าง drop down list ในฟอร์ม
2.1 ชีท RV เลือกเซลล์ E16
2.2 เมนู Data >> Data validation
2.3 ช่อง Allow เลือก List
2.4 ช่อง Source ให้คลิกเม้าส์ที่ช่องว่างๆ แล้วกด F3 เลือก _RV ที่ทำไว้
2.5 กด OK แล้วลองเปลี่ยนรหัสลูกค้า

3. สูตรแสดงข้อความกรณีบัตรเครดิต
C17 คีย์
=IF(LOOKUP(E16,Bill!$C$2:$C$20,Bill!$G$2:$G$20),"ค่าธรรมเนียมบัตรเครดิต","")
2017-09-20 17_07_26-Microsoft Excel - 01.xlsx.png
ปล. เมื่อเปลี่ยนรหัสลูกค้าใหม่ จะต้องมาเลือกเลขที่บิลใน E16 ใหม่เสมอนะครับ เพราะ drop down list จะไม่ปรับปรุงข้อมูลให้อัตโนมัติครับ

4. กรณีต้องการให้แสดง Bahttext เป็นภาษาอังกฤษ ลองดูที่ลิ้งค์ด้านล่างครับ
http://www.excelexperttraining.com/blog ... 000627.php
You do not have the required permissions to view the files attached to this post.
User avatar
DhitiBank
Gold
Gold
Posts: 1676
Joined: Mon Oct 15, 2012 12:07 am

Re: รบกวนอยากให้ช่วยดู error ใน excel

#4

Post by DhitiBank »

ลืมจำนวนเงินครับ

N16
=LOOKUP(E16,Bill!$C$2:$C$20,Bill!$E$2:$E$19+Bill!F2:F19+Bill!$G$2:$G$19)

N17
=N16*3/100
premNaka
Member
Member
Posts: 18
Joined: Fri Jul 28, 2017 9:30 pm

Re: รบกวนอยากให้ช่วยดู error ใน excel

#5

Post by premNaka »

ขอบพระคุณมากๆค่ะ จะลองทำตามดูค่ะ
premNaka
Member
Member
Posts: 18
Joined: Fri Jul 28, 2017 9:30 pm

Re: รบกวนอยากให้ช่วยดู error ใน excel

#6

Post by premNaka »

รบกวนสอบถามเพิ่มเติมค่ะ สูตรที่ทำพอใช้ไปซักพักแล้วเหมือนเริ่มจะเพี้ยนน่ะค่ะ
มักจะเกิดขึ้นในกรณีที่ ลูกค้าคนเดิมซื้อสินค้า ณ เดือนนั้นๆ มากกว่า 1 ครั้ง
ซึ่งจะต้องมี inv.มากกว่า 1 บิล และเราต้องเลือกบิล จาก drop down list
แต่ข้อมูลที่มีให้เลือกที่แสดงใน drop down list ไม่ถูกต้องค่ะ
เช่น ในเดือนตุลาคม 2560 นส.เอ ซึือสินค้า บี และ ซี เลขที่บิลในการซื้อขายจริง
คือ S00002 และ S00004 ตามลำดับ แต่บิลที่แสดงใน drop down list จะเป็น S00002 และ S00003
(กล่าวคือ มักจะเป็นเลขที่บิลซื้อขายจริงใบแรก ส่วนใบถัดมาจะเป็นเลขที่บิลที่อยู่ถัดมา)
ซึ่งตอนแรกที่ใช้สูตรนี้ไม่เคยเพี้ยน แต่ด้วยระยะสองสามเดือนมานี้มีบิลซึ้อขายจำนวนมากขึ้น
เลยไม่แน่ใจว่าเกิดจากข้อมูลที่เพิ่มขึ้นหรือเปล่า รบกวนท่านผู้รู้ช่วยแนะนำด้วยค่ะ

ปล1. สามารถใช้ไฟล์ข้อมูลเดิมที่เคยแนบได้เลยค่ะ
ปล2. บิลซื้อขายในแต่ละเดือน ณ ตอนนี้ ประมาณ 150-200 inv. ค่ะ
User avatar
snasui
Site Admin
Site Admin
Posts: 30735
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: รบกวนอยากให้ช่วยดู error ใน excel

#7

Post by snasui »

:D แนบไฟล์ตัวอย่างที่มีปัญหาลักษณะนั้นมาด้วย ตัดข้อมูลที่ไม่เกี่ยวข้อง เปลี่ยนข้อมูลสำคัญให้เป็นอย่างอื่น จะได้สะดวกในการทดสอบและแก้ปัญหาครับ
premNaka
Member
Member
Posts: 18
Joined: Fri Jul 28, 2017 9:30 pm

Re: รบกวนอยากให้ช่วยดู error ใน excel

#8

Post by premNaka »

ขอบคุณอาจารย์ที่เข้ามาช่วยตอบคำถามนะคะ และขอโทษที่เข้าแนบไฟล์ให้ช้าค่ะ หนูได้แนบตัวอย่างไฟล์มาให้ตามรายละเอียดด้านล่างแล้วค่ะ จากไฟล์แนบ ในรหัสลูกค้า 02 ข้อมูลบิลขายในหน้า saleBill ประกอบไปด้วย เลขที่บิล s01,24 และ 42 แต่ใน drop down list ในหน้า RV. จากสูตรที่ทำแสดงเลขที่บิล s01,02 และ 03 ค่ะ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 30735
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: รบกวนอยากให้ช่วยดู error ใน excel

#9

Post by snasui »

:D ตัวอย่างสูตรที่ชีต saleBill ตามด้านล่างครับ
  1. ที่ X1 คีย์
    DropDownDList
    Enter
  2. ที่ Y1 คีย์
    =COUNTIF(saleBill!A2:A10000,'RV Form'!A11)
    Enter
  3. ที่ X2 คีย์
    =IF(ROWS(X$2:X2)>Y$1,"",INDEX($C$2:$C$10000,SMALL(IF($A$2:$A$10000='RV Form'!$A$11,ROW($C$2:$C$10000)-ROW($C$2)+1),ROWS(X$2:X2))))
    Ctrl+Shift+Enter > Copy ลงด้านล่างจนเห็นเป็นค่าว่าง
  4. เข้าเมนู Formulas > Name Manager > คลิกเลือก Name ที่ชื่อ _RV > ช่อง Refers to: เปลี่ยนสูตรเป็น =OFFSET(saleBill!$X$2,0,0,saleBill!$Y$1) > OK

!
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 ทุกครั้ง
premNaka
Member
Member
Posts: 18
Joined: Fri Jul 28, 2017 9:30 pm

Re: รบกวนอยากให้ช่วยดู error ใน excel

#10

Post by premNaka »

ขอบคุณค่ะอาจารย์ แต่หนูลองทำดูแล้ว dropdownlist มันดันไม่ให้เลือกซะงั้น TwT
ไม่ทราบว่าหนูทำผิดขั้นตอนไรตรงไหนไปหรือเปล่าคะ??
User avatar
snasui
Site Admin
Site Admin
Posts: 30735
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: รบกวนอยากให้ช่วยดู error ใน excel

#11

Post by snasui »

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

ก่อนอื่นกรุณาทบทวนการกดแป้นตาม Note ที่ผมเขียนไว้ในโพสต์ #9 อย่างละเอียดว่าได้กดแป้นถูกต้องตามนั้นหรือไม่ครับ
premNaka
Member
Member
Posts: 18
Joined: Fri Jul 28, 2017 9:30 pm

Re: รบกวนอยากให้ช่วยดู error ใน excel

#12

Post by premNaka »

ได้แล้วค่ะ ขอบคุณค่ะอาจารย์
premNaka
Member
Member
Posts: 18
Joined: Fri Jul 28, 2017 9:30 pm

Re: รบกวนอยากให้ช่วยดู error ใน excel

#13

Post by premNaka »

สวัสดีค่ะ ขอรบกวนอาจารย์ทุกท่านอีกรอบนะคะ พอดีหนูลองทำแล้วแต่ยังไม่เป็นที่พอใจค่ะ
"จากโพสรอบก่อนที่หนูสอบถาม เกี่ยวกับ ""ค่าธรรมเนียมบัตรเครดิต"" ในกรณีที่ลูกค้าชำระบัตรเครดิต
ให้คำนวณค่าธรรมเนียมบัตรเครดิต 3% จากยอดที่รับชำระ โดยเมื่อเราเลือก list box ในช่องเลขที่บิล
จะปรากฏยอดในช่องจำนวนเงิน และในกรณีที่ลูกค้าชำระเป็นบัตรเครดิต ให้แสดงค่าธรรมเนียมบัตรเครดิตอัตโนมัติ
สิ่งที่อยากสอบถาม พอดีหนูลองนำสูตรที่ใช้อยู่มาแก้ไข โดยเพิ่มในส่วนของค่าธรรมเนียมในช่องทางการชำระอื่นๆที่มีค่าธรรมเนียมนั้น ปรากฏว่าไม่สามารถทำได้ค่ะ (เรื่องของเรื่องคือหนูทำไม่เป็นมากกว่า) โดยหนูอยากแก้ไขสูตรในช่องค่าธรรมเนียมให้ excel แสดงค่าธรรมเนียมที่เกิดขึ้นจากช่องทางต่างๆที่มี โดยในที่นี้คือ “บัตรเครดิต” และ ePayment ค่ะ ซึ่งในอนาคตคาดว่าจะมีเพิ่มขึ้นอีกหลายช่องทาง เช่น 7-11 บิ๊กซี หรือโลตัส จากไฟล์ในชีท RV Form จะเห็นได้ว่า ในช่อง b18,c18, และn18 เป็นค่าธรรมเนียมในส่วนของบัตรเครดิต ส่วนในช่อง b19,c19, และn19 เป็นค่าธรรมเนียมในส่วนของ “ePayment” ซึ่งความจริงแล้วหนูอยากให้อยู่ในบรรทัดเดียวกันค่ะ ไม่ทราบว่าสามารถเขียนเป็นสูตรเดียวแล้วสามารถคิดค่าธรรมเนียมในช่องทางต่างๆ (ที่มีค่าธรรมเนียมเกิดขึ้น) ได้หรือเปล่าคะ ขอความกรุณาและขอบพระคุณเป็นอย่างสูงค่ะ
premNaka
Member
Member
Posts: 18
Joined: Fri Jul 28, 2017 9:30 pm

Re: รบกวนอยากให้ช่วยดู error ใน excel

#14

Post by premNaka »

ขอโทษนะคะ เนื่องจากไฟล์มีขนาดใหญ่เกินไปทำไม่สามารถ upload ลงในบอร์ดได้ หนูขอแชร์จาก google drive ตามลิงก์ด้านล่างค่ะ

https://drive.google.com/file/d/1oyJokl ... sp=sharing

ขอบพระคุณค่ะ
User avatar
snasui
Site Admin
Site Admin
Posts: 30735
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: รบกวนอยากให้ช่วยดู error ใน excel

#15

Post by snasui »

:D กรุณาตัดข้อมูลในไฟล์ทิ้่งให้เหลือเพียงเพื่อเป็นต้วอย่างแล้วแนบมาในฟอรัมนี้แทนการฝากไว้ที่อื่นตามกฎข้อ 4 ด้านบนครับ
Post Reply