• VB操作Excel


    在工程中添加引用:Microsoft Office 9.0 Object Library 
                       Microsoft Excel 9.0 Object Library      (Excel 2000)
                       

    新建一个Excel

    Dim xlApp As Excel.Application
    Dim book As Excel.Workbook
    Dim sheet As Excel.Worksheet
    Set xlApp = New Excel.Application
    Set xlApp = CreateObject("Excel.Application")
    Set xlBook = xlApp.Workbooks.Add
    Set xlsheet = xlBook.Worksheets.Add
    xlsheet.Cells(1, 1) = "测试" '写入内容
    xlApp.Visible = True
    xlBook.SaveAs ("F:abc.xls") '保存内容
    xlApp.Quit
    Set xlApp = Nothing

    打开已有Excle 
    Dim xlApp As Excel.Application
    Dim book As Excel.Workbook
    Dim sheet As Excel.Worksheet
    Set xlApp = CreateObject("excel.Application")
    Set book = xlApp.Workbooks.Open("F:abc.xls")
    xlApp.Visible = True
    Set xlsheet = book.Worksheets("Sheet4")
    book.Close (True)
    xlApp.Quit
    Set xlApp = Nothing 


    1. Dim i1 As Integer, intCol As Integer, intRow As Integer  
    2.     Dim xlApp As New Excel.Application  
    3.     Dim xlBook As New Excel.Workbook  
    4.     Dim xlSheet As New Excel.Worksheet  
    5.     Dim strName As String, strArray1() As String  
    6.     Dim strS1 As String  
    7.     Dim strD1 As String 

    1. strS1 = CurrentProject.Path + " emplate.xls"  
    2. strD1 = CurrentProject.Path + "" + CStr(Format(Now, "YYYYMMDDHHMMSS")) + "aaa1.xls"  
    1.  Set xlApp = CreateObject("Excel.Application")  
    2.         xlApp.Visible = False  
    1. With xlSheet  
    2.         .Range("F6").Value = strTmp1(1)  
    3.         .Range("H6").Value = strTmp1(2)  
    4.         .Range("F7").Value = CStr(Date)  
    5.         .Range("E10").Value = strTmp1(9)  
    6.         .Range("A15").Value = "To: " + strTmp1(8)  
    7.         .Range("B26").Value = strTmp1(4) + "PACKAGES"  
    8.         .Range("B27").Value = strTmp1(5) + "KGS"  
    9.         .Range("B28").Value = strTmp1(6) + "KGS"  
    10.         .Range("B29").Value = strTmp1(7) + "M3"  
    11.     End With  




    1. 首先创建Excel对象,使用ComObj:  
    2. Dim ExcelID as Excel.Application  
    3. Set ExcelID as new Excel.Application  
    4.   
    5. 1)显示当前窗口:  
    6. ExcelID.Visible:=True;  
    7. 2)更改Excel标题栏:  
    8. ExcelID.Caption:='应用程序调用MicrosoftExcel';  
    9. 3)添加新工作簿:  
    10. ExcelID.WorkBooks.Add;  
    11. 4)打开已存在的工作簿:  
    12. ExcelID.WorkBooks.Open('C:ExcelDemo.xls');  
    13. 5)设置第2个工作表为活动工作表:  
    14. ExcelID.WorkSheets[2].Activate;   
    15. 或ExcelID.WorkSheets['Sheet2'].Activate;  
    16. 6)给单元格赋值:  
    17. ExcelID.Cells[1,4].Value:='第一行第四列';  
    18. 7)设置指定列的宽度(单位:字符个数),以第一列为例:  
    19. ExcelID.ActiveSheet.Columns[1].ColumnsWidth:=5;  
    20. 8)设置指定行的高度(单位:磅)(1磅=0.035厘米),以第二行为例:  
    21. ExcelID.ActiveSheet.Rows[2].RowHeight:=1/0.035;//1厘米  
    22. 9)在第8行之前插入分页符:  
    23. ExcelID.WorkSheets[1].Rows[8].PageBreak:=1;  
    24. 10)在第8列之前删除分页符:  
    25. ExcelID.ActiveSheet.Columns[4].PageBreak:=0;  
    26. 11)指定边框线宽度:  
    27. ExcelID.ActiveSheet.Range['B3:D4'].Borders[2].Weight:=3;  
    28. 1-左 2-右 3-顶4-底 5-斜() 6-斜(/)  
    29. 12)清除第一行第四列单元格公式:  
    30. ExcelID.ActiveSheet.Cells[1,4].ClearContents;  
    31. 13)设置第一行字体属性:  
    32. ExcelID.ActiveSheet.Rows[1].Font.Name:='隶书';  
    33. ExcelID.ActiveSheet.Rows[1].Font.Color :=clBlue;  
    34. ExcelID.ActiveSheet.Rows[1].Font.Bold :=True;  
    35. ExcelID.ActiveSheet.Rows[1].Font.UnderLine:=True;  
    36. 14)进行页面设置:  
    37. a.页眉:  
    38. ExcelID.ActiveSheet.PageSetup.CenterHeader:='报表演示';  
    39. b.页脚:  
    40. ExcelID.ActiveSheet.PageSetup.CenterFooter:='第&P页';  
    41. c.页眉到顶端边距2cm:  
    42. ExcelID.ActiveSheet.PageSetup.HeaderMargin:=2/0.035;  
    43. d.页脚到底端边距3cm:  
    44. ExcelID.ActiveSheet.PageSetup.HeaderMargin:=3/0.035;  
    45. e.顶边距2cm:  
    46. ExcelID.ActiveSheet.PageSetup.TopMargin:=2/0.035;  
    47. f.底边距2cm:  
    48. ExcelID.ActiveSheet.PageSetup.BottomMargin:=2/0.035;  
    49. g.左边距2cm:  
    50. ExcelID.ActiveSheet.PageSetup.LeftMargin:=2/0.035;  
    51. h.右边距2cm:  
    52. ExcelID.ActiveSheet.PageSetup.RightMargin:=2/0.035;  
    53. i.页面水平居中:  
    54. ExcelID.ActiveSheet.PageSetup.CenterHorizontally:=2/0.035;  
    55. j.页面垂直居中:  
    56. ExcelID.ActiveSheet.PageSetup.CenterVertically:=2/0.035;  
    57. k.打印单元格网线:  
    58. ExcelID.ActiveSheet.PageSetup.PrintGridLines:=True;  
    59. 15)拷贝操作:  
    60. a.拷贝整个工作表:  
    61. ExcelID.ActiveSheet.Used.Range.Copy;  
    62. b.拷贝指定区域:  
    63. ExcelID.ActiveSheet.Range['A1:E2'].Copy;  
    64. c.从A1位置开始粘贴:  
    65. ExcelID.ActiveSheet.Range.['A1'].PasteSpecial;  
    66. d.从文件尾部开始粘贴:  
    67. ExcelID.ActiveSheet.Range.PasteSpecial;  
    68. 16)插入一行或一列:  
    69. a.ExcelID.ActiveSheet.Rows[2].Insert;  
    70. b.ExcelID.ActiveSheet.Columns[1].Insert;  
    71. 17)删除一行或一列:  
    72. a.ExcelID.ActiveSheet.Rows[2].Delete;  
    73. b.ExcelID.ActiveSheet.Columns[1].Delete;  
    74. 18)打印预览工作表:  
    75. ExcelID.ActiveSheet.PrintPreview;  
    76. 19)打印输出工作表:  
    77. ExcelID.ActiveSheet.PrintOut;  
    78. 20)工作表保存:  
    79. IfnotExcelID.ActiveWorkBook.Savedthen  
    80.     ExcelID.ActiveSheet.PrintPreview  
    81. Endif  
    82. 21)工作表另存为:  
    83. ExcelID.SaveAs('C:ExcelDemo1.xls');  
    84. 22)放弃存盘:  
    85. ExcelID.ActiveWorkBook.Saved:=True;  
    86. 23)关闭工作簿:  
    87. ExcelID.WorkBooks.Close;  
    88. 24)退出Excel:  
    89. ExcelID.Quit;  
    90. 25)设置工作表密码:  
    91. ExcelID.ActiveSheet.Protect"123",DrawingObjects:=True,Contents:=True,Scenarios:=True  
    92. 26)EXCEL的显示方式为最大化  
    93. ExcelID.Application.WindowState=xlMaximized   
    94. 27)工作薄显示方式为最大化  
    95. ExcelID.ActiveWindow.WindowState=xlMaximized   
    96. 28)设置打开默认工作薄数量  
    97. ExcelID.SheetsInNewWorkbook=3  
    98. 29)'关闭时是否提示保存(true保存;false不保存)  
    99. ExcelID.DisplayAlerts=False   
    100. 30)设置拆分窗口,及固定行位置  
    101. ExcelID.ActiveWindow.SplitRow=1  
    102. ExcelID.ActiveWindow.FreezePanes=True  
    103. 31)设置打印时固定打印内容  
    104. ExcelID.ActiveSheet.PageSetup.PrintTitleRows="$1:$1"   
    105. 32)设置打印标题  
    106. ExcelID.ActiveSheet.PageSetup.PrintTitleColumns=""  
    107. 33)设置显示方式(分页方式显示)  
    108. ExcelID.ActiveWindow.View=xlPageBreakPreview   
    109. 34)设置显示比例  
    110. ExcelID.ActiveWindow.Zoom=100   
    111. 35)让Excel响应DDE请求  
    112. Ex.Application.IgnoreRemoteRequests=False  

    1. objExl.Rows("1:1").Select         '选中第一行  
    2.     objExl.Selection.Font.Bold = True   '设为粗体  
    3.     objExl.Selection.Font.Size = 24     '设置字体大小  
    4.     objExl.Cells.EntireColumn.AutoFit  '自动调整列宽  
    5.     objExl.ActiveWindow.SplitRow = 1  '拆分第一行  
    6.     objExl.ActiveWindow.SplitColumn = 0   '拆分列  
    7.     objExl.ActiveWindow.FreezePanes = True   '固定拆分  
    8.     objExl.ActiveSheet.PageSetup.PrintTitleRows = "$1:$1"  '设置打印固定行  
    9.     objExl.ActiveSheet.PageSetup.PrintTitleColumns = ""    '打印标题  
    10.     objExl.ActiveSheet.PageSetup.RightFooter = "打印时间: " & _  
    11.                                                Format(Now, "yyyy年mm月dd日 hh:MM:ss")  
    12.     objExl.ActiveWindow.View = xlPageBreakPreview    '设置显示方式  
    13.     objExl.ActiveWindow.Zoom = 100                 '设置显示大小  
    14.     '给工作表加密码  
    15.     objExl.ActiveSheet.Protect "123", DrawingObjects:=True, _  
    16.                                Contents:=True, Scenarios:=True  
    17.     objExl.Application.IgnoreRemoteRequests = False  
    18.     objExl.Visible = True                       '使EXCEL可见  
    19.     objExl.Application.WindowState = xlMaximized    'EXCEL的显示方式为最大化  
    20.     objExl.ActiveWindow.WindowState = xlMaximized    '工作薄显示方式为最大化  
    21.     objExl.SheetsInNewWorkbook = 3           '将默认新工作薄数量改回3个  
    22.     Set objExl = Nothing    '清除对象  
    23.     Me.MousePointer = 0   '修改鼠标  

      1. objExl.SheetsInNewWorkbook = 3  
      2.     objExl.DisplayAlerts = False  '关闭时不提示保存  
      3.     objExl.Quit                '关闭EXCEL  
      4.     objExl.DisplayAlerts = True   '关闭时提示保存  
      5.     Set objExl = Nothing  
  • 相关阅读:
    MVC4.0系统开发新手历程1
    hdu1205(类似 分布垃圾数列)
    python manage.py startapp app 时候报错No module named _sqlite3
    delphi 文件夹权限设置(执行一个小脚本的笨办法)
    FreeBSD 10安装KDE桌面环境简介(亲测bsdconfig命令有效)
    Qt的目录依赖问题----怎样生成一个绿色的Qt软件包
    Qt5位置相关函数异同详解(附源码)
    Qt 设置背景图片3种方法(三种方法:QPalette调色板,paintEvent,QSS)
    简单实现android和wp聊天
    进程间通讯之mmap文件共享
  • 原文地址:https://www.cnblogs.com/wuyuxin/p/7017353.html
Copyright © 2020-2023  润新知