我制作了一个我正在使用的电子表格的简化版本的示例。Sheet2 上有一张三列表。第一列是描述,第二列是值,第三列是我希望将值复制到的位置。我想要一个宏,它将 VALUE 列中的每个值复制并粘贴到 CELL 列中的位置,并对表格中的每一行执行此操作。
此表:
类别 | 价值 | 细胞 |
---|---|---|
高度 | 5 | 工作表1!C5 |
宽度 | 10 | 工作表1!G8 |
长度 | 8 | 工作表1!F15 |
直径 | 1.5 | 表1!K7 |
颜色 | 蓝色的 | 工作表1!F22 |
填充这些单元格:
CELL 列中的每个位置都将位于同一工作簿的不同工作表上。单元格位置将在我正在处理的电子表格上不断变化,并进行不同的更新。
如果 VALUE 列中的其中一行是空白的,我需要它跳过该行,而不是在 CELL 位置放置空白,而是跳过该行并转到下一行。
我希望表格列可以通过名称引用。表格将不断需要更新,所以我可能必须删除一些行或添加一些行,并且不想每次都更新 VBA 代码。
答案1
Sub copy_values()
Dim src As Variant
For Each src In Range("A2:A6")
If src.Offset(0, 1).Value <> "" Then
Range(src.Offset(0, 2).Value).Value = src.Offset(0, 1).Value
End If
Next src
End Sub