向选项卡添加日期

问题描述 投票:0回答:1

下面的宏/代码在新的工作表中创建数据透视表,该标签的命名基于其过滤条件。例如,我有3个品牌,它将为3个品牌创建标签,并根据品牌(品牌1,品牌2和品牌3)命名标签。我正在尝试更新编码,以便通过从工作表中的特定单元格引用日期来在名称中包含日期,因为我每个月都必须更新日期。因此,如果我在A1单元格中有6.15.20,我想告诉宏引用A1(带有日期)来命名标签“ Brand 1 6.15.20”,现在它仅将标签命名为Brand 1。有办法吗?

假设需要在代码的这一区域进行更新

对于pf.PivotItems中的每个pi

strPI = Replace(Left(pi.Name,31),“ /”,“”)

下面是我的整个编码。

感谢任何帮助!


On Error GoTo errHandler
Application.DisplayAlerts = False

Dim ws As Worksheet
Dim pt As PivotTable
Dim pf As PivotField
Dim pi As PivotItem
Dim strPF As String
Dim strPI As String

Set ws = Sheets("Invoice PVTTBL Template")
Set pt = ws.PivotTables(1)
Set pf = pt.PageFields(1)
strPF = pf.Name

For Each pi In pf.PivotItems
  strPI = Replace(Left(pi.Name, 31), "/", " ")
  On Error Resume Next
    Sheets(strPI).Delete
  On Error GoTo 0
  ws.Copy After:=Sheets(Sheets.Count)
  With ActiveSheet
    .Name = strPI
    With .PivotTables(1).PivotFields(strPF)
      .PivotItems(pi.Name).Visible = True
      .CurrentPage = pi.Name
    End With
  End With

Next pi

ws.Activate

MsgBox "Invoices Created"

exitHandler:
  Application.DisplayAlerts = True
  Exit Sub
errHandler:
  MsgBox "Could not create sheets"
  Resume exitHandler

End Sub
excel vba
1个回答
0
投票

想通了:希望这对以后的人有所帮助,以便将单元格引用到我在下面使用的现有公式。这是基于我上面的公式。

strPI = Replace(左(pi.Name&“”&ws.Range(“ O1”),31),“ /”,“”)

所以现在代替选项卡上的名称为“ Brand 1”,它会显示一个日期,这是由于我引用了具有所需日期的单元格。标签上的新名称如下所示:“品牌1 6.15.20”

© www.soinside.com 2019 - 2024. All rights reserved.