สรุปวันลา



0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

07 ต.ค. 61 , 09:54:15
อ่าน 1147 ครั้ง

laemthong

สรุปวันลา
« เมื่อ: 07 ต.ค. 61 , 09:54:15 »
นำข้อมูลจากคาราง   TblVacation  มา สรุป ในตาราง ResultVacation มีแนวทาง การเขียน Query หรือ VBA Code แบบใดได้บ้างครับ

 

07 ต.ค. 61 , 10:18:23
ตอบกลับ #1

OddyWriter

: สรุปวันลา
« ตอบกลับ #1 เมื่อ: 07 ต.ค. 61 , 10:18:23 »
ใช้ Crosstab Query แล้วกำหนด Headder 1-31 ด้วยครับ
กินร้อน ช้อนตัวเอง จานใครจานมัน ออกนอกบ้านใส่หน้ากากอนามัยหรือหน้ากากผ้า
 
โพสต์นี้ได้รับคำขอบคุณจาก: laemthong

07 ต.ค. 61 , 10:57:47
ตอบกลับ #2

laemthong

: สรุปวันลา
« ตอบกลับ #2 เมื่อ: 07 ต.ค. 61 , 10:57:47 »
ขอคุณครับ OddyWriter การกำหนด Header ใน Crosstab 1-31 ทำอย่างไรครับ? ผมทำได้แค่นี้ครับ  ขอรบกวนดูวิธีกำหนด Header 1-30 ใน  CrosstabQuery  (ภาพ ใน QBE Grid นะครับ)    ถ้าเป็น VBA Code ที่มีการ Loop ข้อมูล  แล้ว  Update ใน คาราง ResultVacation ที่สร้างรอไว้แล้ว  จะมีความเป็นไปได้หรือเปล่าครับ
« แก้ไขครั้งสุดท้าย: 07 ต.ค. 61 , 11:03:17 โดย laemthong »

 

07 ต.ค. 61 , 15:46:49
ตอบกลับ #3

OddyWriter

: สรุปวันลา
« ตอบกลับ #3 เมื่อ: 07 ต.ค. 61 , 15:46:49 »
เอาไฟล์มาฝากไว้ที่นี่ครับ
กินร้อน ช้อนตัวเอง จานใครจานมัน ออกนอกบ้านใส่หน้ากากอนามัยหรือหน้ากากผ้า
 

07 ต.ค. 61 , 17:39:05
ตอบกลับ #4

laemthong

: สรุปวันลา
« ตอบกลับ #4 เมื่อ: 07 ต.ค. 61 , 17:39:05 »
ไฟล์แนบครับ VACATION.ZIP

 

07 ต.ค. 61 , 22:06:57
ตอบกลับ #5

OddyWriter

: สรุปวันลา
« ตอบกลับ #5 เมื่อ: 07 ต.ค. 61 , 22:06:57 »
เอาไปประยุกต์ดูนะครับ
กินร้อน ช้อนตัวเอง จานใครจานมัน ออกนอกบ้านใส่หน้ากากอนามัยหรือหน้ากากผ้า
 
โพสต์นี้ได้รับคำขอบคุณจาก: laemthong

08 ต.ค. 61 , 07:25:26
ตอบกลับ #6

laemthong

: สรุปวันลา
« ตอบกลับ #6 เมื่อ: 08 ต.ค. 61 , 07:25:26 »
ยังไปต่อไม่ได้ครับ...

 

08 ต.ค. 61 , 14:40:32
ตอบกลับ #7

OddyWriter

: สรุปวันลา
« ตอบกลับ #7 เมื่อ: 08 ต.ค. 61 , 14:40:32 »
1. สำหรับระบบบันทึกการขาดงานน่ะ คุณควรออกแบบตาราง tblVaction ใหม่ครับ (คุณไม่ได้ส่งตารางนี้มาให้ ผมก็ทำให้ได้เท่าที่ทำให้ครับ)
โดยตารางก็ควรประกอบด้วย ID,วันที่ลา,ประเภทการลา,หมายเหตุ (จะมีหรือไม่ก็ได้)
2. ควรมีตารางวันหยุดของทั้งปี เพื่อนำมาใช้ในข้อ 3
3. การบันทึกข้อมูลในตาราง tblVacation ก็บันทึกวันลาในแต่ละวัน ถ้าเขาลาต่อเนื่องก็ต้องมีวัน เช่น เขาลาวันที่ 5-8 ตุลา ก็ต้องบันทึกวันที่ 5 ตุลา และ 8 ตุลา เท่านั้น ส่วนวันที่ 6-7 ตุลา เป็นเสาร์-อาทิตย์ ซึ่งไม่ต้องบันทึก โดยเรานำตารางวันหยุดมาเป็นตัวหักวันที่ 6-7 ออกไป

เมื่อได้ข้อมูลพวกนี้แล้ว ก็นำมาทำ Crosstab Query
กินร้อน ช้อนตัวเอง จานใครจานมัน ออกนอกบ้านใส่หน้ากากอนามัยหรือหน้ากากผ้า
 

10 ต.ค. 61 , 18:18:43
ตอบกลับ #8

nonc31

: สรุปวันลา
« ตอบกลับ #8 เมื่อ: 10 ต.ค. 61 , 18:18:43 »
ไม่รู้ว่าทำถึงไหนแล้ว ผมมีคอนเสบแบบนี้



 
โพสต์นี้ได้รับคำขอบคุณจาก: laemthong

12 ต.ค. 61 , 03:07:32
ตอบกลับ #9

laemthong

: สรุปวันลา
« ตอบกลับ #9 เมื่อ: 12 ต.ค. 61 , 03:07:32 »
กำลังหาแนวทางอยู่ครับ....ต้องขอบคุณ OddyWriter ที่แนะนำครับ ถ้าไม่เป็นการรบกวน ผมขอไฟล์ของคุณ nonc31 มาศึกษา ดูครับ.....

 

17 ต.ค. 61 , 22:30:52
ตอบกลับ #10

laemthong

: สรุปวันลา
« ตอบกลับ #10 เมื่อ: 17 ต.ค. 61 , 22:30:52 »
ทำได้ละครับ.....ชีวิต ต้องมีหนทาง.....
1.สร้างตาราง วันที่ ในรอบปี (365 หรือ 366 วัน แล้วแต่ปี)  และหาวันหยุด เสาร์ และ อาทิตย์  ทั้งปี
2. หาข้อมูลวันหยุดอื่นๆ (จากเวปไซต์ ต่างๆ)  เพื่ออัพเดทตารางในข้อ 1 ลบข้อมูลที่ไม่ใช่ วันหยุด ในข้อ 1 ทิ้ง จะเหลือข้อมูล ที่เป้นวันหยุดทั้งปีรวม เสาร์และอาทิตย์ ทั้งปี (เพิ่งรู้เหมือนกันว่า วันหยุดทั้งปี รวมเสาร์อาทิตย์ 100 กว่าวัน)

3 สร้างตาราง ชั่วคราว (แบบที่ คุณ OddyWriter แนะนำ) Loop ข้อมูล ว่าการลาแต่ละครั้งเป็นการลาแะไร ป่วย กิจ พักผ่อน ขาด ฯลฯ 
4.นำตาราง ที่ได้ จาก ข้อ 1 สร้างความสัมพันธ์กับตารางข้อ 3 วันหยุด(ตารางข้อ1) กับวันที่ลา(ตารางข้อ3)  อัพเดทให้เป็นค่าว่าง  ก็จะเหลือวันที่ลาจริงๆ


 

17 ต.ค. 61 , 22:41:56
ตอบกลับ #11

OddyWriter

: สรุปวันลา
« ตอบกลับ #11 เมื่อ: 17 ต.ค. 61 , 22:41:56 »
จริงๆ แล้วในข้อ 2 ไม่จำเป็นต้องลบข้อมูลก็ได้ แต่กำหนด Data Type เป็น Yes/No ก็ได้แล้วครับ เผื่อระหว่างปีมีการเปลี่ยนวันหยุด
กินร้อน ช้อนตัวเอง จานใครจานมัน ออกนอกบ้านใส่หน้ากากอนามัยหรือหน้ากากผ้า
 
โพสต์นี้ได้รับคำขอบคุณจาก: laemthong

18 ต.ค. 61 , 10:57:48
ตอบกลับ #12

laemthong

: สรุปวันลา
« ตอบกลับ #12 เมื่อ: 18 ต.ค. 61 , 10:57:48 »
จริงๆ แล้วในข้อ 2 ไม่จำเป็นต้องลบข้อมูลก็ได้ แต่กำหนด Data Type เป็น Yes/No ก็ได้แล้วครับ เผื่อระหว่างปีมีการเปลี่ยนวันหยุด

 

18 ต.ค. 61 , 11:08:19
ตอบกลับ #13

laemthong

: สรุปวันลา
« ตอบกลับ #13 เมื่อ: 18 ต.ค. 61 , 11:08:19 »

วันหยุดทั้งปี ไม่รวมเสาร์-อาทิตย์

แบบสรุปวันลา รายบุคคล (เตรียมนำไปทำ รายงาน ต่อไป )

วันหยุดทั้งปี เสาร์-ทิตย์ รวม วันหยุดอื่นๆ....ลบวันทำการออกไปแล้ว....(ที่บอกว่าวันหยุดทั้งปี มี 100 กว่าวัน ปีที่คำนวณ มีวันหยุดถึง 124 วันต่อปั)

 

18 ต.ค. 61 , 11:31:53
ตอบกลับ #14

laemthong

: สรุปวันลา
« ตอบกลับ #14 เมื่อ: 18 ต.ค. 61 , 11:31:53 »
อาจจะ เยิ่นเย้อไปหน่อย หลายขั้นตอน หลายตาราง แต่ก็ได้ผลออกมาตามความต้องการ  ขอขอบคุณ  OddyWriter, 86I nonc31  ที่ให้แนวคิด และคำแนะนำ  และอีกหนึ่งท่าน ที่ได้ให้คำแนะนำมาโดยตลอด คือ อาจารย์ สันติสุข....

ด้วย VBA Code อันนี้ ที่นำไปปรับแต่งและประยุกต์ใช้ ทำให้ปัญหาผ่านไปด้วยดี...ขอบคุณครับ

 


บอร์ดเรียนรู้ Access สำหรับคนไทย