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 ExcelAddIn2
{
//此类提供了代码的入口点,并提供了对Excel对象模型的访问。
public partial class ThisAddIn
{
//在加载外接程序时对外接程序进行初始化
private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
//此代码将Application_WorkbookBeforeSave事件处理程序和WorkbookBeforeSave事件连接起来。
this.Application.WorkbookBeforeSave += new Microsoft.Office.Interop.Excel.AppEvents_WorkbookBeforeSaveEventHandler(Application_WorkbookBeforeSave);
}
//在卸载程序是清理外接程序所使用的资源
private void ThisAddIn_Shutdown(object sender, System.EventArgs e)
{
}
#region VSTO generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InternalStartup()
{
this.Startup += new System.EventHandler(ThisAddIn_Startup);
this.Shutdown += new System.EventHandler(ThisAddIn_Shutdown);
}
#endregion
//功能:用户保存工作簿时,该事件处理程序会将新文本添加到活动工作簿的开头
void Application_WorkbookBeforeSave(Microsoft.Office.Interop.Excel.Workbook wb, bool SaveAsUI, ref bool Cancel)
{
Excel.Worksheet activeWorksheet = ((Excel.Worksheet)Application.ActiveSheet);
Excel.Range firstRow = activeWorksheet.get_Range("A1", missing);
firstRow.EntireRow.Insert(Excel.XlInsertShiftDirection.xlShiftDown, System.Type.Missing);
Excel.Range newFirstRow = activeWorksheet.get_Range("A1", missing);
newFirstRow.Value2 = "This text was added by using code";
}
}
}
转载于:https://my.oschina.net/MissLee/blog/213997