Excel 运行计算、复制和粘贴值VBA

Excel 运行计算、复制和粘贴值VBA,excel,vba,Excel,Vba,我正在尝试编写此宏以刷新工作表(计算器) 它会刷新,所以它会获取一些值,复制它们,然后将它们粘贴到另一张表中 有两张工作表 计算器 迭代 这是我的代码: Sub Iterate() Dim i As Integer For i = 1 To 10000 Worksheets("Calculator").Calculate Range(AC6,AC16).Copy Range(AT10,AT11).Copy Worksheets("Ite

我正在尝试编写此宏以刷新工作表(计算器)

它会刷新,所以它会获取一些值,复制它们,然后将它们粘贴到另一张表中

有两张工作表

  • 计算器

  • 迭代

  • 这是我的代码:

    Sub Iterate()
    
      Dim i As Integer
    
      For i = 1 To 10000
          Worksheets("Calculator").Calculate
          Range(AC6,AC16).Copy
          Range(AT10,AT11).Copy
          Worksheets("Iterations").PasteSpecial Paste:=xlPasteValues
      Next
    
         End Sub
    
    我运行这个时出错了

       Compile Error 
    Expected: Identifier
    
    我对VBA没有太多的经验

    计算器工作表在每次刷新时都会进行不同的计算,计算结果将汇总到范围内的单元格。 我想复制这些单元格,并将它们粘贴到“迭代”工作表中,一个挨着另一个。 最终会产生10000份的结果是什么

    关于从哪里着手解决这个问题,有什么建议吗

    你的循环也没有尽头。 例如,您应该这样定义循环:

    For i=1 to 100000
    
    'do something
    
    Next
    
    如果要计算工作表计算器,请使用:

    Worksheets("Calculator").Calculate
    

    我不确定要复制什么(以及放在哪里)。

    在代码开头使用“sub yourSubName()”。单元格(1,1)应该是数字,使用范围(“AC6:AC16”),计算应该是表(1)。计算。如前所述,您的
    单元格()
    引用也被错误地给出-虽然不是您发布的错误,但当您找到它时,它会抛出一个错误。
    单元格(#,#)
    范围(“A1”)
    是典型的格式我如何指定要粘贴到哪里?还有,为什么要这样做10000次?每次都会覆盖粘贴的值。代码有很多问题,但你能解释更多吗?你想在迭代中粘贴更改目标位置吗我想复制、范围(AC6、AC16)和范围(AT10、AT11)并将它们放入工作表(“迭代”)我根据您的建议编辑了第一个问题上的代码OK。目标范围是相同的,但在迭代工作表中?如果是,则不需要使用循环,因为您将写入10000倍相同的值:)目标不必在迭代工作表中相同,基本上可以从A1开始,然后从10000开始。I我不完全理解你所说的写10000这个值。我想我没有完全解释一下一般情况下会发生什么。但是当工作表刷新时,excel会根据N个随机数进行计算,这些随机数加起来就是这些单元格的总和。这就是为什么我想要10000个,所以我有10,0个00可能的选项更改为什么?