2 yc19901231 yc19901231 于 2017.09.07 07:57 提问

vba转C#中读取excel中的图片,怎么用ChartObjects来设置?

With ActiveWorkbook.Worksheets("Summary")
.Range("A1:O28").CopyPicture
.Paste
For i = 1 To .Shapes.Count
Set shap = .Shapes(i)
shap.Copy
With .ChartObjects.Add(0, 0, shap.Width, shap.Height).Chart
.Paste
.Export "F:\DP_E_Planning\DP.jpg"
.Parent.Delete
End With
Next
End With
这段vba代码转成C#
ws = wb.Worksheets["Summary"]; // 打开sheet_Summary

         ws.Range["A1 : O28"].Copy();   //复制A1: O 28
         ws.Range["A1 : O28"].Insert(Microsoft.Office.Interop.Excel.XlDirection.xlDown);//黏贴
         for (int i = 0; i < ws.Shapes.Count-1; i++)
        {
             shap = ws.Shapes.Item(i+1);
             shap.Copy();

             Excel.ChartObjects xlCharts = (Excel.ChartObjects)ws.ChartObjects(Type.Missing); // 建立图表  
             Excel.ChartObject myChart = (Excel.ChartObject)xlCharts.Add(0, 0, shap.Width, shap.Height); //加入图表及设定大小  
             Excel.Chart chartPage = myChart.Chart;
             chartPage.Paste();
                            chartPage.Export(@"F:\DP_E_Planning\DP1.jpg");
             chartPage.Parent();

在执行c#的时候报错说Object引用没有被实例化。 这个问题要怎么解决?

        }

2个回答

devmiao
devmiao   Ds   Rxr 2017.09.07 09:32
yc19901231
yc19901231   2017.09.07 10:58

@苏小喵 楼上的哥们, 你能看看你的答案在回答吗?

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
Excel中Chart对象成员表
因最近在做一个插件,与图表相关,现就把Excel中Chart成员中的方法、属性、事件做成一个表,以便以后进行查询,成员表如下表。注意,本表内只包含其方法、属性、事件的基本说明,如果您需要获取其详细的信息请参阅Excel中Vba的帮助文档,另Excel各版本间需要考虑代码兼容性问题,您在发布代码前最好在多个版本上进行代码测试,如果您的代码是非Vba形式的比如为Com插件的形式,那么您最好也要进行多个
用C#操作Excel以及产生Chart
简介用一个小范例示范如何在C#中操作Excel代码using System; using System.Collections.Generic; using System.Linq; using System.Text; using Excel = Microsoft.Office.Interop.Excel; namespace TestExcel { public class CBE
C# 读取excel里的图片并显示在页面上
在操作excel的时候,除了制作chart之外,很多时候还要读取excel里的图片到数据库里。下面简单介绍下从excel里抓图片到db,并从db里捞出来。    1 using System;   2  using System.Collections.Generic;
c# Aspose 图片处理(将Excel单元格中的图片拷贝到另一个Excel文件中)
Aspose是一个很强大的控件,可以用来操作word,excel,ppt等文件,用这个控件来导入、导出数据非常方便。其中Aspose.Cells就是用来操作Excel的,功能有很多;我们接下来用来实现一个“将指定的XLS文件中、指定页签下的、指定单元格内的、图片拷贝到另一个XLS中的相应单元格内”的功能; 首先,需要添加引用Aspose.Cells.dll,官网下载地址:http://d
条形码的应用三------从Excel文件中读取条形码
条形码的应用三------从Excel文件中读取条形码 介绍 上一篇文章,我向大家展示了生成多个条形码并存储到Excel文件中的一个方法。后来我又有了个想法;既然条码插入到excel中了,我可不可以从已有的Excel文件中读取这些条码呢?因此我做了些尝试。 解决方法很简单。条码既然已经以图片的形式插入到Excel文件中。因此我只要把这些图片从Excel文件中提取出来。
Excel 2003 中如何用VBA 代码访问单元格里的值及操作单元格
在Excel 中编写VBA 代码,最常做的事可能就是操作表单中单元格里的数据。 我这里总结一下如何从VBA 代码中操作单元格的数据。在VBA 代码中操作单元格需要用到Range 对象,Range 是Excel 库(即Excel.exe文件)提供的一个类,封装了对表单中单元格的所有操作。Range 对象可以是一个单元格,一行单元格,一列单元格,或者四方的连续的单元格范围,甚至是几个单元格范围组合
【办公-WORD】vba 统一改变word文档所有的图片大小 然后导出成PDF
如果您有一推图片且大小一样,想用word转成PDF,那么我推荐您使用VBA来调整图片大小,先给word设置 “页面布局-页边距”全部设置成0,再调整成合适的纸张大小,然后启动VBA 【Alt +F11】,粘贴如下代码,修改代码中自定义的宽高(如果不知道,那么先设置一张看看那个宽高最合适),最后 【F5】运行代码等待统一修改完成即可。 Sub 改变图片大小() Dim iSha As Inline
VBA转图片的出空白解决方法
Sub 导出为图片() Dim f$ f = "D\DRdlb.JPG" If Dir(f) <> "" Then Kill f Sheets("sheet1").Select Range("A1:Q87").Select Selection.Copy Selection.CopyPicture '选区复制为图片 With A
如何读取EXCEL文件中的图片?
如何读取EXCEL文件中的图片?下午写了半天的文章因为CSDN的BLOG又出问题而报废了,这里出问题的次数也太多了点,靠!现在没有心情再重写一次,所以就简单点说下算了,实在抱歉。一、概述因为使用ado或者ado.net只能读取excel中的文本数据(包括可以转换为文本的数据),所以不能使用数据库访问的方式来读取图片了。本文讲述了怎样通过引用office中的excel,然后通过excel
读取Excel数据和写入txt文件以及读取配置文件工具类
一、读取配置文件工具类ConfigHandler package com.schmidt; import java.io.InputStream; import java.io.InputStreamReader; import java.util.Properties; /** * @date 2015-07-16 * @author jyz * @version 1.0 *