我一直在這個網站上尋找一段時間來回答這個問題,但沒有運氣。我有這個代碼,我通過一行數字循環,並根據當時單元格中的數字,確定我複製並粘貼到表單中的內容。我正在使用列,因爲這是我可以使代碼動態的唯一方法。它可以工作,但是當我粘貼時,我想粘貼在比現在粘貼的位置更低的單元格中。我想知道列是否有指定列和粘貼數據的位置。使用列函數 - Excel VBA
代碼:
Dim sh As Worksheet
Dim rw As Range
Dim row As Range
Dim cell As Range
Dim RowCount As Integer
Set rw = Range("A5:CG5")
Set sh = ActiveSheet
For Each row In rw.Rows
For Each cell In row.Cells
Select Case cell.Value
Case "2"
ThisWorkbook.Worksheets("Sheet1").Range("E27:E51").Copy Destination:=Sheets("Sheet2").Columns(4)
End Select
Next cell
Next row
你可以使用.Cells(https://msdn.microsoft.com/en-us/vba/ Excel的VBA /物品/範圍細胞屬性-Excel文件)。例如:'.Cells(row,column)=「Something或/」&Variable(可能是另一個.Cells)'用'i = i + 1'或一個循環來使用For循環For I = first_column To last_column ' – danieltakeshi
@danieltakeshi我可以這樣做嗎? ThisWorkbook.Worksheets(「Sheet1」)。Range(「E27:E51」)。Copy Range(Cells(i,5),Cells(i,5) – unclass123
你想複製這個範圍到什麼單元格和工作表?這樣做,下面是一個例子:https://stackoverflow.com/questions/42420280/copy-and-paste-dynamic-ranges-to-new-sheet-in-excel-with-vba和一個位更高級https://stackoverflow.com/questions/12138624/vba-copy-paste-with-dynamic-range – danieltakeshi