当前位置: 首页 > 知识库问答 >
问题:

VBA复制公式到其他工作表,不要移动“查看”

况明贤
2023-03-14

我在用一个VBA例程复制

源表:命名范围(多个“选择”)

下面是VBA代码部分。

            ' dataset for weeknr found: save data to dataset
        Dim dataRange As Range, dataField As Range

        ' for each cell in input data range: save value in dataset
        Set dataRange = Range("rng_operationeel_input_data")
        For Each dataField In dataRange
            datasetReferenceCell.Offset(dataField.Row, dataField.Column).Value = dataField.Value
        Next dataField

        ' !!! Following are only saved, not loaded, as it are formula based fields

        ' for each cell in formula range: paste formula
        Set dataRange = Range("rng_operationeel_formules")

        For Each dataField In dataRange
            dataField.Copy
            datasetReferenceCell.Offset(dataField.Row, dataField.Column).PasteSpecial (xlPasteFormulas)
            'datasetReferenceCell.Offset(dataField.Row, dataField.Column).Formula = dataField.Formula 'not working, as relative formulas are required
        Next dataField

共有1个答案

田骁
2023-03-14

解决这个问题的唯一方法是重置活动表:

Public Sub routine()
    Dim activeWs As Worksheet
    Set activeWs = ThisWorkbook.ActiveSheet

    .. code including copy & PasteSpecial ...

    activeWs.Activate
End Sub
 类似资料:
  • GraphRequest请求=GraphRequest。newGraphPathRequest(AccessToken.getCurrentAccessToken(),“/我/朋友”,new GraphRequest。Callback(){@Override public void onCompleted(GraphResponse response){//在此处插入代码 } 这是我的男拳。xml

  • 我正在处理一个非常大的工作表,这个工作表是从数据库中创建的,有40列3000多行,我在Php Excel中设置了它的标题 现在我已经创建了一个新的工作表,我可以在其中设置不同单元格的值。我需要使用countifs公式来显示从 工作表到 工作表的结果 null 提示了一个文件,但当我在记事本中打开该文件时,它显示了以下文本http://pastie.org/5584430

  • 我使用这段代码将工作簿中的每一张工作表复制到一个新的工作簿中,它工作得很好,但它颠倒了工作表的顺序,是否有任何办法阻止它这样做? 我正在复制所有的工作表,这样我就可以将它保存为不同的文件扩展名,这是我发现唯一有效的方法。

  • Postgres 9.1数据库包含表yksus1。。公共模式中的ykssu9。pgAdmin在下面的代码中显示了这些定义。如何将这些表移动到firma1模式? firma1模式中的其他表具有对这些表的外键引用。对这些表的外键引用仅来自firma1模式中的表。 其中一些表包含数据。如果表移动到firma1模式,外键引用也应更新到firma1。YKSUS表格。无法更改表结构。 看起来主键序列已经在fi

  • 我正试图将所有工作表(7张)从workbook1(wb1)复制到WB2。wb1包含命令按钮,但我不希望它们出现在我的新工作簿中。我正在使用循环将单个工作表从一个工作簿复制到另一个工作簿。但是复制到第二张时出错了。我使用的代码如下:- 循环第一次成功运行,但对于i=2,代码给出错误

  • 这里是VBA新手。 谢谢你的教育!