【发布时间】:2020-03-22 21:50:29
【问题描述】:
所以我有以下 excel 选项卡: Code 1, Code 2, Code 3, LI, 2015, 2016, 2017, 2018, 2019, 2015 年输出等。
对于 2015 年,我在“2015”选项卡中有一个表格,其中有 10 行,列出了 3 个代码及其各自的 % 值。例如
ref name yr code 1 % code 2 % code 3 %
12345 NAME 2015 AB 50% CD 37% EF 13%
78901 NAME 2015 AX 54% OD 30% NG 6%
26572 NAME 2015 AE 60% CD 27% PF 13%
我需要将代码 1 'AB' 和 % '50%' 放入选项卡 Code 1 中的单元格 B5 和 B6 中。对于 B5 和 B6 中的代码 2 和 3 'CS' 和 '37%' 也是如此选项卡代码 2 等。然后这些在单元格 F5:F183 的 LI 选项卡中生成一个模式,然后需要为每个参考复制并粘贴到每个参考的 2015 选项卡的输出中。然后循环每个引用并重复粘贴输出。
到目前为止,我有这个用于复制和粘贴部分:
Sub Copy_and_paste2()
Dim rng2 As Range, cell2 As Range
Dim i As Integer
i = 3
Set rng2 = Worksheets("2015").Range("D10:D21")
For Each cell2 In rng2
Worksheets("Code 1").Range("B5").Value = cell2.Value
Worksheets("2015 output").Range("A" & i & ":AW" & i).Value = Worksheets("LI").Range("F5:F183").Value
i = i + 1
Next cell2
End Sub
此时我只是想让它适用于没有 % 的第一个代码,然后我可以尝试添加后面的代码,但这个也不起作用。有什么建议吗?
【问题讨论】:
-
你能解释一下“这个也不行”吗?我马上可以告诉你,你不能用这一行将整个范围粘贴到一个单元格中:
Worksheets("2015 output").Range("A" & i).Value = Worksheets("LI").Range("F5:F183").Value -
@JvdV 它正在生成我不认识的数字输出,不确定它们来自哪里。我的错误是单个单元格。
-
请用单个单元格代码更新您的问题。
-
@CLR 已更新。请注意,这是我第一次使用 VBA。谢谢
标签: excel vba loops copy paste