程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> 用C#為Excel創建個人宏工作薄

用C#為Excel創建個人宏工作薄

編輯:C#入門知識

以前一直是用C#直接操作Excel,但是發現性能無比低下,最近發現用Excel中的宏可以高速的完成批處理的功能,於是決定寫一個用C#為Excel文件創建宏的程序,工程如下:


 

\\代碼
using System;
using System.IO;
using System.Runtime.InteropServices;
using System.Reflection;
using System.Text;


using Office = Microsoft.Office.Core;
using VBDE = Microsoft.Vbe.Interop;
using Excel = Microsoft.Office.Interop.Excel;


namespace ConsoleApplication1
{

class Class1
{

[STAThread]
static void Main(string[] args)
{
string MyFile = Path.GetFullPath(".") + @"sample.xls";
CreateWorkbook(MyFile,GetMacro());
Console.WriteLine("File Saved to " + MyFile);
Console.ReadLine();
}

#region Get Macro
private static string GetMacro()
{
StringBuilder sb = new StringBuilder();

sb.Append("Sub FormatSheet()" + " ");
sb.Append(" msgbox "http://www.cnblogs.com/huangcong/" ");
sb.Append("End Sub");

return sb.ToString();
}
#endregion

#region Create Workbook
private static void CreateWorkbook(string FileName,string Macro)
{

Excel.Application xl = null;
Excel._Workbook wb = null;
Excel._Worksheet sheet = null;
VBDE.VBComponent module = null;
bool SaveChanges = false;


try
{

if (File.Exists(FileName)) { File.Delete(FileName); }

GC.Collect();

xl = new Excel.Application();
xl.Visible = false;

wb = (Excel._Workbook)(xl.Workbooks.Add( Missin

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved