zoukankan      html  css  js  c++  java
  • Excel Events

    WorkbookEvents Interface
    WorkbookEvents_ActivateEventHandler Delegate
    WorkbookEvents_AddinInstallEventHandler Delegate
    WorkbookEvents_AddinUninstallEventHandler Delegate
    WorkbookEvents_AfterXmlExportEventHandler Delegate
    WorkbookEvents_AfterXmlImportEventHandler Delegate
    WorkbookEvents_BeforeCloseEventHandler Delegate
    WorkbookEvents_BeforePrintEventHandler Delegate
    WorkbookEvents_BeforeSaveEventHandler Delegate
    WorkbookEvents_BeforeXmlExportEventHandler Delegate
    WorkbookEvents_BeforeXmlImportEventHandler Delegate
    WorkbookEvents_DeactivateEventHandler Delegate
    WorkbookEvents_Event Interface
    WorkbookEvents_NewSheetEventHandler Delegate
    WorkbookEvents_OpenEventHandler Delegate
    WorkbookEvents_PivotTableCloseConnectionEventHandler Delegate
    WorkbookEvents_PivotTableOpenConnectionEventHandler Delegate
    WorkbookEvents_SheetActivateEventHandler Delegate
    WorkbookEvents_SheetBeforeDoubleClickEventHandler Delegate
    WorkbookEvents_SheetBeforeRightClickEventHandler Delegate
    WorkbookEvents_SheetCalculateEventHandler Delegate
    WorkbookEvents_SheetChangeEventHandler Delegate
    WorkbookEvents_SheetDeactivateEventHandler Delegate
    WorkbookEvents_SheetFollowHyperlinkEventHandler Delegate
    WorkbookEvents_SheetPivotTableUpdateEventHandler Delegate
    WorkbookEvents_SheetSelectionChangeEventHandler Delegate
    WorkbookEvents_SinkHelper Class
    WorkbookEvents_SyncEventHandler Delegate
    WorkbookEvents_WindowActivateEventHandler Delegate
    WorkbookEvents_WindowDeactivateEventHandler Delegate
    WorkbookEvents_WindowResizeEventHandler Delegate
    
    RefreshEvents Interface
    RefreshEvents_AfterRefreshEventHandler Delegate
    RefreshEvents_BeforeRefreshEventHandler Delegate
    RefreshEvents_Event Interface
    RefreshEvents_SinkHelper Class
    
    OLEObjectEvents_GotFocusEventHandler Delegate
    OLEObjectEvents_LostFocusEventHandler Delegate
    
    DocEvents_ActivateEventHandler Delegate
    DocEvents_BeforeDoubleClickEventHandler Delegate
    DocEvents_BeforeRightClickEventHandler Delegate
    DocEvents_CalculateEventHandler Delegate
    DocEvents_ChangeEventHandler Delegate
    DocEvents_DeactivateEventHandler Delegate
    DocEvents_Event Interface
    DocEvents_FollowHyperlinkEventHandler Delegate
    DocEvents_PivotTableUpdateEventHandler Delegate
    DocEvents_SelectionChangeEventHandler Delegate
    
    
    ChartEvents_ActivateEventHandler Delegate
    ChartEvents_BeforeDoubleClickEventHandler Delegate
    ChartEvents_BeforeRightClickEventHandler Delegate
    ChartEvents_CalculateEventHandler Delegate
    ChartEvents_DeactivateEventHandler Delegate
    ChartEvents_DragOverEventHandler Delegate
    ChartEvents_DragPlotEventHandler Delegate
    ChartEvents_Event Interface
    ChartEvents_MouseDownEventHandler Delegate
    ChartEvents_MouseMoveEventHandler Delegate
    ChartEvents_MouseUpEventHandler Delegate
    ChartEvents_ResizeEventHandler Delegate
    ChartEvents_SelectEventHandler Delegate
    ChartEvents_SeriesChangeEventHandler Delegate
    
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    using Excel = Microsoft.Office.Interop.Excel;
    using System.Reflection;
    
    namespace WindowsFormsApplication1
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }
    
            private void Form1_Load(object sender, EventArgs e)
            {
    
            }
    
            private void button1_Click(object sender, EventArgs e)
            {
                StartExcelAndSinkEvents();
            }
    
    
            //Excel Automation variables:
            Excel.Application xlApp;
            Excel.Workbook xlBook;
            Excel.Worksheet xlSheet1, xlSheet2, xlSheet3;
            //Excel event delegate variables: 
            Excel.AppEvents_WorkbookBeforeCloseEventHandler EventDel_BeforeBookClose;
            Excel.DocEvents_ChangeEventHandler EventDel_CellsChange;
            Excel.DocEvents_BeforeRightClickEventHandler Event_RightClick;
            private void StartExcelAndSinkEvents()
            {
                //Start Excel, and then create a new workbook. 
                xlApp = new Excel.Application();
                xlBook = xlApp.Workbooks.Open(@"C:UsersAdministrator.PC-20150725BXRIDesktop新建 Microsoft Excel 工作表.xlsx");//.Add();
                xlBook.Windows.get_Item(1).Caption = "XL Event Test";
                xlSheet1 = (Excel.Worksheet)xlBook.Worksheets.get_Item(1);
                xlSheet2 = (Excel.Worksheet)xlBook.Worksheets.get_Item(2);
                xlSheet3 = (Excel.Worksheet)xlBook.Worksheets.get_Item(3);
                xlSheet1.Activate();
    
                //Add an event handler for the WorkbookBeforeClose Event of the 
                //Application object.
                EventDel_BeforeBookClose = new Excel.AppEvents_WorkbookBeforeCloseEventHandler(BeforeBookClose);
                xlApp.WorkbookBeforeClose += EventDel_BeforeBookClose;
    
                //Add an event handler for the Change event of both worksheet objects.
                EventDel_CellsChange = new Excel.DocEvents_ChangeEventHandler(CellsChange);
                xlSheet1.Change += EventDel_CellsChange;
                xlSheet2.Change += EventDel_CellsChange;
                xlSheet3.Change += EventDel_CellsChange;
    
                Event_RightClick = new Excel.DocEvents_BeforeRightClickEventHandler(RightChange);
                 xlSheet1.BeforeRightClick += Event_RightClick;
                xlSheet2.BeforeRightClick += Event_RightClick;
                xlSheet3.BeforeRightClick += Event_RightClick;
    
                //Make Excel visible and give the user control. 
                xlApp.Visible = true; 
                xlApp.UserControl = true;
            }
    
            private void CellsChange(Excel.Range Target)
            {
                //This is called when any cell on a worksheet is changed. 
                MessageBox.Show("Delegate: You Changed Cells " + Target.get_Address(Missing.Value, Missing.Value, Excel.XlReferenceStyle.xlA1, Missing.Value, Missing.Value) + " on " + Target.Worksheet.Name);
            }
    
            private void RightChange(Excel.Range Target, ref bool bl)
            {
                MessageBox.Show(bl.ToString() + Target.get_Address());
            }
    
            private void BeforeBookClose(Excel.Workbook Wb, ref bool Cancel)
            {
                //This is called when you choose to close the workbook in Excel. 
                //The event handlers are removed, and then the workbook is closed 
                //without saving the changes. 
                Wb.Saved = true;
    
                MessageBox.Show("Delegate: Closing the workbook and removing event handlers.");
                xlSheet1.Change -= EventDel_CellsChange;
                xlSheet2.Change -= EventDel_CellsChange;
                xlSheet3.Change -= EventDel_CellsChange;
                xlApp.WorkbookBeforeClose -= EventDel_BeforeBookClose;
            }
        }
    }
  • 相关阅读:
    Centos6.8源码编译安装PHP7
    can't get hostname for your address--Mysql
    外网映射
    SignalR使用心得...
    C# 国际日期(英文日期,新浪微博api日期)转换
    jQuery插件分类、编写及实例
    数据库“钱“(金额)的类型存储,适用各种数据库
    struts2的权限控制思路
    Sql Server08R2的dbLink(链接服务器)配置
    使用getSession()方法,使用完之后必须自己调用相应的 close方法!
  • 原文地址:https://www.cnblogs.com/valor-xh/p/5950480.html
Copyright © 2011-2022 走看看