: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
🪷 คำแสดงเจตนา
ขอผลแห่งการให้ความรู้นี้ จงกลับไปยังผู้ที่เป็นเจ้าของเดิม แม้ข้าพเจ้าจะไม่รู้จักท่านก็ตาม ขอให้แสงแห่งปัญญาที่ท่านเคยจุดไว้ ได้กลับไปเติมเต็มชีวิตของท่านอีกครั้ง และขอให้เจตนาของข้าพเจ้าเป็นการคืนความดีอย่างสงบ

ขอความช่วยเหลือบันทึกการทำงานของพนักงานรายวันเป็นฐานข้อมูล

ฟอรัมถาม-ตอบปัญหาการใช้งาน 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. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
User avatar
snasui
Site Admin
Site Admin
Posts: 31176
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: ขอความช่วยเหลือบันทึกการทำงานของพนักงานรายวันเป็นฐานข้อม

#81

Post by snasui »

:D สูตรพวกนี้เข้าใจค่อนข้างยาก เป็นการใช้แบบประยุกต์ไม่ได้ใช้ด้วยความหมายปกติของมันครับ

สำหรับที่าถามมานั้น ลองแล้วยังครับ :?: หากลองแล้วได้ผลไม่เป็นที่ต้องการช่วยแจ้งมาพร้อมกับระบุผลลัพธ์ที่ต้องการมาด้วย จะได้ช่วยกันหาคำตอบครับ
User avatar
suka
Silver
Silver
Posts: 918
Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021

Re: ขอความช่วยเหลือบันทึกการทำงานของพนักงานรายวันเป็นฐานข้อม

#82

Post by suka »

ผลจากการทดลองดู ได้คำตอบที่ถูกต้องค่ะ

อาจารย์คะ อีกหนึ่งคำถามค่ะ ไฟล์นี้เป็นการทำฟอร์มกรอกการทำงานของพนักงานที่มีทำ OT
แต่มีพนักงานอีกกลุ่มหนี่งไม่มี OT หากใช้ฟอร์มเดียวกันกรอกการทำงานที่ชีท Database จะมีบรรทัดที่ว่างมาก
เพื่อลดบรรทัดว่างของเดิมที่ทำอยู่ใช้แยกไฟล์ซึ่งไม่สะดวก หากจะใช้ไฟล์เดียวกันควรทำฟอร์มใหม่อีกหนึ่งไม่มีคอลัมน์ OT ใช่ไหมคะ
แล้วต้องทำชีท Template เพิ่มอีกหนึ่งแล้วให้บันทึกที่ชืท Database เดียวกันใช่ใหมคะ

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

Re: ขอความช่วยเหลือบันทึกการทำงานของพนักงานรายวันเป็นฐานข้อม

#83

Post by snasui »

:D การทำเช่นนั้นก็เป็นทางเลือกที่ดีครับ ไม่เช่นนั้นก็ต้องเขียน Code ที่ซับซ้อนขึ้น เพราะต้อง Loop เอาเฉพาะค่าที่ไม่ว่างไปวางครับ
User avatar
suka
Silver
Silver
Posts: 918
Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021

Re: ขอความช่วยเหลือบันทึกการทำงานของพนักงานรายวันเป็นฐานข้อม

#84

Post by suka »

ขอบพระคุณมากๆๆค่ะ
User avatar
suka
Silver
Silver
Posts: 918
Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021

Re: ขอความช่วยเหลือบันทึกการทำงานของพนักงานรายวันเป็นฐานข้อม

#85

Post by suka »

อาจารย์คะ ขอคำแนะนำเรื่องคีย์อักษรตัวแรกที่ชีท Form เซลล์ D5 เช่นคีย์ จ แล้วให้แสดงชื่อ จิตร , จันทร์ , จอห์น มาให้เลือกค่ะ
ได้นำ Code นี้

Code: Select all

Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
On Error Resume Next
If Not Intersect(Target, Range("D5:D100")) Is Nothing Then
    Worksheets("Employee Data").Range("AF1") = Target
    Target.Select
    If Len(Target) < 3 Then
    Application.SendKeys "%{DOWN}"
    End If
End If
Application.EnableEvents = True
End Sub
ไว้ที่ชีท Form และที่ชีท Employee Dataได้ใส่สูตรไว้ที่เซลล์ AE1:AG15
สงสัยว่าจะเรียนแบบสูตรของอาจารย์ผิดค่ะ ไม่ได้ผลค่ะไม่แสดงดังที่ต้องการค่ะ

ขอบคุณค่ะ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31176
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: ขอความช่วยเหลือบันทึกการทำงานของพนักงานรายวันเป็นฐานข้อม

#86

Post by snasui »

:D ไม่ทราบว่าเลียนแบบมาจากไฟล์ไหนครับ การทำเช่นที่ต้องการนั้นต้องมี Code สำหรับการสร้าง Validation ด้วย แต่ไฟล์ที่แนบมายังไม่มี Code นั้นครับ
User avatar
suka
Silver
Silver
Posts: 918
Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021

Re: ขอความช่วยเหลือบันทึกการทำงานของพนักงานรายวันเป็นฐานข้อม

#87

Post by suka »

suka wrote:อาจารย์คะ ขอคำแนะนำเรื่องคีย์อักษรตัวแรกที่ชีท Form เซลล์ D5 เช่นคีย์ จ แล้วให้แสดงชื่อ จิตร , จันทร์ , จอห์น มาให้เลือกค่ะ
ได้นำ Code นี้

Code: Select all

Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
On Error Resume Next
If Not Intersect(Target, Range("D5:D100")) Is Nothing Then
Worksheets("Employee Data").Range("AF1") = Target
Target.Select
If Len(Target) < 3 Then
Application.SendKeys "%{DOWN}"
End If
End If
Application.EnableEvents = True
End Sub
ไว้ที่ชีท Form และที่ชีท Employee Dataได้ใส่สูตรไว้ที่เซลล์ AE1:AG15
สงสัยว่าจะเรียนแบบสูตรของอาจารย์ผิดค่ะ ไม่ได้ผลค่ะไม่แสดงดังที่ต้องการค่ะ

ขอบคุณค่ะ
อาจารย์คะ ที่ทำมานี้ก็เป็นการเข้าใจผิด แล้ว Code ด้านบนนี้ใช่ใช้กับสูตรที่ชีท Employee Data ซลล์ AE1:AG15 ที่ทำไว้หรือไม่คะ หากใช่จะเป็นคำสั่งให้ทำงานเกียวกับอะไรคะ
ขอบคุณค่ะ
User avatar
snasui
Site Admin
Site Admin
Posts: 31176
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: ขอความช่วยเหลือบันทึกการทำงานของพนักงานรายวันเป็นฐานข้อม

#88

Post by snasui »

suka wrote:อาจารย์คะ ที่ทำมานี้ก็เป็นการเข้าใจผิด แล้ว Code ด้านบนนี้ใช่ใช้กับสูตรที่ชีท Employee Data ซลล์ AE1:AG15 ที่ทำไว้หรือไม่คะ
คำสั่งนี้เป็นการสั่งให้ทำการแสดงค่าใน Validation โดยอัตโนมัติหากว่าคีย์ตัวอักษรน้อยกว่า 3 ตัวลงในช่วงเซลล์ที่กำหนด แต่เนื่องจากทำมาไม่ถูกต้องจึงยังไม่เกี่ยวกันครับ ผมได้ปรับ Validation ให้โดยให้ชื่อกับช่วงเซลล์ใหม่เป็น ValData และปรับสูตรที่ ชีท Employee Data ซลล์ AE2:AE11 เสียใหม่ ลองดูไฟล์แนบประกอบครับ
You do not have the required permissions to view the files attached to this post.
User avatar
suka
Silver
Silver
Posts: 918
Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021

Re: ขอความช่วยเหลือบันทึกการทำงานของพนักงานรายวันเป็นฐานข้อม

#89

Post by suka »

อาจารย์คะ ขอรบกวนอีกรอบนะคะ ลองทำตามตัวอย่างไฟล์ต้นแบบของอาจารย์ก็ยังทำไม่ได้ไม่ทราบทำเกินหรือขาดที่ใดจุดใดค่ะ
ขอบคุณค่ะ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31176
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: ขอความช่วยเหลือบันทึกการทำงานของพนักงานรายวันเป็นฐานข้อม

#90

Post by snasui »

:D ได้อ่านและเข้าใจตามนี้หรือยังครับ
snasui wrote:...ผมได้ปรับ Validation ให้โดยให้ชื่อกับช่วงเซลล์ใหม่เป็น ValData...
ในข้อความที่ยกมามี 2 เรื่อง
  • ปรับ Validation ใหม่โดยนำข้อ 2 มาใช้
  • ให้ชื่อกับช่วงข้อมูลที่จะทำมาใช้ใน Validation ใหม่ชื่อว่า ValData
สิ่งที่ต้องตรวจสอบ
  • ตรวจสอบชื่อที่ให้ไว้ว่ากำหนดค่าอย่างไรโดยเข้าไปที่เมนู Insert > Name > Define แล้วหาชื่อ ValData
  • นำชื่อนั้นมาใช้ใน Validation
  • สังเกตการกำหนดค่าในแถบอื่น ๆ ของ Validation จากไฟล์ที่ผมแนบกลับไปให้ว่ากำหนดไว้เป็นเช่นใด
User avatar
suka
Silver
Silver
Posts: 918
Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021

Re: ขอความช่วยเหลือบันทึกการทำงานของพนักงานรายวันเป็นฐานข้อม

#91

Post by suka »

2.ให้ชื่อกับช่วงข้อมูลที่จะทำมาใช้ใน Validation ใหม่ชื่อว่า ValData
อาจารย์คะ
การตั้งชื่อคือไปที่เมนู Insert > Name > Define ใส่ชื่อ ValData และใส่สูตรในช่องอ้างอิง =OFFSET('Employee Data'!$AG$2,0,0,'Employee Data'!$AG$1)
แล้วนำมาใช้
1.ปรับ Validation ใหม่โดยนำข้อ 2 มาใช้
ใช่แบบนี้ไหมคะ ได้ทำแบบนี้แล้วลองคีย์ที่ชีท Form เซลล์ D5 อักษร 2 ตัวที่ต้องการแล้ว Enter จะมีคำเตือนขึ้นมาค่ะ
น่าจะยังทำไม่ถูกวิธีมาขอคำแนะนำจากอาจารย์เพิ่มค่ะ
ขอบคุณค่ะ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31176
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: ขอความช่วยเหลือบันทึกการทำงานของพนักงานรายวันเป็นฐานข้อม

#92

Post by snasui »

snasui wrote: สิ่งที่ต้องตรวจสอบ
  • ...
  • ...
  • สังเกตการกำหนดค่าในแถบอื่น ๆ ของ Validation จากไฟล์ที่ผมแนบกลับไปให้ว่ากำหนดไว้เป็นเช่นใด
แสดงว่ายังไม่ได้ทำตามข้อ 3 ตามที่แจ้งไปครับ :roll: ให้ปลดเครื่องหมายที่ลูกศรชี้ตามภาพด้านล่างออกไปครับ
You do not have the required permissions to view the files attached to this post.
User avatar
suka
Silver
Silver
Posts: 918
Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021

Re: ขอความช่วยเหลือบันทึกการทำงานของพนักงานรายวันเป็นฐานข้อม

#93

Post by suka »

ค่ะอาจารย์ ใช่ค่ะยังไม่ได้ทำตามข้อ 3 ด้วยความมุ่งมั่นตั้งใจทำข้อ 2

ตอนนี้ทำตามข้อ 3 ใช้งานได้แล้วค่ะ ขอบพระคุณมากค่ะ
User avatar
suka
Silver
Silver
Posts: 918
Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021

Re: ขอความช่วยเหลือบันทึกการทำงานของพนักงานรายวันเป็นฐานข้อม

#94

Post by suka »

อาจารย์คะ ขอความช่วยเหลือเรื่องสูตรที่ชีท PrintRepor ช่วงคอลัมน์ BT:BY สูตรที่ใช้นี้หากเรียกดูรายงานตามวันที่ ที่ชีท Form บันทึกแต่ละครั้งจะแสดงผลได้ถูกต้อง เช่น

ที่ชีท Form ได้บันทึกการทำงาน ครั้งที่ 1 วันที่ 3/10/2011 -8/10/2011 แล้วเรียกดูรายงานที่ชีท PrintReport และที่เซลล์ BY7 แสดงตัวเลข 120 ถูกต้อง
ที่ชีท Form ได้บันทึกการทำงาน ครั้งที่ 2 วันที่ 10/10/2011 -15/10/2011แล้วเรียกดูรายงานที่ชีท PrintReport ที่เซลล์ BX7 แสดงตัวเลข 5 และที่เซลล์ BY7 แสดงตัวเลข 115 ถูกต้อง
ปัญหาคือเรียกดูรายงาน วันที่ 3/10/2011 -15/10/2011 รวม 2 ครั้งของการบันทึกที่ชีท PrintReport ที่ถูกต้องที่เซลล์ BX7 แสดงตัวเลข 5 และที่เซลล์ BY7 แสดงตัวเลข 235
แต่เป็นที่เซลล์ BX7 แสดงไม่มีเลขใด เซลล์ BY7 แสดงตัวเลข 120 ออกมาผิดค่ะ
ขอบคุณค่ะ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31176
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: ขอความช่วยเหลือบันทึกการทำงานของพนักงานรายวันเป็นฐานข้อม

#95

Post by snasui »

:D ไม่ทราบว่าคำตอบที่ต้องการนั้นให้นำเซลล์ไหนของชีท Database มาแสดง และเข้าใจสูตร Sumproduct ที่เขียนมาหรือไม่ครับ :?:
User avatar
suka
Silver
Silver
Posts: 918
Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021

Re: ขอความช่วยเหลือบันทึกการทำงานของพนักงานรายวันเป็นฐานข้อม

#96

Post by suka »

เมื่อแรกที่นำสูตรมาใช้ขาดความรอบครอบ ทดสอบแค่ช่วงที่ชีท Form บันทึกเป็นรายสัปดาห์ แต่ชีท PrintReport ออกแบบเพื่อดูรายงานได้หนึ่งเดือน ผลที่ได้จึงไม่ใช่ที่ต้องการค่ะ
snasui wrote:เข้าใจสูตร Sumproduct ที่เขียนมาหรือไม่ครับ
สูตร Sumproduct ที่เข้าใจ (แบบงงๆ)ค่ะ ยกตัวอย่างให้แสดงที่คอลัมน์ BX ของชีท PrintReport
"ให้หาผลของแต่ละรายการว่ามีค่าตรงกับค่าในคอลัมน์ D หากตรงตามคอลัมน์ D ของชีท PrintReport ให้นำค่าในคอลัมน์ S ของชีท Database ที่ตรงกันมาแสดง "
snasui wrote:ไม่ทราบว่าคำตอบที่ต้องการนั้นให้นำเซลล์ไหนของชีท Database มาแสดง
ให้นำคอลัมน์ R ของชีท Database มาแสดงที่ คอลัมน์ BW ของชีท PrintReport
ให้นำคอลัมน์ S ของชีท Database มาแสดงที่ คอลัมน์ BX ของชีท PrintReport
ให้นำคอลัมน์ Q ของชีท Database มาแสดงที่ คอลัมน์ BY ของชีท PrintReport
ให้นำคอลัมน์ T ของชีท Database มาแสดงที่ คอลัมน์ BZ ของชีท PrintReport

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

Re: ขอความช่วยเหลือบันทึกการทำงานของพนักงานรายวันเป็นฐานข้อม

#97

Post by snasui »

suka wrote:"ให้หาผลของแต่ละรายการว่ามีค่าตรงกับค่าในคอลัมน์ D หากตรงตามคอลัมน์ D ของชีท PrintReport ให้นำค่าในคอลัมน์ S ของชีท Database ที่ตรงกันมาแสดง "
ที่อธิบายเกียวกับสูตร Sumproduct มานั้น ไม่ถูกต้องครับ จากสูตรในชีท PrintReport เซลล์ BX7

=IF(L$6>$D$3,"",SUMPRODUCT(--(L$6=Database!$A$2:$A$65536),--(L$3=Database!$K$2:$K$65536),--($D7=Database!$E$2:$E$65536),Database!$S$2:$S$65536))

มี 3 เงื่อนไข คือ
  • --(L$6=Database!$A$2:$A$65536)
  • --(L$3=Database!$K$2:$K$65536)
  • --($D7=Database!$E$2:$E$65536)
ส่วน Database!$S$2:$S$65536 คือช่วงเซลล์ที่ต้องการนำมาแสดงผล

ทราบหรือไม่ครับว่าแต่ละเงื่อนไขหมายความว่าอย่างไร :?:

และตามด้านล่าง
suka wrote:ที่ถูกต้องที่เซลล์ BX7 แสดงตัวเลข 5 และที่เซลล์ BY7 แสดงตัวเลข 235
เซลล์ไหนบ้างใช้ชีท Database ที่จะนำมาวางใน BX7 แล้วให้แสดงเป็น 5 และเซลล์ไหนบ้างในชีท Database ที่จะให้แสดงใน BY7 แล้วให้แสดงเป็น 235 :?:
User avatar
suka
Silver
Silver
Posts: 918
Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021

Re: ขอความช่วยเหลือบันทึกการทำงานของพนักงานรายวันเป็นฐานข้อม

#98

Post by suka »

อาจารย์คะ ตามไฟล์ตัวอย่าง

ใช้เซลล์ S2:S13,S62:S73 ชีท Database มาแสดงที่เซลล์ BX7 แสดง 5 ค่ะ
ใช้เซลล์ Q2:Q13,Q62:Q73 ชีท Database มาแสดงที่เซลล์ BY7 แสดง 235 ค่ะ

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

Re: ขอความช่วยเหลือบันทึกการทำงานของพนักงานรายวันเป็นฐานข้อม

#99

Post by snasui »

:D ดูแล้วคงจะต้องถามตอบกันอีกยาวไกล ควรทำความเข้าใจสูตร Sumproduct ใหม่ครับ

เนื่องจากสูตรที่อ้างอิงมานั้นผิดเงื่อนไข จากไฟล์ที่แนบมา เงื่อนไขน่าจะเป็นวันแรกกับวันสิ้นสุด ไม่ได้เกี่ยวอะไรกับ J3, J6

ลองเขียนสูตรนี้ที่ BY7

=IF(D$2>$D$3,"",SUMPRODUCT(((D$2=Database!$A$2:$A$65536)+(D$3=Database!$A$2:$A$65536)),--(J$3=Database!$K$2:$K$65536),--($D7=Database!$E$2:$E$65536),Database!$Q$2:$Q$65536))

Enter > Copy ลงด้านล่าง ปรับใช้กับเซลล์อื่นที่มีการคำนวณลักษณะเดียวกัน

กรณีผมถามว่าเซลล์ไหน ให้ตอบโดยระบุเซลล์เช่น A1, A10, A100 เป็นต้น ไม่ใช่ตอบมาเป็นช่วงเซลล์เหมือนที่ตอบมาครับ
User avatar
suka
Silver
Silver
Posts: 918
Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021

Re: ขอความช่วยเหลือบันทึกการทำงานของพนักงานรายวันเป็นฐานข้อม

#100

Post by suka »

ขออภัยค่ะอาจารย์ จะทำความเข้าใจและศึกษาให้มากกว่านี้ค่ะ :oops:
สูตรที่ได้ตรงตามต้องการค่ะ ขอบพระคุณมากค่ะ
Post Reply