2016-11-30 88 views
0

我有大量的數據需要處理才能進行數據分析。 目前,數據爲this form,我的目標是使用VBA生成this使用VBA擴展日期範圍和相關數據

任何想法?

+0

嗨,邁克爾S,你​​能告訴我們你到目前爲止在VBA中試過什麼或者你有什麼問題嗎? – Clusks

+0

爲什麼不使用過濾器。突出顯示第一行,然後在Excel Data選項卡中選擇篩選器 –

回答

0

試試這個。應該爲你的例子...

Sub Dates() 

Dim LastRow As Long 
Dim RowIns As Integer 

LastRow = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row 

For i = 2 To LastRow 

Cont: 

    If Cells(i, 1).Value = "" Then 

     GoTo Cont2 

    End If 

    RowIns = Cells(i, 4).Value - Cells(i, 3).Value 

    If RowIns <= 0 Then 

     i = i + 1 

     GoTo Cont 

    End If 

    Rows(i + 1 & ":" & RowIns + i).Insert Shift:=xlDown 

    Range("C" & i).Select 
    Selection.AutoFill Destination:=Range("C" & i & ":C" & RowIns + i), Type:=xlFillDefault 

    Range("A" & i & ":B" & i).Select 
    Selection.AutoFill Destination:=Range("A" & i & ":B" & RowIns + i), Type:=xlFillCopy 

    LastRow = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row 

    i = i + RowIns + 1 

    GoTo Cont 

Next 

Cont2: 

Columns(4).EntireColumn.Delete 

End Sub 
+0

非常感謝!我會在早上第一時間嘗試這個。最好的祝願。 –