ใช้ if แต่พอค่ามัน false มันก็ยัง run แก้ยังไงครับ รบกวนด้วย
Posted: Thu Jul 20, 2017 4:15 pm
คือผมต้องการเพิ่มช่อง 20 ช่องถัดจากข้อมูลที่มีอยู่ ในคอลัม B:H แต่มีเงื่อนไขว่า ให้นับค่าที่ คอลัม A ถ้าน้อยกว่า 20 ถึงค่อยทำ แต่ผมกดรันมันก็รันตลอดเลย ทั้งๆที่ถ้านับ มันก็เกิน 20 ตั้งแต่ครั้งแรกแล้ว เพิ่งเริ่มหัดเขียน รบกวนด้วยครับ
Sub Customers()
'
' Macro2 Macro
Dim i As Integer
i = Excel.WorksheetFunction.CountA(Range("B2").End(xlDown).Offset(1, -1), Range("B65536").End(xlUp).Offset(0, -1))
If (i < 20) Then
ActiveSheet.Range("B2").End(xlDown).Offset(1, 0).Select
Selection.Resize(Selection.Rows.Count + 19, Selection.Columns.Count + 6).Select
Selection.Insert Shift:=xlDown, CopyOrigin:=FormatFromLeftOrAbove
Range("B510:H511").Copy
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
Else: MsgBox "Cannot Insert Rows Anymore"
End If
ActiveSheet.Range("B2").End(xlDown).Offset(1, 0).Select
End Sub
Sub Customers()
'
' Macro2 Macro
Dim i As Integer
i = Excel.WorksheetFunction.CountA(Range("B2").End(xlDown).Offset(1, -1), Range("B65536").End(xlUp).Offset(0, -1))
If (i < 20) Then
ActiveSheet.Range("B2").End(xlDown).Offset(1, 0).Select
Selection.Resize(Selection.Rows.Count + 19, Selection.Columns.Count + 6).Select
Selection.Insert Shift:=xlDown, CopyOrigin:=FormatFromLeftOrAbove
Range("B510:H511").Copy
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
Else: MsgBox "Cannot Insert Rows Anymore"
End If
ActiveSheet.Range("B2").End(xlDown).Offset(1, 0).Select
End Sub