ใหม่สำหรับ VBA (และการเขียนโค้ดจริงๆ) และได้เริ่มต้นแล้ววันนี้ ดังนั้นฉันสามารถจินตนาการได้ว่าปัญหานี้มีการแก้ไขที่ค่อนข้างง่าย
ฉันต้องการสร้างเครื่องบันทึกการแก้ไขสำหรับหลายวิชา และโค้ดสำหรับ 1 วิชาก็ทำงานได้ดีมาก นี่คือสิ่งที่ฉันได้รับ (ผมใส่ภาพไม่ได้ครับ เลยเอาลิงค์มาครับ)
http://i.imgur.com/Up2Pf8r.png
นี่คือโค้ดของปุ่มคำสั่ง (notr ย่อมาจากจำนวนครั้งที่แก้ไข)
Private Sub revision_Click()
Dim check As String
If revision.Caption = "StartRevision" Then
revision.Caption = "EndRevision"
Else
revision.Caption = "StartRevision"
End If
Dim column As Integer
Dim notr As Integer
notr = Cells(*2*, 5).Value
column = notr + 6
If revision.Caption = "StartRevision" Then
Cells(*3*, column).Value = Now
Cells(*3*, column).NumberFormat = "dd/mm/yyyy hh:mm:ss"
Cells(*4*, column).Value = Abs((Cells(2, column)) - (Cells(3, column)))
Cells(*4*, column).NumberFormat = "hh:mm:ss"
Else
Cells(*2*, column).Value = Now
Cells(*2*, column).NumberFormat = "dd/mm/yyyy hh:mm:ss"
End If
If revision.Caption = "StartRevision" Then
notr = notr + 1
Cells(*2*, 5).Value = notr
End If
End Sub
ตอนนี้ฉันต้องการคัดลอกและวางปุ่มคำสั่งนั้นสำหรับวิชาอื่นๆ ตอนนี้ฉันทำได้ง่ายๆ โดยเปลี่ยนตัวเลขที่ฉันติดป้ายกำกับด้วย * ทุกครั้งสำหรับแต่ละปุ่ม แต่ฉันสงสัยว่ามีวิธีการทำเช่นนี้หรือไม่ แต่สร้างตัวแปร * ตัวเลขเหล่านั้นแล้วใช้รหัสนั้นเพียงครั้งเดียวสำหรับแต่ละปุ่ม subject เพียงแค่ต้องเปลี่ยนตัวแปรเหล่านั้นแทนที่จะต้องคัดลอกและวางโค้ดทั้งหมดหลายครั้ง
ฉันเข้าใจว่าฉันไม่ชัดเจนนัก ขออภัย :( แต่ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชมมาก
ขอบคุณ.