2013-07-23 102 views
0

我都記錄在Excel中的宏,在不同的順序發生某些細胞的電子表格,並將它們複製到頁面的一個頁面的數據在VBA循環。它單獨做每個單元,並且很長。創建一個Excel宏

但是它只對第一頁中的一行數據執行此操作。

如何使這個單一的宏成一個循環,複製相同的數據,但是從每一行到新的頁面?

我沒有包括宏代碼,因爲它是很長,但是如果需要的話可以這樣做。

感謝

+4

請包括您的代碼 –

回答

0

你可以忽略你的代碼,只顯示相關的部分,或代碼樣機宏來解決,並僅您的問題。

讓我們想象一下你的問題作爲一個子,在這種情況下是高度省略:

Sub OmittedSub() 
    ' Do stuff 
End Sub 

您可以創建新的子叫了很多次,這個新的子會你會,而不是調用一個:

Sub LoopOmittedSubs() 
    Dim i As Integer 

    ' Loop to call your macro routine multiple times 
    For i = 1 To 100 
     OmittedSub 
    Next 
End Sub 

如果你需要傳遞一個值,例如宏不知道影響哪一行,你需要告訴它,你可以通過循環變量是這樣的:

Sub OmittedSub(iRow As Integer) 
    ' Do stuff for row number iRow 
End Sub 

Sub LoopOmittedSubs() 
    Dim i As Integer 

    ' Loop to call your macro routine multiple times 
    For i = 1 To 100 
     OmittedSub i 
    Next 
End Sub 

這個答案是VBA的基礎知識。我不知道如何回答你的問題不知道你已經盡力了,你多麼努力,更好地等等......

0

Raybarg提供你這個問題基本解決。我不確定「某些細胞」是什麼意思,這是否意味着它們具有一定的價值,或者像A5,A10,A15那樣有規律的秩序?

在這兩種情況下,你可能會使用Raybarg的代碼和條件語句。

你應該包括你的代碼,它給你真正想要的實現和地方是錯誤的提示。