
在Excel中通过 VB 代码,将工作表Sheet1的 H 列内容复制到另一个工作表Sheet2的 A 列内容末尾,下面实现 VB 代码示例:
Sub CopyHToA()
' 定义源工作表和目标工作表
Dim sourceSheet As Worksheet
Dim targetSheet As Worksheet
Set sourceSheet = ThisWorkbook.Worksheets("Sheet1")
Set targetSheet = ThisWorkbook.Worksheets("Sheet2")
' 获取H列的最后一行
Dim lastRow As Integer
lastRow = sourceSheet.Cells(Rows.Count, "H").End(xlUp).Row
' 复制H列的值到A列的末尾
Dim i As Integer
For i = 1 To lastRow
targetSheet.Range("A" & Rows.Count).End(xlUp).Offset(1, 0).Value = sourceSheet.Range("H" & i).Value
Next i
End Sub
如果你的表名不一样,请将代码中的 "源工作表 Sheet1" 和 "目标工作表 Sheet2" 替换为你实际使用的工作表名称。
优化以上代码,修改为 不包含 H列 第一行的内容:
修改后的代码,将从 H 列的第二行开始复制:
Sub CopyHToA()
' 定义源工作表和目标工作表
Dim sourceSheet As Worksheet
Dim targetSheet As Worksheet
Set sourceSheet = ThisWorkbook.Worksheets("Sheet1")
Set targetSheet = ThisWorkbook.Worksheets("Sheet2")
' 获取H列的最后一行
Dim lastRow As Integer
lastRow = sourceSheet.Cells(Rows.Count, "H").End(xlUp).Row
' 复制H列的值到A列的末尾
Dim i As Integer
For i = 2 To lastRow ' 从第二行开始复制
targetSheet.Range("A" & Rows.Count).End(xlUp).Offset(1, 0).Value = sourceSheet.Range("H" & i).Value
Next i
End Sub
代码中的主要更改是 For 循环的起始值从 1 改为 2,这将从 H 列的第二行开始复制。