Excel 2010
文章平均质量分 86
勾吴江南
志异征诛,三让两家王朝;
功同开辟,一桮万古江南。
展开
-
Excel从另一个Excel文件中用户自定义区域(UsedRange)拷贝数据和行高、列宽
实现环境:Visual Studio 2010, Office 2010, VSTO 4.0, .NET Framework 4.0using System;using System.Collections.Generic;using System.Linq;using System.Text;using Microsoft.Office.Tools.Ribbon;using E原创 2011-12-09 14:10:24 · 5466 阅读 · 0 评论 -
从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原创 2012-07-05 14:35:48 · 1928 阅读 · 0 评论 -
Outlook 2010的一个Bug
环境:Windows 7 旗舰版 Visual Studio 2010、Office 2010重现步骤:在Visual Studio 2010中用C# 建立一个Outlook Add-in 项目(framework 3.5 或framework 4.0)在项目中添加一个Ribbon(Ribbon Visual Designer,不是Ribbon Xml)。将这个Ribbon的Ribbo原创 2012-07-05 13:13:17 · 947 阅读 · 0 评论 -
PowerPoint2003上嵌入Excel Sheet
一下代码在PowerPoint2003的第二个Slide上嵌入一个Excel Sheet(有且只有一个Sheet)。using System;using System.IO;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using原创 2012-06-26 14:29:11 · 905 阅读 · 0 评论 -
Excel开发中的0x800A03EC异常
如果在Excel中遇到0x800A03EC异常在大多数情况下是因为没有退出单元格的编辑状态。原创 2012-06-26 20:21:06 · 1428 阅读 · 1 评论 -
如何在被保护的工作表(Worksheet)中使用Group Outlining
首先,我们要在工作表没有处于被保护状态前设定好Outlining Group。如图:然后运下以VBA工程来保护这个Worksheet。Sub test() Dim xlSheet As Worksheet Set xlSheet = ActiveWorkbook.ActiveSheet xlSheet.Protect "[你的密码]"原创 2012-08-16 10:31:25 · 2100 阅读 · 0 评论 -
从SharePoint 2010网站上导出list的方法
我们可从SharePoint网站上导出iqy文件然后把iqy文件导入Excel。还有我们可以用VBA来做这个事情,代码如下:Sub ImplementSharePointList() Dim HomeAddress As String Dim ListID As String Dim ViewID As String Dim SourceAddress As S原创 2012-08-23 10:37:22 · 957 阅读 · 0 评论 -
获取Excel中Undo按钮的项目
在VSTO中我们可以通过以下代码来获取Undo按钮的列表: private static Office.CommandBars getCommandBars() { return (Office.CommandBars)Globals.ThisWorkbook.Application.GetType().InvokeMember("Comm原创 2012-10-29 15:17:00 · 1527 阅读 · 0 评论 -
在Office自动化条件下读文档属性
在Office Add-in下我们读取CustomDocumentProperties应该是没有问题的。 可是你会发现在Office Automation条件下CustomDocumentProperties是无法直接读取的(至少在我的环境下:Visual Studio 2010, Office 2010是无法实现的)。所以我们必须使用反射来“曲线救国”。以下代码演示了读取CustomDocume原创 2012-10-23 13:29:38 · 967 阅读 · 0 评论 -
调用COM来实现在最后一个Worksheet后插一个新的Worksheet
// InsertAfterSheets.cpp : Defines the entry point for the console application.//#include "stdafx.h"HRESULT AutoWrap(int autoType, VARIANT *pvResult, IDispatch *pDisp, LPOLESTR ptName, int cArg原创 2012-11-21 18:50:40 · 868 阅读 · 0 评论 -
调COM向Sheet1的Range("A1")添加内容
// InsertAfterSheets.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include HRESULT AutoWrap(int autoType, VARIANT *pvResult, IDispatch *pDisp, LPOLESTR ptName原创 2013-01-15 11:49:58 · 1140 阅读 · 0 评论 -
一个需要授权的Excel add-in
在网上有朋友问我怎么阻止非授权用户使用add-in。在这里我给出一个例子(当然,在实际工作中使用的逻辑要远比这个复杂。这里只是说明一个大体的过程罢了)首先我在app.config中设定了一个MD5值(就是我的授权码了,本例中是“This is a test!”)。 然后再ThisAddIn中作如下修改:using System;using Sy原创 2012-05-25 15:04:22 · 1441 阅读 · 0 评论 -
Excel Tips: ListObject Insert/delete columns
如果ListObject已经帮定到数据源的话这是不可能的。原创 2012-05-24 11:01:06 · 636 阅读 · 0 评论 -
Tips: Excel validation 最多支持255个项目
如题。微软官方KB: http://support.microsoft.com/kb/211485原创 2012-05-11 14:49:51 · 590 阅读 · 0 评论 -
在Excel(xlsx)文件中用OpenXml SDK 添加一个新的Worksheet并写入字符串
实现环境:Visual Studio 2010, OpenXml SDK 2.0.5022这个代码实现了向一个已有的xlsx文件中添加一个新的Worksheet,并在这个Sheet中写入三行字符串“ObjectA1"~"ObjectC5"Imports DocumentFormat.OpenXml.PackagingImports DocumentFormat.OpenXml.Spr原创 2011-12-19 20:17:57 · 1977 阅读 · 0 评论 -
向Excel文档中嵌入VBA控件和UserForm并显示
实现环境:Visual Studio 2010, Excel 2010, VSTO 4.0在文档中嵌入一个Commandbutton点击它会显示一个UserForm,UserForm上有一个CommandButton点击会弹出消息框然后CommandButton的Caption改变。当UserForm关闭是文档中的CommandButton的Caption改变。VB.NET:Imp原创 2011-12-22 13:09:33 · 4838 阅读 · 0 评论 -
在Excel中用代码嵌入TextBox并设定Chage事件。
本示例在Visual Studio 2010, Office 2010, VSTO 4.0的环境下完成。在工程必须手工添加"Microsoft.Vbe.Interop.Forms"的引用。本示例完成的关键在于Microsoft.Vbe.Interop.Forms.TextBox 变量必须是Class-level的(作用范围在整个类以内)。否则事件不会被触发。using System原创 2011-12-16 12:55:50 · 3189 阅读 · 0 评论 -
RibbonX 动态生成ComboBox和DropDown的Item
先让我们来看一下xml文件的设定:<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui" onLoad="Ribbon_Load"> <group id="GroupExcelAddIn12" label="ExcelAddI原创 2011-12-15 13:13:40 · 4045 阅读 · 0 评论 -
关于在Excel应用中的Exception from HRESULT:0x800A03EC
下面这段代码会抛出这个异常。using System;using System.Collections.Generic;using System.Data;using System.Linq;using System.Text;using System.Windows.Forms;using System.Xml.Linq;using Microsoft.Office.Tools原创 2011-12-15 18:24:18 · 4405 阅读 · 0 评论 -
动态生成多个VBE按钮控件并操作它们的属性
实现环境:Visual Studio 2010,Excel 2010, VSTO 4.0Imports Microsoft.Office.Tools.RibbonImports VBE = Microsoft.Vbe.InteropImports Forms = Microsoft.Vbe.Interop.FormsPublic Class Ribbon1 Private原创 2011-12-23 14:39:48 · 1260 阅读 · 0 评论 -
连接Excel数据源并查询
Excel表必须是97-2003格式的。否则无法查询。Imports System.Data.OleDbPublic Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As _ System.EventArgs) H原创 2012-02-01 19:04:43 · 1289 阅读 · 0 评论 -
在Excel Add-in中使用log4NET
在Excel Add-in中没有办法设定配置文件。所以我们需要在程序中设定Log4NET的配置。using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Xml.Linq;using Excel = Microsoft.Office.Interop.原创 2012-02-14 16:23:42 · 1007 阅读 · 0 评论 -
一个始终显示在Excel前的窗体
一下代码实现一个始终显示在Excel前的窗体,不论你怎么切换工作表它都不会消失。当Excel最小化时它会与Excel窗口一起从桌面上消失。using System;using System.Collections.Generic;using System.Linq;using System.Text;using Microsoft.Office.Tools.Ribbon;usin原创 2012-03-02 14:39:14 · 2402 阅读 · 1 评论 -
Excel 小贴士(1): CSV文件中的Sep命令
在CSV文件中我们以“,”作为默认分隔符。在之际操作过程中也许我们会改变默认分隔符,例如使用“;”。如果需要改变分隔符我们就需要使用“Sep”命令。在网上有朋友问为什么我用了Sep命令后反而Excel不能识别CSV格式了呢?那是因为你的Sep和CSV文件的数据混在同一行中了。如果你使用Sep命令,请务必使这个命令在文件起头处独占一行。否则可能使Excel无法识别。正确格式:Sep=;原创 2012-03-26 12:52:37 · 1388 阅读 · 0 评论 -
在Excel 中存在两种ListBox
在Excel中存在着Excel.ListBox和MsForms.ListBox两种ListBox。其中Excel.ListBox是隐藏的,你在ObjectView窗体中是不可见的(如果你想看到这个类请在ObjectView窗体上点击右键选择"Show Hidden Members"/”显示隐含成员“)。在Excel的VBA项目中这个隐藏的Excel.ListBox被视为ListBox所指向的类原创 2013-01-31 14:53:42 · 2210 阅读 · 0 评论