循环复制空白值时的range.values

时间:2019-04-25 17:46:23

标签: excel vba

因此,我创建了一个费率计算器,允许用户输入与费率者有关的问题的答案(“ r_user_interface”)。

这些答案都链接到一个表,该表具有各种计算结果,这些结果给出了称为“ v_premium”的单元格中的最终结果

问题是,我现在想设置默认选项,以便比较所有邮政编码的费率,所以我要做的是创建一个名为“ r_default_choices”的转置版本的“ r_user_interface”。

然后我创建了一个表,其中包含所有1106个邮政编码以及与用户界面中所提问题有关的标题。

宏然后将“ r_default_choices”复制到包含邮政编码的表的范围内。

我现在想遍历表中的每一行,其中包含邮政编码和默认选项,并将其粘贴到“ r_user_interface”中以获取其各自的“ v_premium”值,并将其粘贴到该行的末尾。

当我第一次运行以下代码时,尽管运行缓慢。但是,现在它不会复制v_premium值。

Sub cop_paste_values()
Dim rng As Range
Dim user_rng As Range
Dim row As Range


On Error Resume Next

Worksheets("Batch rater").Range("r_default_choices").Copy
Worksheets("Batch rater").Range("t_default_choices").PasteSpecial Paste:=xlPasteValues
Set user_rng = Worksheets("User Interface").Range("r_user_interface")
Set rng = Range("t_default_choices_with_zip")

i = 23

While i <= 1106
    For Each row In rng.Rows
        row.Copy
        user_rng.PasteSpecial Paste:=xlPasteValues, Transpose:=True
        Worksheets("Batch rater").cell(i, 43).Value = Worksheets("Rater").Range("v_premium").Value
        i = i + 1
    Next
Wend

Application.CutCopyMode = False
End Sub

有想法吗?

0 个答案:

没有答案