我有两张工作表,我想将 Sheet1 中的列一列一列地粘贴到另一列中。我的数据如下:
工作表1: ABCDEFGHIJKLMNOPQRSTU V 12 14 9 20 6 7 21 6 23 12 23 2 4 5 6 8 9 9 0 7 5 12 1 12 14 14 15 6 43 21 65 5 33 工作表2: ABCDEFGHIJKLMNOPQRSTU V 1 2 4 2 23 13 4 6 7 56 45 12 13 13 12 14 13 34 34 65 75 4 11 22 33 44 44 23 24 54 32 23 12
我想将 Sheet1 中的 A 列粘贴到 Sheet2 中的 B 列,同样,我想将 Sheet1 中的 C 列粘贴到 Sheet2 中的 D 列,依此类推。
我在 Sheet1 和 Sheet2 中分别有大约 24 行和 326 列。请指导我有关此类粘贴的自动过程?我使用的是 Excel 2010。
答案1
在 Sheet2 的最左侧插入一列,并在新表 A1 中输入:
=IF(ISODD(COLUMN()),Sheet1!A1,Sheet2!A1)
横向和纵向复制以适合。
答案2
这个宏可以帮你完成
Sub Button4_Click()
Dim col As Integer
col = 65
Dim preCol As Integer
preCol = 64
Do While (True)
If (col > 90) Then
preCol = preCol + 1
col = 65
End If
If (preCol = 64) Then
If (Sheets("Sheet1").Range(Chr(col) & "1") = "") Then
Exit Do
End If
Sheets("Sheet1").Columns(Chr(col) & ":" & Chr(col)).Copy Sheets("Sheet2").Range(Chr(col + 1) & "1")
Else
If (Sheets("Sheet1").Range(Chr(preCol) & Chr(col) & "1") = "") Then
Exit Do
End If
Sheets("Sheet1").Columns(Chr(preCol) & Chr(col) & ":" & Chr(preCol) & Chr(col)).Copy Sheets("Sheet2").Range(Chr(preCol) & Chr(col + 1) & "1")
End If
col = col + 2
Loop
End Sub