近来有用户要求报表导入EXCEL表,其数据导入是没问题的,但图片的导入没做过。在网上找了一天,今天终于结了。记下简单代码吧
Variant Excel,Wb,ExcelBook,ExcelSheet,Sheet,ERange,EBorders;
AnsiString ExcelFileName;
ExcelFileName = ExtractFileDir(Application->ExeName)+"\\ssl.xls";
try
{
Excel=Variant::CreateObject("Excel.Application");
}
catch(...)
{
MessageBox(Handle,"没有EXCEL","错误",MB_OK|MB_ICONERROR);
return;
}
Excel.OlePropertySet("Visible",true);
Excel.OlePropertyGet("WorkBooks").OleProcedure("Open",ExcelFileName.c_str());
ExcelBook=Excel.OlePropertyGet("ActiveWorkBook");
ExcelSheet= ExcelBook.OlePropertyGet("Sheets", 1) ;
AnsiString str= "e:\\1.bmp";
ExcelSheet.OlePropertyGet("Pictures").OleFunction( "Insert" , str.c_str() );
ExcelSheet.OlePropertyGet("Pictures").OlePropertySet( "Top" , 100 );
ExcelSheet.OlePropertyGet("Pictures").OlePropertySet( "Left" , 2 );
ExcelSheet.OlePropertyGet("Pictures").OlePropertySet( "Width" , 400 );
ExcelSheet.OlePropertyGet("Pictures").OlePropertySet( "Height" , 200 ); //好象长宽设置比例不能变
本文介绍了一种在Excel中插入图片的方法,并提供了详细的步骤和代码示例。通过使用OLE技术,可以实现在Excel工作表上指定位置插入指定大小的图片。
1725

被折叠的 条评论
为什么被折叠?



