Excel-在C#裡的應用

來源:互聯網
上載者:User

 Microsoft.Office.Interop.Excel.Application xlApp = new Microsoft.Office.Interop.Excel.Application();
            Microsoft.Office.Interop.Excel.Workbook workbook = xlApp.Workbooks.Add(true);
            Microsoft.Office.Interop.Excel.Worksheet worksheet = (Microsoft.Office.Interop.Excel.Worksheet)workbook.Worksheets[1];
            Microsoft.Office.Interop.Excel.Range range;

 

 

 定製模組行為

(1) Option Explicit '強制對模組內所有變數進行聲明 Option Private Module '標記模組為私人,僅對同一工程中其它模組有用,在宏對話方塊中不顯示 Option Compare Text '字串不區分大小寫 Option Base 1 '指定數組的第一個下標為1 (2) On Error Resume Next '忽略錯誤繼續執行VBA代碼,避免出現錯誤訊息

(3) On Error GoTo ErrorHandler '當錯誤發生時跳轉到過程中的某個位置

(4) On Error GoTo 0 '恢複正常的錯誤提示

(5) Application.DisplayAlerts=False '在程式執行過程中使出現的警告框不顯示

(6) Application.ScreenUpdating=False '關閉螢幕重新整理 Application.ScreenUpdating=True '開啟螢幕重新整理

 (7) Application.Enable.CancelKey=xlDisabled '禁用Ctrl+Break中止宏啟動並執行功能 活頁簿

(8) Workbooks.Add() '建立一個新的活頁簿

(9) Workbooks(“book1.xls”).Activate '啟用名為book1的活頁簿

 (10) ThisWorkbook.Save '儲存活頁簿

(11) ThisWorkbook.close '關閉當前活頁簿

(12) ActiveWorkbook.Sheets.Count '擷取活動工作薄中工作表數

 (13) ActiveWorkbook.name '返回活動工作薄的名稱

(14) ThisWorkbook.Name ‘返回當前活頁簿名稱 ThisWorkbook.FullName ‘返回當前活頁簿路徑和名稱

(15) ActiveWindow.EnableResize=False ‘禁止調整活動活頁簿的大小

(16) Application.Window.Arrange xlArrangeStyleTiled ‘將活頁簿以平鋪方式排列

 (17) ActiveWorkbook.WindowState=xlMaximized ‘將當前活頁簿最大化 工作表

 (18) ActiveSheet.UsedRange.Rows.Count ‘當前工作表中已使用的行數

(19) Rows.Count ‘擷取工作表的行數(註:考慮向前相容性)

(20) Sheets(Sheet1).Name= “Sum” '將Sheet1命名為Sum

(21) ThisWorkbook.Sheets.Add Before:=Worksheets(1) '添加一個新工作表在第一工作表前

(22) ActiveSheet.Move After:=ActiveWorkbook. _ Sheets(ActiveWorkbook.Sheets.Count) '將當前工作表移至工作表的最後

(23) Worksheets(Array(“sheet1”,”sheet2”)).Select '同時選擇工作表1和工作表2

 (24) Sheets(“sheet1”).Delete或 Sheets(1).Delete '刪除工作表1

(25) ActiveWorkbook.Sheets(i).Name '擷取工作表i的名稱

 (26) ActiveWindow.DisplayGridlines=Not ActiveWindow.DisplayGridlines '切換工作表中的網格線顯示,這種方法也可以用在其它方面進行相互切換,即相當於開關按鈕

 (27) ActiveWindow.DisplayHeadings=Not ActiveWindow.DisplayHeadings ‘切換工作表中的行列邊框顯示

(28) ActiveSheet.UsedRange.FormatConditions.Delete ‘刪除當前工作表中所有的條件式格式設定

(29) Cells.Hyperlinks.Delete ‘取消當前工作表所有超連結

 (30) ActiveSheet.PageSetup.Orientation=xlLandscape 或ActiveSheet.PageSetup.Orientation=2 '將版面設定更改為橫向

(31) ActiveSheet.PageSetup.RightFooter=ActiveWorkbook.FullName ‘在版面設定的表尾中輸入檔案路徑 ActiveSheet.PageSetup.LeftFooter=Application.UserName ‘將使用者名稱放置在使用中工作表的頁尾 儲存格/儲存格範圍 (32) ActiveCell.CurrentRegion.Select 或Range(ActiveCell.End(xlUp),ActiveCell.End(xlDown)).Select '選擇當前作用儲存格所包含的範圍,上下左右無空行

(33) Cells.Select ‘選定當前工作表的所有儲存格

 (34) Range(“A1”).ClearContents '清除使用中工作表上儲存格A1中的內容 Selection.ClearContents '清除選定地區內容 Range(“A1:D4”).Clear '徹底清除A1至D4儲存格範圍的內容,包括格式

(35) Cells.Clear '清除工作表中所有儲存格的內容

(36) ActiveCell.Offset(1,0).Select '作用儲存格下移一行,同理,可下移一列

 (37) Range(“A1”).Offset(ColumnOffset:=1)或Range(“A1”).Offset(,1) ‘位移一列 Range(“A1”).Offset(Rowoffset:=-1)或Range(“A1”).Offset(-1) ‘向上位移一行

 (38) Range(“A1”).Copy Range(“B1”) '複製儲存格A1,粘貼到儲存格B1中 Range(“A1:D8”).Copy Range(“F1”) '將儲存格範圍複製到儲存格F1開始的地區中 Range(“A1:D8”).Cut Range(“F1”) '剪下儲存格範圍A1至D8,複製到儲存格F1開始的地區中 Range(“A1”).CurrentRegion.Copy Sheets(“Sheet2”).Range(“A1”) '複製包含A1的儲存格範圍到工作表2中以A1起始的儲存格範圍中 註:CurrentRegion屬性等價於定位命令,由一個矩形儲存格塊組成,周圍是一個或多個空行或列

(39) ActiveWindow.RangeSelection.Value=XX '將值XX輸入到所選儲存格範圍中

 (40) ActiveWindow.RangeSelection.Count '使用中視窗中選擇的儲存格數

(41) Selection.Count '當前選中地區的儲存格數

(42) GetAddress=Replace(Hyperlinkcell.Hyperlinks(1).Address,mailto:,””) ‘返回儲存格中超級連結的地址並賦值 (43) TextColor=Range(“A1”).Font.ColorIndex ‘檢查儲存格A1的文本顏色並返回色彩索引 Range(“A1”).Interior.ColorIndex ‘擷取儲存格A1背景色

 (44) cells.count ‘返回當前工作表的儲存格數

 (45) Selection.Range(“E4”).Select ‘啟用當前作用儲存格下方3行,向右4列的儲存格

(46) Cells.Item(5,”C”) ‘引儲存格C5 Cells.Item(5,3) ‘引儲存格C5

 (47) Range(“A1”).Offset(RowOffset:=4,ColumnOffset:=5) 或 Range(“A1”).Offset(4,5) ‘指定儲存格F5

(48) Range(“B3”).Resize(RowSize:=11,ColumnSize:=3) Rnage(“B3”).Resize(11,3) ‘建立B3:D13地區

(49) Range(“Data”).Resize(,2) ‘將Data地區擴充2列

 (50) Union(Range(“Data1”),Range(“Data2”)) ‘將Data1和Data2地區串連

(51) Intersect(Range(“Data1”),Range(“Data2”)) ‘返回Data1和Data2地區的交叉地區

(52) Range(“Data”).Count ‘儲存格範圍Data中的儲存格數 Range(“Data”). Columns.Count ‘儲存格範圍Data中的列數 Range(“Data”). Rows.Count ‘儲存格範圍Data中的行數

 (53) Selection.Columns.Count ‘當前選中的儲存格範圍中的列數 Selection.Rows.Count ‘當前選中的儲存格範圍中的行數

(54) Selection.Areas.Count ‘選中的儲存格範圍所包含的地區數

(55) ActiveSheet.UsedRange.Row ‘擷取儲存格範圍中使用的第一行的行號

(56) Rng.Column ‘擷取儲存格範圍Rng左上方儲存格所在列編號

 (57) ActiveSheet.Cells.SpecialCells(xlCellTypeAllFormatConditions) ‘在使用中工作表中返回所有符合條件式格式設定設定的地區

(58) Range(“A1”).AutoFilter Field:=3,VisibleDropDown:=False ‘關閉由於執行自動篩選命令產生的第3個欄位的下拉式清單 名稱

(59) Range(“A1:C3”).Name=“computer” ‘命名A1:C3地區為computer 或Range(“D1:E6”).Name=“Sheet1!book” ‘命名局部變數,即Sheet1上地區D1:E6為book 或 Names(“computer”).Name=“robot” ‘將地區computer重新命名為robot

(60) Names(“book”).Delete ‘刪除名稱

(61) Names.Add Name:=“ContentList”,_ RefersTo:=“=OFFSET(Sheet1!A2,0,0,COUNTA(Sheet2!$A:$A))” ‘動態命名列

(62) Names.Add Name:=“Company”,RefersTo:=“CompanyCar” ‘命名字串CompanyCar

 (63) Names.Add Name:=“Total”,RefersTo:=123456 ‘將數字123456命名為Total。注意數字不能加引號,否則就是命名字串了。

 (64) Names.Add Name:=“MyArray”,RefersTo:=ArrayNum ‘將數組ArrayNum命名為MyArray。

 (65) Names.Add Name:=“ProduceNum”,RefersTo:=“=$B$1”,Visible:=False ‘將名稱隱藏

(66) ActiveWorkbook.Names(“Com”).Name ‘返回名稱字串 公式與函數

 (67) Application.WorksheetFunction.IsNumber(“A1”) '使用工作表函數檢查A1儲存格中的資料是否為數字

(68) Range(“A:A”).Find(Application.WorksheetFunction.Max(Range(“A:A”))).Activate '啟用儲存格範圍A列中最大值的儲存格

(69) Cells(8,8).FormulaArray=“=SUM(R2C[-1]:R[-1]C[-1]*R2C:R[-1]C)” ‘在儲存格中輸入陣列公式。注意必須使用R1C1樣式的運算式 圖表

 (70) ActiveSheet.ChartObjects.Count '擷取當前工作表中圖表的個數

 (71) ActiveSheet.ChartObjects(“Chart1”).Select ‘選中當前工作表中圖表Chart1

(72) ActiveSheet.ChartObjects(“Chart1”).Activate ActiveChart.ChartArea.Select ‘選中當前圖表區域

(73) WorkSheets(“Sheet1”).ChartObjects(“Chart2”).Chart. _ ChartArea.Interior.ColorIndex=2 ‘更改工作表中圖表的圖表區的顏色

 (74) Sheets(“Chart2”).ChartArea.Interior.ColorIndex=2 ‘更改圖表工作表中圖表區的顏色

(75) Charts.Add ‘添加新的圖表工作表

 (76) ActiveChart.SetSourceData Source:=Sheets(“Sheet1”).Range(“A1:D5”), _ PlotBy:=xlColumns ‘指定圖表資料來源並按列排列

 (77) ActiveChart.Location Where:=xlLocationAsNewSheet ‘新圖表作為新圖表工作表

 (78) ActiveChart.PlotArea.Interior.ColorIndex=xlNone ‘將繪圖區顏色變為白色

(79) WorkSheets(“Sheet1”).ChartObjects(1).Chart. _ Export FileName:=“C:MyChart.gif”,FilterName:=“GIF” ‘將圖表1匯出到C盤上並命名為MyChart.gif 表單

 (80) MsgBox “Hello!” '訊息框中顯示訊息Hello

(81) Ans=MsgBox(“Continue?”,vbYesNo) '在訊息框中點擊“是”按鈕,則Ans值為vbYes;點擊“否”按鈕,則Ans值為vbNo。 If MsgBox(“Continue?”,vbYesNo)<>vbYes Then Exit Sub '傳回值不為“是”,則退出

(82) Config=vbYesNo+vbQuestion+vbDefaultButton2 '使用常量的組合,賦值組Config變數,並設定第二個按鈕為預設按鈕

 (83) MsgBox “This is the first line.” & vbNewLine & “Second line.” '在訊息框中強制換行,可用vbCrLf代替vbNewLine。

 (84) MsgBox "the average is :"&Format(Application.WorksheetFunction.Average(Selection),"#,##0.00"),vbInformation, "selection count average" & Chr(13) '應用工作表函數返回所選地區的平均值並按指定格式顯示

 (85) Userform1.Show ‘顯示使用者表單

(86) Load Userform1 ‘載入一個使用者表單,但該表單處於隱藏狀態

 (87) Userform1.Hide ‘隱藏使用者表單

 (88) Unload Userform1 或 Unload Me ‘卸載使用者表單

 (89) (影像控制).Picture=LoadPicture(“映像路徑”) ‘在使用者表單中顯示圖形

(90) UserForm1.Show 0 或 UserForm1.Show vbModeless ‘將表單設定為無模式狀態

 (91) Me.Height=Int(0.88*ActiveWindow.Height) ‘表單高度為當前使用中視窗高度的0.88 Me.Width=Int(0.88*ActiveWindow.Width) ‘表單寬度為當前使用中視窗高度的0.88 事件

(92) Application.EnableEvents=False '禁用所有事件 Application.EnableEvents=True '啟用所有事件 註:不適用於使用者表單控制項觸發的事件 對象

 (93) Set ExcelSheet = CreateObject("Excel.Sheet") ‘建立一個Excel工作表對象 ExcelSheet.Application.Visible = True '設定 Application 對象使 Excel 可見 ExcelSheet.Application.Cells(1, 1).Value = "Data" '在表格的第一個單元中輸入文本 ExcelSheet.SaveAs "C:\TEST.XLS" '將該表格儲存到C:\test.xls 目錄 ExcelSheet.Application.Quit '關閉 Excel Set ExcelSheet = Nothing '釋放該物件變數

 (94) ‘聲明並建立一個Excel對象引用 Dim xlApp As Excel.Application Dim xlBook As Excel.Workbook Dim xlSheet As Excel.WorkSheet Set xlApp = CreateObject("Excel.Application") Set xlBook = xlApp.Workbooks.Add Set xlSheet = xlBook.Worksheets(1)

(95) ‘建立並傳遞一個 Excel.Application 對象的引用 Call MySub (CreateObject("Excel.Application"))

(96) Set d = CreateObject(Scripting.Dictionary) ‘建立一個 Dictionary 物件變數

 (97) d.Add "a", "Athens" '為物件變數添加關鍵字和條目 其他

(98) Application.OnKey “^I”,”macro” '設定Ctrl+I鍵為macro過程的快速鍵

 (99) Application.CutCopyMode=False ‘退出剪下/複製模式

 (100) Application.Volatile True '無論何時工作表中任意儲存格重新計算,都會強制計算該函數 Application.Volatile False '只有在該函數的一個或多個參數發生改變時,才會重新計算該函數

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.