Pages

07 January, 2024

Filtering Pivot Field using VBScript

I'm trying filter the field "Ödeme_Tarihi" by yesterday's date. Standart Autofilter didn't work.


enter image description here


I tried below code but it gives that error;
enter image description here


Code;
Dim oExcel
Dim myPivotField
Dim PvtItm

Function CnvTr(str)
str = Replace(str, "İ", ChrW(304))
str = Replace(str, "ı", ChrW(305))
str = Replace(str, "Ç", ChrW(199))
str = Replace(str, "ç", ChrW(231))
str = Replace(str, "Ğ", ChrW(286))
str = Replace(str, "ğ", ChrW(287))
str = Replace(str, "Ö", ChrW(214))
str = Replace(str, "ö", ChrW(246))
str = Replace(str, "Ş", ChrW(350))
str = Replace(str, "ş", ChrW(351))
str = Replace(str, "Ü", ChrW(220))
str = Replace(str, "ü", ChrW(252))
CnvTr = str
End Function

Set oExcel = CreateObject("Excel.Application")

oExcel.Visible = True
oExcel.DisplayAlerts = False
oExcel.AskToUpdateLinks = False
oExcel.AlertBeforeOverwriting = False

Set oWorkbook = oExcel.Workbooks.Open("C:\\RobustaDocs\\OdemeListesi.xlsx")
Set myPivotField = oWorkbook.WorkSheets(2).PivotTables("PivotTable1").PivotFields(CnvTr("\[Workbook\].\[Ödeme_Tarihi\]"))

oWorkbook.RefreshAll
myPivotField.ClearAllFilters
myPivotField.VisibleItemsList = Array(CnvTr("\[Workbook\].\[Ödeme_Tarihi\].&\[5.01.2024\]"))

Set myPivotField = Nothing
Set PvtItm = Nothing

No comments:

Post a Comment

Thanks