C# 用C在Excel中的特定单元格上添加图片#
我正在尝试向Excel单元格第3行第1列添加图像,如下所示。编译器给了我一个错误。 我做错什么了吗?提前感谢您的建议C# 用C在Excel中的特定单元格上添加图片#,c#,excel-interop,C#,Excel Interop,我正在尝试向Excel单元格第3行第1列添加图像,如下所示。编译器给了我一个错误。 我做错什么了吗?提前感谢您的建议 Excel.Application xlApp; Excel.Workbook wb; Excel.Worksheet ws; object misValue = System.Reflection.Missing.Value; xlApp = new Excel.Application(); wb = xlApp.Workbooks.Add(misValue); w
Excel.Application xlApp;
Excel.Workbook wb;
Excel.Worksheet ws;
object misValue = System.Reflection.Missing.Value;
xlApp = new Excel.Application();
wb = xlApp.Workbooks.Add(misValue);
ws = (Excel.Worksheet)wb.Worksheets.get_Item(1);
ws.Cells[3, 1] = ws.Shapes.AddPicture("C:\\photos\\4a.png", Microsoft.Office.Core.MsoTriState.msoFalse, Microsoft.Office.Core.MsoTriState.msoCTrue, 75, 75, 350, 50);
您必须添加如下图片
Microsoft.Office.Interop.Excel.Range oRange = (Microsoft.Office.Interop.Excel.Range)ws.Cells[3, 1];
float Left = (float)((double)oRange.Left);
float Top = (float)((double)oRange.Top);
const float ImageSize = 32;
ws.Shapes.AddPicture("C:\\pic.JPG", Microsoft.Office.Core.MsoTriState.msoFalse, Microsoft.Office.Core.MsoTriState.msoCTrue, Left, Top, ImageSize, ImageSize);
<>强/> API可以用来在Excel中添加一个图片,在特定的单元中用C++或其他编程语言,如java、C++等。 如需演示,请参阅以下C#code和快照,其中显示了执行代码后Aspose.Cells API生成的输入Excel文件和输出Excel文件。正如您在快照中看到的,单元格C12包含图片 请阅读代码中的注释以获得更多帮助 C#
显示Aspose.Cells API生成的输入Excel文件和输出Excel文件的快照。此处单元格C12包含图片。
您遇到了什么错误?错误是这样发生的。。。。。System.Runtime.InteropServices.ComeException:通过在
C:\Windows\System32\config\systemprofile
和C:\Windows\SysWOW64\config\systemprofile
下创建Desktop
文件夹,从HRESULT:0x800A03ECtry获得异常,或者尝试此@Pranav Patel谢谢,但是我在Excel生成时没有问题,比如,ws.Cells[3,1]=“一些文本”;当我在该单元格上插入图像时,此错误出现在最后一行“Left,Top,ImageSize,ImageSize);”中。第一个ImageSize对应于图像宽度,下一个对应于图像高度。这两个值都是float类型。这是否真的会在确定的单元格中插入图像?似乎不是这样。它只是将图像放在工作表的顶部,以便覆盖这些单元格。。。
// Load input Excel file inside Aspose.Cells Workbook object.
Workbook wb = new Workbook("SampleAddPictureInExcelCell.xlsx");
// Access first worksheet.
Worksheet ws = wb.Worksheets[0];
// Access cell C12 by name.
Cell cell = ws.Cells["C12"];
// Add picture in Excel cell.
int idx = ws.Pictures.Add(cell.Row, cell.Column, "D:/Download/Penguins.jpg");
// Access the picture by index.
Picture pic = ws.Pictures[idx];
// Get the column width and row height of the cell in inches.
double w = ws.Cells.GetColumnWidthInch(cell.Column);
double h = ws.Cells.GetRowHeightInch(cell.Row);
// Adjust the picture width and height as per cell width and height.
pic.WidthInch = w;
pic.HeightInch = h;
// Save the workbook in output Excel file.
wb.Save("OutputAddPictureInExcelCell.xlsx", SaveFormat.Xlsx);