2016-06-28 7 views
1

Ich versuche, ein Makro zu schreiben, um eine Sales-Pipeline-Tabelle zu automatisieren. Ich habe derzeit eine Dimension als das heutige Datum, so dass es nicht die gleichen 2 Tage in Folge sein wird.Referenzieren Benannte Arbeitsblatt und Zelle VBA

Ich möchte eine Formel im Makro, um den Blattnamen jeden Tag zum heutigen Datum zu ändern, aber ich kann es im Moment nicht tun.

Sub GetPivotData() 

    Dim sToday As String 
    sToday = Format(Date, "dd.mm.yy") 

    Range("C2").Select 
    ActiveCell.FormulaR1C1 = _ 
    "=IFERROR(GETPIVOTDATA(""Opportunity"",'28.06.16'!R34C28,""Status"",""Open"",""Probability"",20,""Sales Territory"",R[2]C[6]),0)" 

    Range("C3").Select 

    End Sub 

Ich will den '28 .06.16' Verweis auf ‚ändern können sToday‘ Dimension, wie es jeden Tag ändert, aber es ist erlaubt es nicht. Kannst du bitte helfen.

+0

"... es es erlaubt es nicht.".. Haben Sie irgendwo einen Fehler? – BruceWayne

+1

'" = IFERROR (GETPIVOTDATA ("" Opportunity "", "" & sToday "! R34C28," Status "," Offen "," Wahrscheinlichkeit ", 20," Verkaufsgebiet ") , R [2] C [6]), 0) " –

Antwort

2

Verketten Sie die Variable in die Formelzeichenfolge.

Option Explicit 

Sub GetPivotData() 

    Dim sToday As String 
    sToday = Format(Date, "dd.mm.yy") 

    With Worksheets("Sheet1") '<~~ you should know what worksheet you are on! 
     .Range("C2").FormulaR1C1 = _ 
      "=IFERROR(GETPIVOTDATA(""Opportunity"",'" & sToday & "'!R34C28,""Status"",""Open"",""Probability"",20,""Sales Territory"",R[2]C[6]),0)" 

    End With 

End Sub 
0

versuchen, dieses:

Application.Workbooks ("YourWorkbook") Blätter ("YourSheetname") name = sToday

Verwandte Themen