代码之家  ›  专栏  ›  技术社区  ›  Matt

来自单元格的Excel文件名变量引用

  •  0
  • Matt  · 技术社区  · 8 年前

    我有一个Excel公式 GETPIVOTDATA 从另一个文件透视中获取值。

    公式i引用了4个其他文件中的5个位置,每个月更新一次,并在主文件中汇总。

    我把文件打开了。

    我所面临的问题是,我必须每月手动更新公式中的文件名,以便让他们查看最新的文件。

    我必须手动更新的当前公式:

    =GETPIVOTDATA("Add YTD ",'[FileA P6 2018.xlsm]Monthly report'!$A$5)
    +GETPIVOTDATA("Add YTD ",'[FileA P6 2018.xlsm]Monthly sub report'!$A$39)
    +GETPIVOTDATA("Add YTD ",'[FileB P6 2018.xlsm]Monthly pivot'!$A$3)
    +GETPIVOTDATA("Add YTD ",'[FileC P6 2018.xlsm]Monthly report'!$A$5)
    +GETPIVOTDATA("Add YTD ",'[FileD P6 2018.xlsm]Monthly pivot'!$A$3)
    

    下个月文件名将更改 P6 P7 .

    我有两个单元格具有要在变量中使用的值:

    B4 = 6
    B5 = 2018
    

    我尝试过以下方法,但没有效果:

    =GETPIVOTDATA("Add YTD ",'[FileA P$B$4 $B$5.xlsm]Monthly report'!$A$5)
    +GETPIVOTDATA("Add YTD ",'[FileA P$B$4 $B$5.xlsm]Monthly sub report'!$A$39)
    +GETPIVOTDATA("Add YTD ",'[FileB P$B$4 $B$5.xlsm]Monthly pivot'!$A$3)
    +GETPIVOTDATA("Add YTD ",'[FileC P$B$4 $B$5.xlsm]Monthly report'!$A$5)
    +GETPIVOTDATA("Add YTD ",'[FileD P$B$4 $B$5.xlsm]Monthly pivot'!$A$3)
    
    2 回复  |  直到 8 年前
        1
  •  1
  •   ifo20    8 年前

    =INDIRECT("[FileA"&B4&B5&".xlsm]Sheet1!$E$12")
    

        2
  •  0
  •   Matt    8 年前

    VBA B4 B5

    B4 = P5 2017
    B5 = P6 2018
    

    Sub FileNameUpdate()
        Cells.Replace What:=Range("B4") & ".xlsm", Replacement:=Range("B5") & ".xlsm", _
                      LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, _
                      SearchFormat:=False, ReplaceFormat:=False
    End Sub
    
    推荐文章