• 全部
  • C#综合技术
  • C#互联网桌面应用
  • AppLauncher
  • WinForm&WPF
  • C#开发新技术
  • 问答

有什么方法可以在excel指定单元格添加图片呢?Shapes.AddPicture只能选择位置

狼二羊 IT  2021-05-12 02:20:56

或者用pictureBox控件添加图片到excel,我这样写的但是excel表格里显示System.Drawing.Bitmap

xlWorksheet.Cells[10, "A"] =this.pictureBox1.InitialImage
...全文
289 点赞 收藏 4
写回复
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
//插入图片到Excel
        public void InsertImage(Range xlRange, string srcFile)
        {
            if (!File.Exists(srcFile))
                return;

            xlRange.Select();
            float left = (float)xlRange.Left + 0.25f;
            float top = (float)xlRange.Top + 0.25f;
            float width = (float)xlRange.Width - 0.25f;
            float height = (float)xlRange.Height - 0.25f;
            Shape xlShape = _xlWorkSheet.Shapes.AddPicture(srcFile, Microsoft.Office.Core.MsoTriState.msoFalse, Microsoft.Office.Core.MsoTriState.msoTrue, left, top, width, height);
            xlShape.Width = width;
            xlShape.Height = height;
            xlShape.Placement = XlPlacement.xlMoveAndSize;
        }
回复

using Spire.Xls;
using System.Drawing;

namespace InsertImage_XLS
{
    class Program
    {
        static void Main(string[] args)
        {
            //创建Workbook对象
            Workbook workbook = new Workbook();  

            //获取第一张工作表
            Worksheet sheet = workbook.Worksheets[0];

            //指定列宽、行高
            sheet.Columns[0].ColumnWidth = 50;
            sheet.Rows[0].RowHeight = 160;

            //加载图片,添加到指定单元格(第一行,第一列)
            ExcelPicture picture = sheet.Pictures.Add(1,1, "tp.png");

            //指定图片宽度和高度
            picture.Width = 300;
            picture.Height = 180;

            //通过LeftColumnOffset和TopRowOffset属性值设置图片在单元格中的横向、纵向对齐
            picture.LeftColumnOffset = 75;
            picture.TopRowOffset = 20;

            //保存文档
            workbook.SaveToFile("result.xlsx", FileFormat.Version2013);
            System.Diagnostics.Process.Start("result.xlsx");
        }
    }
}
这个是spire.xls.dll的方法,代码源自其他文章,这个可以插入到指定单元格。
回复
wtnu200 05-13
通过下面函数添加图片至excel,没有相对单元格的图片操作 xlWorksheet.Shapes.AddPicture
回复
狼二羊 05-13
一个会的没有么
回复
发帖
C#
创建于2007-09-28

10.5w+

社区成员

.NET技术 C#
申请成为版主
帖子事件
创建了帖子
2021-05-12 02:20
社区公告

让您成为最强悍的C#开发者