2,462
社区成员
发帖
与我相关
我的任务
分享
Option Explicit
Sub 条件分表()
Dim intLastACC As Integer
intLastACC = -1
Dim lngPageStart As Long
lngPageStart = 2
Dim objSheet As Worksheet
Set objSheet = ThisWorkbook.Sheets(1)
Dim i As Long
For i = 2 To objSheet.rows.Count
If objSheet.Cells(i, 3) = "" Then
CopyToNewSheet objSheet, lngPageStart, i - 1
Exit For
End If
Dim intACC As Integer
intACC = objSheet.Cells(i, 3)
If intLastACC <> intACC Then
If intLastACC = 0 And intACC = 1 Then
CopyToNewSheet objSheet, lngPageStart, i - 1
lngPageStart = i
End If
End If
intLastACC = intACC
Next
End Sub
Sub CopyToNewSheet(ByVal objSheet As Worksheet, ByVal lngPageStart As Long, ByVal lngPageEnd As Long)
Dim objSheet2 As Worksheet
Set objSheet2 = ThisWorkbook.Sheets.Add(After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count))
objSheet.Range("A1", "E1").Copy objSheet2.Range("A1")
objSheet.Range("A" & lngPageStart, "E" & lngPageEnd).Copy objSheet2.Range("A2")
End Sub