首页 > 解决方案 > 在VBA中将字符串插入公式

问题描述

我正在创建一段 VBa 代码,它将在我的工作表中插入一个特定的公式。由于该文件位于共享保管箱中,因此我想使用字符串 thisworkbook.path 创建一个文件路径。虽然我无法在我的公式中使用这个字符串。

需要粘贴的公式是一个 SUMIF 公式,它从我的工作簿中的另一张表中获取数据,尽管当我尝试插入公式时它一直要求文件目录

Sub Monthly_OTB_update()
'
Dim I As Long
Dim J As Integer
Dim H As Integer
Dim A As String
Dim B As String
Dim C As String
Dim D As String
Dim E As String


A = ThisWorkbook.Path
B = "2019"
C = "Monthly OTB 2019"
D = A & B
E = A & C



Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Application.DisplayStatusBar = False

    'Go to Last used date and select the next cell
    Sheets("Monthly OTB 2019").Select
    Range("E2").Select
    Selection.End(xlToRight).Select
    ActiveCell.Offset(0, 1).Select

    For I = 1 To 12

    'Fill selection with date and move 1 down
    ActiveCell.FormulaR1C1 = "=TODAY()"
    ActiveCell.Offset(1, 0).Select

        'insert formula to retrieve data
        ActiveCell.FormulaR1C1 = _
           "=SUMIFS("" & D & ""!R4C5:R100000C5,OTB!R4C2:R100000C5,"" & E         & ""!RC1)"

我没有包含完整的代码,因为其余的只是重复此处代码中发生的事情。和循环结束 & Sub。

弹出的错误是应用程序或对象定义的错误。

标签: excelvba

解决方案


当您使用书名或此文件夹内的任何其他路径加入文件夹路径时 - 您需要Application.PathSeparator用作它们之间的中间字符串。我建议您MsgBox(D)在将公式分配给单元格之前使用,以便检查您的路径是否正确。


推荐阅读