ช่วยแนะนำข้อผิดพลาดของ code ที่ผมพึ่งหัดเขียนด้วยครับ [vba]
Posted: Tue Aug 07, 2018 9:43 pm
สวัสดีครับ
1.รบกวนช่วยตรวจสอบและแนะนำการเขียนcodeที่ผมหัดเขียนให้ด้วยครับ
2.ช่วยแนะนำวิธีการสร้างรายงานประจำเดือนจากข้อมูลใน sheet 1 ให้แสดงรายงานใน sheet 3 ตามแบบฟอร์มแยกเป็นคัน
ปล.ยังมีคำถามอีกสองสามข้อครับ
1.รบกวนช่วยตรวจสอบและแนะนำการเขียนcodeที่ผมหัดเขียนให้ด้วยครับ
2.ช่วยแนะนำวิธีการสร้างรายงานประจำเดือนจากข้อมูลใน sheet 1 ให้แสดงรายงานใน sheet 3 ตามแบบฟอร์มแยกเป็นคัน
Code: Select all
Private Sub CommandButton1_Click()
On Error Resume Next
Me.TextBox8 = (IIf(Me.TextBox7 = "", 0, Me.TextBox7) + 0) / (IIf(Me.TextBox6 = "", 0, Me.TextBox6) + 0)
Me.TextBox9 = (IIf(Me.TextBox5 = "", 0, Me.TextBox5) + 0) - (IIf(Me.TextBox4 = "", 0, Me.TextBox4) + 0)
'แจ้งเตือน
emptyRow = WorksheetFunction.CountA(Range("A:A")) + 1
If Application.CountIf(Range("B:B"), TextBox2.Text) > 0 Then
MsgBox "กะบอกแล้วว่ามันช่ำกัน"
Exit Sub
End If
'นำไปแสดง
Cells(emptyRow, 1).Value = TextBox1.Value
Cells(emptyRow, 2).Value = TextBox2.Value
Cells(emptyRow, 3).Value = ComboBox1.Value
Cells(emptyRow, 4).Value = TextBox4.Value
Cells(emptyRow, 5).Value = TextBox5.Value
Cells(emptyRow, 7).Value = TextBox6.Value
Cells(emptyRow, 8).Value = TextBox7.Value
Cells(emptyRow, 10).Value = ComboBox2.Value
Cells(emptyRow, 9).Value = TextBox8.Value
Cells(emptyRow, 6).Value = TextBox9.Value
'ลบในForm
TextBox1.Text = ""
TextBox2.Text = ""
ComboBox1.Text = ""
TextBox4.Text = ""
TextBox5.Text = ""
TextBox6.Text = ""
TextBox7.Text = ""
ComboBox2.Text = ""
TextBox8.Text = "0"
TextBox9.Text = "0"
End Sub
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
'วันที่
On Error Resume Next
Me.TextBox1 = CDate(Me.TextBox1)
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub TextBox4_Change()
On Error Resume Next
Call getsumoftbs
End Sub
Private Sub TextBox5_Change()
On Error Resume Next
Call getsumoftbs
End Sub
Private Sub TextBox7_Change()
Call getsumoftbs
End Sub
Private Sub TextBox6_Change()
Call getsumoftbs
End Sub
Sub getsumoftbs()
On Error Resume Next
Me.TextBox9 = (IIf(Me.TextBox5 = "", 0, Me.TextBox5) + 0) - (IIf(Me.TextBox4 = "", 0, Me.TextBox4) + 0)
Me.TextBox8 = (IIf(Me.TextBox7 = "", 0, Me.TextBox7) + 0) / (IIf(Me.TextBox6 = "", 0, Me.TextBox6) + 0)
Me.TextBox8 = Format(TextBox8, "0.00")
End Sub
Private Sub UserForm_Initialize()
Dim a As Integer
For a = 1 To 20
UserForm1.ComboBox1.AddItem Sheets(2).Cells(a, 1).Value
UserForm1.ComboBox2.AddItem Sheets(2).Cells(a, 3).Value
Next a
'ลงข้อมูลโชว์ในฟอร์ม
TextBox1.Value = ""
TextBox2.Value = ""
ComboBox1.Value = ""
TextBox4.Value = ""
TextBox5.Value = ""
TextBox6.Value = ""
TextBox7.Value = ""
ComboBox2.Value = ""
TextBox8.Value = "0"
TextBox9.Value = "0"
End Sub
ปล.ยังมีคำถามอีกสองสามข้อครับ