General information
Category:
COM/DCOM and OLE Automation
>>I am tring to change the CodeName of an excel WorkSheet.
>>
>>I found this example for VBA on the web, but I am unable to get it to work.
>>
>>Sub RenameCodeName(oWks As Sheet, sNewName As String)
>> oWks.Parent.VBProject.vbComponents(oWks.CodeName).Properties("_CodeName") = sNewName
>>End Sub
>>
>>Example:
>>oExcel = CreateObject("Excel.Application")
>>oExcel.WorkBooks.OPEN("TestFile.xls")
>>*-- File contains a worksheet called "Sheet1"
>>oExcel.sheets("Sheet1").COPY(oExcel.Worksheets("Sheet1"))
>>lcTempCopySheet = "Sheet1 (2)"
>>oExcel.sheets(lcTempCopySheet).NAME = "ReNamedSheet"
>>oExcel.Sheets("ReNamedSheet").SELECT
>>oWks = oExcel.ActiveSheet
>>oWks.Parent.VBProject.vbComponents(oWks.CodeName).Properties("_CodeName") = "ReNamedCode" && generates an error
>>*-- The error that I am getting is Function argument value, type, or count is invalid
>
>Can you post the code as you translated it? Or were you trying to run this exact code in VFP? (hint- VFP doesn't use the Sub keyword)
Erik,
Here is an example of the code
oExcel = CreateObject("Excel.Application")
oExcel.WorkBooks.OPEN("TestFile.xls")
*-- File contains a worksheet called "Sheet1"
oExcel.sheets("Sheet1").COPY(oExcel.Worksheets("Sheet1"))
lcTempCopySheet = "Sheet1 (2)"
oExcel.sheets(lcTempCopySheet).NAME = "ReNamedSheet"
oExcel.sheets("ReNamedSheet").SELECT
*-- oWks = oExcel.ActiveSheet
=RenameCodeName(oExcel.ActiveSheet, "ReNamedCode")
oExcel = .null.
FUNCTION RenameCodeName
LPARAMETERS oWks, sNewName
oWks.Parent.VBProject.vbComponents(oWks.CodeName).Properties("_CodeName") = sNewName
ENDFUNC
Previous
Reply
View the map of this thread
View the map of this thread starting from this message only
View all messages of this thread
View all messages of this thread starting from this message only