ผมเองไม่ค่อยมีความรู้เรื่อง vba เลย แต่กำลังศึกษาค้นคว้าอยู่ครับ

ปกติจะต้องเขียน VBA มาก่อน ตามกฏครับ แต่ที่มตอบไปนั้น เพื่อเป็นแนวทางต่อไป
1. เราสามารถตัดวินาทีออกได้หรือไม่ครับ หรือมีความจำเป็นต้องคงเอาไว้เสมอ เพราะในทางปฏิบัติไม่ได้ให้ความสำคัญกับหน่วยวินาทีแต่อย่างใด
คงไว้จะดีกว่าครับ เนื่องจากรูปแบบเวลา จะต้องมีองค์ประกอบที่สมบูรณ์ ส่วนการให้แสดงค่าเป็นแบบไหน เราก็กำหนดรูปแบบเซลล์เอาได้ครับ เช่น เป็น "hh:mm"
2. ตอนนี้ผมคลิ๊กไปตรงตำแหน่งไหนก็จะขึ้น code VBA มาให้ตลอดทุกเซลล์ ไม่ทราบว่าจะกำหนดเฉพาะจุดที่ต้องขึ้นได้หรือไม่ครับ
ปรับโค๊ดใน Sheet1 ดังนี้
Code: Select all
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Range("B6:C20"), Target) Is Nothing Then
input_time.Show
End If
If Not Intersect(Range("E6:F20"), Target) Is Nothing Then
input_time.Show
End If
If Not Intersect(Range("I6:J20"), Target) Is Nothing Then
input_time.Show
End If
End Sub
3. หากผมเปลี่ยนเงื่อนไขการปัดเศษนาที ให้คิดเฉพาะตั้งแต่ 55 นาทีขึ้นไปให้คิดเป็น 1 ชม. เงื่อนไขเดียว ไม่ทราบว่าต้องแก้สูตรในเซลล์ใดครับ
แก้ไขตัวเลขเวลาในสูตรจาก 00:50:00 เป็น 00:55:00 ในคอลัมน์ L, Q, T
4. หากทำเป็น VBA เท่ากับว่าผมต้องใช้ 1 ไฟล์ ต่อ 1 ลูกจ้างใช่ไหมครับ ทีแรกคิดว่าจะใช้การ copy แล้ววางลงเป็นชีท ๆ ไป แต่ถ้าเป็น 1 ไฟล์ต่อ 1 คน ก็ไม่มีปัญหาแต่อย่างใดครับ
แล้วแต่ครับ แต่หลักการนั้น ควรแยกชีทกัน มีชีทเก็บข้อมูลดิบ (database) มีชีทบันทึกข้อมูลเข้า (Input) และมีชีทแสดงรายงาน (Report) ครับ
You do not have the required permissions to view the files attached to this post.