กระทู้เก่าบอร์ด อ.สุภาพ ไชยา
333 7
URL.หัวข้อ /
URL
access97 หรือ2000
ฝึกเขียนอยู่ครับ พบปัญหาต้องการสร้างปุ่มเพื่อคลิก แล้วให้มันแสดงวันที่และเวลาขณะนั้น แต่ไม่ไม่เปลี่ยนแปลงต่อไป ถ้า วันที่และเวลาจริงมีการเปลี่ยนไป
และอยากทราบว่ามีวิธีกำหนดอย่างไร ถ้าต้องการรู้ผลต่างของวันที่และเวลา 2 ช่วงว่า ใช้เวลาไปกี่วันกี่ชม.กี่นาที กี่วินาทีในการทำงานชิ้นนั้น ต้องใช้สูตรอย่างไร กำหนดไว้ที่ใด ขอความกรุณาด้วยครับ กำลังมึนไม่รู้จะไปพึ่งใครแล้ว ช่วยตอบทางอีเมล์ได้ก็จะเป็นพระคุณยิ่ง
และอยากทราบว่ามีวิธีกำหนดอย่างไร ถ้าต้องการรู้ผลต่างของวันที่และเวลา 2 ช่วงว่า ใช้เวลาไปกี่วันกี่ชม.กี่นาที กี่วินาทีในการทำงานชิ้นนั้น ต้องใช้สูตรอย่างไร กำหนดไว้ที่ใด ขอความกรุณาด้วยครับ กำลังมึนไม่รู้จะไปพึ่งใครแล้ว ช่วยตอบทางอีเมล์ได้ก็จะเป็นพระคุณยิ่ง
7 Reply in this Topic. Dispaly 1 pages and you are on page number 1
1 @R00511
ก็คงจะต้องเก็บในตาราง โดยแบ่งออกเป็น 2 ฟีลด์ คือ BDateTime เพื่อเก็บวันเวลาเริ่มต้น และ EDateTime เพื่อเก็บวันเวลาสิ้นสุด
จากนั้นก็ให้สร้องฟอร์มจากตารางนี้ แล้วใส่ปุ่ม Command Button 2 ปุ่ม ไว้ข้างๆ Text Box ของฟีลด์ทั้ง 2
ปุ่มที่ 1 ให้ใส่โค้ดนี้ลงไป
Private Sub Command0_Click()
If Me.BDateTime ="" Or IsNull(Me.BDateTime) Then
Me.BDateTime = Now
End If
End Sub
และใส่โค้ดนี้ลงไปในปุ่มที่ 2
Private Sub Command1_Click()
If Me.EDateTime = "" Or IsNull(Me.EDateTime) Then
Me.EDateTime = Now
End If
End Sub
ถ้าต้องการจะทราบความแตกต่างจากเวลาของทั้ง 2 ฟีลด์ ให้ใส่ Text Box ลงไปอีก 1 อัน ชื่อ txtTimeDiff
แล้วใส่โค้ดนี้ลงไป โดยให้อยู่ใน On Double Click คือ ถ้าต้องการที่จะให้แสดงผล ต้องคลิก 2 ทีที่ Text Box นี้
Private Sub txtTimeDiff_DblClick(Cancel As Integer)
If Me.EDateTime > Me.BDateTimeThen
Me.txtTimeDiff = DateDiff("d", Me.BDateTime, Me.EDateTime) & " วัน " & _
DateDiff("h", Me.BDateTime, Me.EDateTime) Mod 24 & ":" & _
DateDiff("n", Me.BDateTime, Me.EDateTime) Mod 60 & _
":" & DateDiff("s", Me.BDateTime, Me.EDateTime) Mod 60
Else
MsgBox "เวลา Date Finish จะต้องมากกว่าเวลา Date Start", vbOKOnly, "ใส่เวลาผิด"
Exit Sub
End If
End Sub
จะเห็นว่าผมใช้ฟังก์ชัน DateDiff() เข้าช่วย และการใช้ Mod (หารเอาเศษ)
ให้ศึกษาจาก Help เพิ่มเติมนะครับ
2 @R00598
ผมมีปัญหาเกี่ยวกับการเขียนแอกเซสครับ กำลังหัดทำ อยากทำดังนี้ครับ
มีพนักงานกลุ่มที่ 1 เป็นพนักงานระดับล่าง ต้องทำงานร่วมกับพนักงานกลุ่มที่2 เป็นพนักงานระดับบน
แต่ละพนักงานมีเลขประจำตัวพนักงานตามลำดับอาวุโสครับ
พนักงานทั้ง 2 กลุ่มจะถูกสุ่มรับงานมาทำชิ้นหนึ่ง โดยงานจะหมุนเวียนไปตามลำดับเลขประจำตัวก่อนรับงานก่อน พนักงาน2กลุ่มนั้นใครมีงานที่ค้างในมือน้อยที่สุดต้องทำงานชิ้นนั้นก่อน ถามว่าจะเขียนยังไงครับที่จะให้กดปุ่มสุ่มหา แล้วระบบจะแจ้งเลขไอดีพนักงานนั้นหรือชื่อพนักงานนั้น ทั้ง 2 คนขึ้นมาเพื่อรับมอบงานชิ้นนั้นไปทำ
หมายเหตุ ให้โปรแกรมหยุดสุ่มพนักงานคนที่ลาป่วยลากิจด้วย
ขอบคุณมากครับ
3 @R00600
คงต้องมีตาราง Assignment เพื่อบันทึกว่าใครทำงานอะไรบ้างตอนนี้ แล้วมีฟีลด์หนึ่งที่บอกว่าทำเสร็จหรือยัง
จากนั้นเราต้องการทำการ Count ว่าใครเหลืองานในมือน้อยที่สุด โดยให้เรียงตามจำนวนงานที่น้อยขึ้นก่อน แล้วเรียงตามรหัสของพนักงานครับ
ถ้าต้องการตรวจดูว่าคนลำดับที่ 1 ที่ควรจะมารับงานชิ้นต่อไปลาอยู่หรือเปล่า ก็ต้องตรวจว่ามีรายชื่อลาหรือเปล่า ไม่ทราบว่าตรงกับที่คิดเรื่องวันลาหรือเปล่าครับ
4 @R00602
เรื่องการสุ่มหา นั้นขอบคุณครับสำหรับคำอธิบาย แต่ยังไม่เข้าใจวิธีการทำ ไม่ทราบว่าพอจะสมมติตัวอย่างและต้องเขียนโค๊ดอย่างไรบ้างครับ ถ้าจะละเอียดสักนิดคงจะเป็นพระคุณยิ่งครับ
ใช้97เขียนครับ
5 @R00603
จากหัวข้อที่ 00261 เรื่องการเขียนป่มกำหนดเวลา เช่นป่มที่ 1 ตอนแรกเวลาอยู่ที่ 00.00.00 หรือ NOW
ก็ได้ และหลังจากนั้นสมมติว่าอีก 15 นาทีคลิกปุ่มที่2 ให้ปุ่มที่2ใส่เวลาของขณะนั้นNOWลงไป ทั้งนี้จุดประสงค์เพื่อเปรียบเทียบว่า จากเวลา ณปุ่มที่1ถึงเวลา ณ ปุ่มที่ 2 ใช้เวลาไปกี่ชม. กี่นาที กี่วินาที นั้น
และทางคุณสุภาพกรุณาให้คำแนะนำมา ผมลองทำดูปรากฎว่า ครั้งแรกที่ยังไม่คลิก(ใช้ ปุ่มออพชั่น ใน 97) ปรากฎว่า เริ่มแรกเป็น 00.00.00 และเมื่อคลิกให้เป็นจุดดำแล้วจะปรากฎเป็น 29/12/2442 ซึ่งไม่ตรงตามที่ผมต้องการ ไม่ทราบว่าเป็นเพราะอะไร
1.ทำไมจึงเป็น 29/12/2442 เวลาในเครื่องก็ถูกต้องแล้ว
2.ทำไมหลังคลิกไม่เป็นวันที่ เช่น 19/08/2545 17.18.04
3.มีวิธีแก้ไขอย่างไร
4.ถ้ามีขั้นตอนการจับเวลาถัดไปอีกหลายขั้นตอน ทำเหมือนเดิมหรือไม่ หรือทำอย่างไร
5.การหักกลบเวลาเพื่อให้ปรากฎในรายงานว่าแต่ละขั้นตอนใช้เวลาเท่าไร เขียนอย่างไร
ขอความกรุณาด้วยครับ ละเอียดๆยิ่งดีหรือมีตัวอย่างจะเป็นพระคุณยิ่ง
6 @R00605
ไม่ทราบว่าได้สร้างหรือออกแบบตารางอะไรบ้างหรือยังครับ
คงจะต้องมีตาราง
1. ตารางพนักงาน
StaffID, FName, LName, ...
2. ตารางภาระงาน
AutoID, TaskID, StaffID, Status (finished), WDate, ...
3. ตารางงาน
TaskID, TaskDescrpt, ...
ให้สร้างความสัมพันธ์แบบ One-To-Manay ดังนี้
ตารางพนักงาน (One Side) -----> ตารางภาระงาน (Many Side) <------ ตารางงาน (One Side)
Staff ID StaffID TaskID
TaskID
ไม่ทราบว่าวางแผนส่วนนี้ไว้อย่างไรบ้างครับ
ลองออกแบบตารางต่างๆ ในขึ้นแรกเสียก่อนครับ
7 @R00606
คุณวิชิตครับ ขอให้เริ่มหัวข้อของคุณใหม่ โดยการคลิกที่ปุ่ม ฝากข้อความใหม่ นะครับ กระทู้ของคุณจะได้ไม่ปนกับของคนอื่นครับ
ส่วนคุณ surapon ไม่ทราบว่ามีตัวย่างตัวที่พูดถึงว่ามีปัญหาหรือเปล่าครับ ให้ zip แล้วส่งมาให้ผมดู โดยอธิบายปัญหาและความต้องการให้ชัดเจนนะครับ ผมจะได้ดูได้ง่ายยิ่งขึ้น
Time: 0.1184s