从Word文档中修改Excel Chart的内容

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using log4net;
using Microsoft.Office.Core;
using Word = Microsoft.Office.Interop.Word;
using Excel = Microsoft.Office.Interop.Excel;

[assembly: log4net.Config.XmlConfigurator(ConfigFile = "ConsoleApplication2.exe.config", Watch = true)]
namespace ConsoleApplication2
{
    class Program
    {
        [STAThread]
        static void Main(string[] args)
        {
            ILog log = log4net.LogManager.GetLogger(typeof(Program));
            OpenFileDialog ofd = new OpenFileDialog();
            ofd.Multiselect = false;
            ofd.Filter = "Word Document|*.docx;*.doc";
            ofd.ShowDialog();
            string DocPath = ofd.FileName;
            log.Info("Open the file : " + DocPath);
            try
            {
                Word.Application wdApplication = new Word.Application();
                wdApplication.Visible = true;
                Word.Document wdDoc = wdApplication.Documents.Open(DocPath);
                foreach (Word.InlineShape wdInlineShape in wdDoc.InlineShapes)
                {
                    if (wdInlineShape.OLEFormat.ProgID.Equals("Excel.Sheet.8"))
                    {
// 下一步很重要,否则会报“对象没有连接到服务器 
// (Exception from HRESULT: 0x800401FD (CO_E_OBJNOTCONNECTED))”异常。
                        wdInlineShape.OLEFormat.Open();
                        Excel.Workbook xlWorkbook = wdInlineShape.OLEFormat
                            .Object;

                        if (xlWorkbook != null)
                        {
                            xlWorkbook.ActiveChart.HasTitle = true;
                            xlWorkbook.ActiveChart.ChartTitle.Text = "Test";
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                log.Fatal(string.Format("{0}\n{1}", ex.Message, ex.StackTrace));
            }
            log.Error("Finished");
            Console.ReadKey();
        }
    }
}

欢迎访问《 许阳的红泥屋

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值