แสดงกระทู้

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - OddyWriter

หน้า: [1] 2 3 4 ... 34
1
สร้างได้ครับ
1. เพิ่มฟิลด์ที่มี DataType เป็น Y/N
2. สร้าง Datasheet Form แล้วฟิลด์นั้นจะเป็น Check Box ให้เอง
3. เวลาสั่งลบก็เขียน SQL ให้ลบเรคอร์ดที่ฟิลด์นั้นเป็น Y ครับ

2
น่าจะต้องเพิ่มอีก 1 คอลัมน์ เพื่อใส่ลำดับ
แล้วทำตามนี้ดู
https://learn.microsoft.com/en-us/troubleshoot/sql/database-engine/development/rotate-table

https://stackoverflow.com/questions/10210512/transpose-a-table-using-query-in-access

3
ไฟล์ตัวอย่างนะครับ ตั้งเวลาไว้ที่ 10 วินาที

4
ใช้คำสั่ง IIF ครับ

ตัวอย่างในไฟล์แนบ

5
หน้าที่หลักของ Query คือใช้ในการกรองข้อมูล (Select Query)
หน้าที่รองคือใช้ในการเปลี่ยนแปลงข้อมูล (Action Query)

1. ปกติแล้ว Action Query จะไม่สามารถเปลี่ยนแปลงข้อมูลด้วยวิธีการป้อนเข้าไปเองได้
2. สำหรับ Select Query ถ้าเป็นข้อมูลที่มาจาก 2 ตารางและการเปลี่ยนแปลงนั้นส่งผมต่อข้อมูลในตารางแบบที่ขัดกับกฏของฐานข้อมูล มันก็จะไม่สามารถเปลี่ยนแปลงได้

กฏง่ายๆ ของฐานข้อมูล ก็เหมือนกฏของโคนันครับ

ยกเว้น PK กับ FK แล้ว ข้อมูลมีเพียง 1 เดียว

6
ไม่ใช่ครับ คือผมงงว่า เงื่อนไขของวันศุกร์ในสัปดาห์ถัดไป ต้องเป็น Friday02 ด้วยหรือ เพราะเจ้าของกระทู้ไม่ได้ระบุเงื่อนไขนี้ไว้
ใน 1 ปีมี 52 สัปดาห์ ถ้า 2 ปีก็ 104 สัปดาห์ อย่างนี้วันศุกร์ของอีก 2 ปีถัดต้องใช้เลขอะไรครับ

คืองง!!! รบกวนเจ้าของกระทู้มาตอบตรงนี้ด้วยนะครับ :question:

ปล. เลยไม่รู้ตัวเองเลยว่า คิดมากหรือคิดน้อยไป ฉับฉน :question: :question:

คืออะไรครับ ไม่เข้าใจ :question:


อ้อคือไฟล์ชุด RunningDay ของอาจารย์ ตัวอย่างวันศุกร์ 15-Sep-23 RunningID สุดท้ายอยู่ที่ Friday02-22 เมื่อทดลองไปวันศุกร์หน้า 22-Sep-23 ตัว RunningID จะกลับไปเริ่มนับ1ใหม่เป็น Friday01-1 ผมจึงทดลองหาวิธีแก้แล้วได้ผลคือเปลี่ยนจาก myDataCount = DCount("[DateData]", "tblData", "[DateData]=[txtDate]") เป็น
โค๊ด: [Select]
myDataCount = DCount("WeekdayName(Weekday(DateData))", "tblData", "WeekdayName(Weekday([DateData]))=WeekdayName(Weekday([txtDate]))")เพื่อให้วันศุกร์ที่ 22-Sep-23 ตัว RunningID นับต่อเป็น Friday02-23 , ++ น่ะครับผม  :prettiness:

7
คืออะไรครับ ไม่เข้าใจ :question:



นำไฟล์ของ อ.OddyWriter ไปเปิดดูแล้วหาทางแก้ให้นับเลขต่อจากวันศุกร์ที่แล้วเป็นที่เรียบร้อยครับ :cool:


1. เปิดไฟล์
2. คลิก InputData


หวังว่าจะใช่สิ่งที่ต้องการ แกะโค้ดเองนะครับ

8
1. เปิดไฟล์
2. คลิก InputData


หวังว่าจะใช่สิ่งที่ต้องการ แกะโค้ดเองนะครับ

9
อ่านแล้วงงยกกำลังสาม

ลองทำตารางเป็นตัวอย่างให้ดูหน่อยครับ สมาชิกท่านอื่นจะได้เข้าใจด้วย

10
น่าจะเกิดจากมีการแก้ไขข้อมูลที่เรคอร์ดเดียวกันครับ
คือระหว่างที่คุณกำลังป้อนข้อมูล ก็มีอีกคนไปแก้ไขข้อมูลในเรคอร์ดที่คุณกำลังแก้ไขอยู่

11
แนะนำให้สร้างคิวรีที่กรองข้อมูลตามต้องการก่อน

จากนั้นนำคิวรีนี้ไปเป็น Record Source ของฟอร์มจะง่ายและได้อย่างที่ต้องการมากกว่าครับ

12
ก็พอติ๊กเลือกครึ่งวัน ก็เอาจำนวนวันมาหาร 2 ครับ

13
ตรงรวมวันลา ให้เป็น 0.5 แทนที่จะเป็น 1 ครับ

14
SELECT Sono
FROM ชื่อตาราง
GROUP BY Sono,EmpCode
HAVING Sono Like "SS*" AND EMPCode = รหัสพนักงาน;

15
SELECT Sono,EmpCode
FROM ชื่อตาราง
GROUP BY Sono,EmpCode
HAVING Sono Like "SS*";

16
ห้อง MS Access / : เกิด Run-time error '-2147417848 (80010108)'
« เมื่อ: 27 ก.ค. 66 , 17:16:17 »
ไม่แน่ใจว่าคำสั่งนี้ของคุณมีจุดประสงค์อะไรนะครับ แต่เท่าที่ดูจากเว็บของ Microsoft ไม่มี Method : Close ของ Windows นะครับ มีแต่ของ Window

https://learn.microsoft.com/en-us/office/vba/api/excel.window.close


17
สร้าง Select Query แล้วเปลี่ยนเป็น Append Query กำหนดตารางที่จะส่งข้อมูลไป

18
หนูได้สร้างคิวรี่A โดยกรองข้อมูลจากตารางA เอาไว้้เรียบร้อยแล้ว
และหนูก็ได้สร้างตารางB เอาไว้อีกตารางหนึ่งซึ่งมีโครงสร้างตรงกับคิวรี่A ทุกประการ

ความต้องการของหนูก็คือ
ต้องการคำสั่งที่จะโยนข้อมูลจากคิวรี่A เข้าสู่ตารางB เฉพาะเมื่อต้องการค่ะ
โดยที่หน้าฟอร์มจะมีปุ่มชื่อ "โยนข้อมูล" เพื่อเตรียมจะใส่คำสั่งดังกล่าวค่ะ
ตอบ ใช้ Append Query

ในคิวรี่ เราจะกรองข้อมูลย้อนหลัง เอาเฉพาะข้อมูลเดือนก่อนหน้าเดือนปัจจุบันเพียงหนึ่งเดือน ได้อย่างไรคะ
ตอบ กำหนด Criteria ให้วันที่เป็นวันที่ที่ต้องการ


หน้า: [1] 2 3 4 ... 34