I run into error at line: Set ReplaceDescriptor = Sheet.createReplaceDescriptor(). It errors "Object does not support this property or method: Sheet.createReplaceDescriptor()"
I can't figure out why. Any help is greatly appriciated.
Code: Select all
'open CSV file
cCSVURL = "csv file path here"
Set oCSVDoc = StarDesktop.loadComponentFromURL(cCSVURL, "_blank", 0, Array(MakePropertyValue("Hidden", True)))
Set objServiceManager = WScript.CreateObject("com.sun.star.ServiceManager")
Set StarDesktop = objServiceManager.createInstance("com.sun.star.frame.Desktop")
Set oComponents = StarDesktop.getComponents()
Set oEnum = oComponents.createEnumeration
Do While oEnum.hasMoreElements
Set ThisComponent = oEnum.nextElement
If ThisComponent.supportsService(" com.sun.star.util.XSearchDescriptor") Then Exit Do
Loop
Set oDoc = ThisComponent
Set Sheet = oDoc.Sheets(0)
Set ReplaceDescriptor = Sheet.createReplaceDescriptor()
ReplaceDescriptor.SearchString = "#N/A"
ReplaceDescriptor.ReplaceString = "0"
Sheet.ReplaceAll(ReplaceDescriptor)
ReplaceDescriptor.SearchString = "#REF!"
ReplaceDescriptor.ReplaceString = "0"
Sheet.ReplaceAll(ReplaceDescriptor)
're-save CSV
oCSVDoc.saveAsURL cCSVURL,Array(MakePropertyValue("FilterName", "Text - txt - csv (StarCalc)"),MakePropertyValue("Overwrite", True))
oCSVDoc.Close(True)
StarDesktop.terminate
'objServiceManager.dispose()
Set objServiceManager = Nothing
Set StarDesktop = Nothing