excel C#二次开发随笔(纯新手).

1.首先需要安装VS,然后把需要的模块一起安装.
2.新建项目,VSTO外接程序.


excel C#二次开发随笔(纯新手)._第1张图片
1.png

3.新建好项目之后会生产以下代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml.Linq;
using Excel = Microsoft.Office.Interop.Excel;
using Office = Microsoft.Office.Core;
using Microsoft.Office.Tools.Excel;

namespace ExcelAddIn1
{
    public partial class ThisAddIn
    {
        private void ThisAddIn_Startup(object sender, System.EventArgs e)
        {
            
        }

        private void ThisAddIn_Shutdown(object sender, System.EventArgs e)
        {

        }


        #region VSTO 生成的代码

        /// 
        /// 设计器支持所需的方法 - 不要修改
        /// 使用代码编辑器修改此方法的内容。
        /// 
        private void InternalStartup()
        {
            this.Startup += new System.EventHandler(ThisAddIn_Startup);
            this.Shutdown += new System.EventHandler(ThisAddIn_Shutdown);
        }
        
        #endregion
    }
}

这些代码由项目自动生成,可以现在可以不用管他.
4.现在开始做插件,首先右键项目添加新项:选择office/SharePoint下的功能区(可视化设计器)如下图:


excel C#二次开发随笔(纯新手)._第2张图片
2.jpg

新建好了之后会有一个功能区给你,然后可以在上面增加各种控件,如下图:


excel C#二次开发随笔(纯新手)._第3张图片
3.png

然后我们在功能区点击右键属性,可以在右边看到它的各种设定,如果有需要可以随意修改,现在我们来新建一个按钮然后给按钮添加事件,具体操作如下:
excel C#二次开发随笔(纯新手)._第4张图片
4.png

直接把按钮拖进去,最后右键查看代码就会跳转到按钮定义的事件代码里边去了.

5.然后我们在里面添加代码,代码如下:

//获取当前活动的应用程序
            Application app1 = Globals.ThisAddIn.Application;
            app1.Visible = true;
            //获取当前活动的活动页
            _Workbook wb = app1.ActiveWorkbook;
            //获取当前的sheet
            Worksheet sheet1 = wb.Sheets[1];
          
            // 获取当前页面A1的值,并修改
            Range rng = sheet1.get_Range("A1", Type.Missing);
            rng.Value2 = "hello";

由于百度上,官网上的实例代码全都是新建工作簿的方式修改,所以我这里把代码修改了下,改为了修改当前打开的工作簿的内容.
6.最后点启动,会自动启动excel,然后新建工作簿,然后会看到以下界面


excel C#二次开发随笔(纯新手)._第5张图片
5.png

然后点击刚才我们新建的按钮,A1的值就被修改成了Hello了.
7.一个简单的Excel插件建立好了之后,还需要给别人的电脑安装使用才行,这个时候就需要用到VS的发布功能了,然后我们点击项目右键发布功能,会弹出一个发布向导:


excel C#二次开发随笔(纯新手)._第6张图片
6.png

先指定好位置,然后下一步,会弹出个用户安装位置,这时我们选最后一个从CD-rom里面安装:
excel C#二次开发随笔(纯新手)._第7张图片
7.png

下一步,最后点完成,这样我们就会在目标文件夹里面得到1个文件夹2个安装文件如图:
excel C#二次开发随笔(纯新手)._第8张图片
8.png

这时就可以把这三个东西复制给别人用来安装了,安装成功后就会出现第5张图的界面了.
8.最后附上新建的按钮控件完整代码:

using System;
using Microsoft.Office.Tools.Ribbon;
using Microsoft.Office.Interop.Excel;

namespace ExcelAddIn1
{
    public partial class Ribbon1
    {
        

        private void Ribbon1_Load(object sender, RibbonUIEventArgs e)
        {

        }


        private void button1_Click(object sender, RibbonControlEventArgs e)
        {
            //获取当前活动的应用程序
            Application app1 = Globals.ThisAddIn.Application;
            app1.Visible = true;
            //获取当前活动的活动页
            _Workbook wb = app1.ActiveWorkbook;
            //获取当前的sheet
            Worksheet sheet1 = wb.Sheets[1];
          
            // 获取当前页面A1的值,并修改
            Range rng = sheet1.get_Range("A1", Type.Missing);
            rng.Value2 = "hello";
          

        }
    }
}

纯手打记录,如果有问题可在下方留言.

你可能感兴趣的:(excel C#二次开发随笔(纯新手).)