F
folmorse
Unregistered / Unconfirmed
GUEST, unregistred user!
我想知道如何给Excel中单元格设置值?
我用下面的代码:
Variant ex,newxls;
int i,j=1;
AnsiString azsItemValue="";
try
{
ex=CreateOleObject("Excel.Application"); //启动Excel
}
catch(...)
{
Application->MessageBoxA("无法启动Excel","提示",MB_OK);
return;
}
ex.OlePropertySet("Visible",(Variant)true); //使Excel启动后可见
newxls=(ex.OlePropertyGet("Workbooks")).OleFunction("Add");//新建一个工作薄
//****将Grid中的记录依次写到工作薄中********
for(i=0;i<sgrdFlow->RowCount-1;i++)
{
for(j=1; j<sgrdFlow->ColCount; j++)
{
azsItemValue=sgrdFlow->Cells[j-1];
(ex.OlePropertyGet("Cells")).OlePropertySet("Item",(Variant)(i+1),(Variant)j,(Variant)azsItemValue);
}
}
程序运行之后,Excel中的单元格都为空;不知那里有错?
请大虾指教!
ex.OleFunction("Quit"); //退出Excel,释放OLE对象
我用下面的代码:
Variant ex,newxls;
int i,j=1;
AnsiString azsItemValue="";
try
{
ex=CreateOleObject("Excel.Application"); //启动Excel
}
catch(...)
{
Application->MessageBoxA("无法启动Excel","提示",MB_OK);
return;
}
ex.OlePropertySet("Visible",(Variant)true); //使Excel启动后可见
newxls=(ex.OlePropertyGet("Workbooks")).OleFunction("Add");//新建一个工作薄
//****将Grid中的记录依次写到工作薄中********
for(i=0;i<sgrdFlow->RowCount-1;i++)
{
for(j=1; j<sgrdFlow->ColCount; j++)
{
azsItemValue=sgrdFlow->Cells[j-1];
(ex.OlePropertyGet("Cells")).OlePropertySet("Item",(Variant)(i+1),(Variant)j,(Variant)azsItemValue);
}
}
程序运行之后,Excel中的单元格都为空;不知那里有错?
请大虾指教!
ex.OleFunction("Quit"); //退出Excel,释放OLE对象