gpt4 book ai didi

excel - 公式中的动态列索引名称错误

转载 作者:行者123 更新时间:2023-12-04 11:22:55 24 4
gpt4 key购买 nike

我正在尝试通过使用 Vlookup 填充列来计算从工作表计划到工作表结果的组件数量,具有:

  • Count_col : 是工作表中的总列 Plan
  • Last_col : 是工作表中的总列 Result (在添加列需求之前)

  • 工作表结果


    Material
    零件
    需求 W1
    需求 W2


    ABCD1000
    nc200
    #姓名?
    #姓名?


    图纸计划


    Material
    需求 W1
    需求 W2


    ABCD1000
    1000
    200

        For i = 1 To count_col
    Cells(1, i + last_col).Value = "=Plan!RC[-2]"
    Cells(1, i + last_col).Offset(1, 0).Select
    ActiveCell.FormulaR1C1 = "=VLOOKUP(RC1,Plan!C1:C15,i+1,0)"
    Next i
    但结果是名称错误,我检查了函数的拼写是否正确,不知道如何修复。为什么我的公式中有“@”?
    错误详情
    =VLOOKUP($A2,Plan!$A:$O,@i+1,0)

    最佳答案

    i+1里面 ""表现得像一个字符串而不是一个变量。尝试这个。

    ActiveCell.FormulaR1C1 = "=VLOOKUP(RC1,Plan!C1:C15," & i + 1 & ",0)"
    还要避免使用 .Select .你的代码可以写成
    Cells(1, i + last_col).Offset(1, 0).FormulaR1C1 = _
    "=VLOOKUP(RC1,Plan!C1:C15," & i + 1 & ",0)"
    推荐阅读: How to avoid using Select in Excel VBA
    你也在混音 R1C1A1引用风格。我建议使用其中之一。一个简单的谷歌搜索 R1C1 vs A1 style将解释它们是什么。
    R1C1 , Plan!C1:C15需要写成 Plan!R1C3:R15C3 .所以你的最终代码是
    Cells(1, i + last_col).Offset(1, 0).FormulaR1C1 = _
    "=VLOOKUP(RC1,Plan!R1C3:R15C3," & i + 1 & ",0)"

    关于excel - 公式中的动态列索引名称错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68030246/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com