2014-10-28 75 views
0

我已經1片命名等級2.我需要從列C的行中的數據2〜6的B列的行2至6Excel公式從另一片跳過3行

複製到片材的指定值,然後將數據複製

通過14從片級複製數據2列C的行10分成片值塔B的行7至11

和不斷重複此對於剩餘的年複製的數據,在第2級跳躍3排然後再次複印。

基本佈局 行2至6包含數據週五,週一,週二,週三,週四 第7行是總的一週行8周的平均上午。

+0

那麼這有什麼問題?表格(「SheetName」)。範圍(「YourRange」)。複製[目的地] - 您需要的其餘代碼循環瀏覽數據並更改複製/目標範圍。你寫過什麼了嗎? – user1274820 2014-10-28 16:48:18

回答

0

您可以使用For ... Next命令的Step參數來實現副本源中的交錯,並且一個小數學計算將計算正確的目標單元。

Sub xfer_on_stagger() 
    Dim r As Long 
    With Sheets("Level 2") 
     For r = 2 To .Cells(Rows.Count, 3).End(xlUp).Row Step 8 
      .Cells(r, 3).Resize(5, 1).Copy _ 
       Destination:=Sheets("Values").Cells(Int(r/8) * 5 + 2, 2) 
     Next r 
    End With 
End Sub 

目的地行可能更加準確地寫成Int((r - 2)/8) * 5 + 2但是由於Step是8和不會有在中間值,你可以刪除減去2

0

這裏你需要的是VBA代碼,而不是一個公式。

Sheets("Sheet1").Range("C2:C10").Copy [Destination]

或者,如果範圍是動態的,然後使用LASTROW找出實際範圍和選擇它,然後將所選項目複製到所需片和範圍。

Shortest code to find lastrow in Excel VBA