This example returns an array containing two cells: the book name and the sheet name contained in the argument FullName.
// Function: SheetTest
// Purpose: Split a full sheet name into book and sheet name parts
//{{XLP_SRC(SheetTest)
// NOTE - the FunctionWizard will add and remove mapping code here.
// DO NOT EDIT what you see in these blocks of generated code!
IMPLEMENT_XLLFN2(SheetTest, "RC", "SheetTest", "FullName",
"User Defined", "Split a full sheet name into book and sheet name "
"parts", "No description provided\000", "\0appscope=1\0", 1)
extern "C" __declspec( dllexport )
LPXLOPER SheetTest(const char* FullName)
{
XLL_FIX_STATE;
CXlOper xloResult;
//}}XLP_SRC
CString bookName, sheetName;
CXllApp::SplitSheetName(FullName, bookName, sheetName);
xloResult.AllocArray(1, 2);
xloResult.Cell(0, 0) = bookName;
xloResult.Cell(0, 1) = sheetName;
return xloResult.Ret();
}