加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

vb 操作excel(持续更新)

发布时间:2020-12-16 23:07:30 所属栏目:大数据 来源:网络整理
导读:Dim xlApp As Object Dim xlRefBook As Object '原EXCEL Dim xlRefSheet As Object '原EXCEL SHEET Dim xlNewBook As Object '新建EXCEL Dim xlNewSheet As Object '新建EXCEL SHEET Set xlApp = CreateObject("Excel.Application") '创建EXCEL应用类 Set xl

Dim xlApp As Object
Dim xlRefBook As Object '原EXCEL
Dim xlRefSheet As Object '原EXCEL SHEET

Dim xlNewBook As Object '新建EXCEL
Dim xlNewSheet As Object '新建EXCEL SHEET

Set xlApp = CreateObject("Excel.Application") '创建EXCEL应用类
Set xlRefBook = xlApp.Workbooks.Open("F:/Visual Studio 6.0 test-code/my_test/my_vb_test_001/test.xls") '打开EXCEL工作簿
Set xlRefSheet = xlRefBook.Worksheets("TEST")

Set xlNewBook = xlApp.Workbooks.Add '增加一个工作薄
xlRefSheet.Copy After:=xlNewBook.Worksheets(xlNewBook.sheets.Count) '复制原sheet至新workbook中 复制至sheet最后
Set xlNewSheet = xlNewBook.Worksheets("TEST") '设置新sheet

xlNewSheet.Activate '激活工作表



xlsheet.Cells(1,1) = "12345678" '给单元格第1行第1列赋值

xlsheet.range("A7").Value = "777"‘给单元格A7赋值

xlNewSheet.range(xlNewSheet.Cells(1,1),xlNewSheet.Cells(2,2)).merge '合并 单元格

xlNewSheet.range("A13:Q13").MergeCells = True '合并A13到Q13单元格

range("A13").MergeArea.MergeCells '判断单元格是否是 合并单元格

range("A13").MergeArea.Address '取得合并单元格的范围

xlNewSheet.range("D1").Borders.LineStyle = 1 '设置边框 range(cells(1,cells(1,2))

xlNewSheet.range(xlNewSheet.Cells(1,2)).HorizontalAlignment = 3 '单元格水平对齐 1:左 2:右 3:中
'xlnewsheet.cells(1,1).HorizontalAlignment = 3 '效果同上
xlNewSheet.range(xlNewSheet.Cells(1,2)).VerticalAlignment = 2 '单元格垂直对齐 1:上 2:中 3:下
'xlnewsheet.cells(1,1).VerticalAlignment = 2 '效果同上

With xlNewSheet
.Cells(3,1) = "AAA"
.Cells(3,1).Font.Bold = True '设置粗体
.Cells(3,1).Interior.ColorIndex = 6 '设置单元格颜色 (2是白色,3是红色,4是绿色,6是黄色)

.Cells(3,2).NumberFormatLocal = "@" '设置格式为文本
.Cells(3,2) = "2009年08月"

.Cells(3,2).borders.LineStyle = 1 '设置边框线条的类型 borders(i) 1:左边框 2:右边框 3:上边框 4:下边框 5:斜 6:斜 不设置:全边框
'LineStyle值:1与7-细实、2-细虚、4-点虚、9-双细实线

.Cells(3,2).borders.Weight = 3 '设置 单元格边框宽度

.Cells(3,2).ColumnWidth = 15 '设置 单元格宽度
'EXCEL不能设定某个单元格宽度,只能设定单元格所在列的宽度。
'选中要修改的单元格(或同一列中的其他单元格)然后用ColumnWidth设定宽度
.Cells(3,2).EntireColumn.AutoFit '设置 整列单元格自适应宽度

xlApp.run "宏名","参数","参数" '运行宏

如要使 excel运行宏需设置安全性为中 = > 工具>宏>安全性

vb中运行宏 原(模板)book 不能关闭

使用其他excel的宏 方法为 xlApp.run "exce文件名.xls!宏名","参数"

数据组合(数据分级显示): Group

Excel : 数据>组及分级显示>组合

vb:

行组合:

xlNewSheet.range("3:5").Group => 组合 3行到5行

xlNewSheet.Rows("3:5").Group => 同上

列组合:

xlNewSheet.Columns("A:C").Group => 组合 A列到C列

xlNewSheet.range(.cells(,.cells(,3)).Group=>同上

vb 操作 数据组合的显示方式:

xlNewSheet.Outline.showLevels RowLevels/ColumnLevels:=1 数据组合边上显示的 1 一般为关闭组合(视情况而定)

xlNewSheet.Outline.showLevels RowLevels/ColumnLevels:=2 数据组合边上显示的2 一般为打开组合(视情况而定)

xlNewSheet.Activecell.Address '取得单元格的位置(row,column)

xlNewSheet.cells(1,1).Address => ($A$1)=>A1单元格

xlNewSheet.cells(1,1).row=> 1

xlNewSheet.cells(1,1).column=>1

xlNewSheet.cells(1,1).NumberFormatLocal = "@ " '定义单元格为 user定义(字符型)

xlNewSheet.cells(1,1).NumberFormatLocal = "yyyymmdd" '定义为 年月日(user定义)

xlNewSheet.cells(1,1).NumberFormatLocat = "#,###" '定义为 (user定义) 逗号分隔 小数位数0

输入0时 会变为空

xlNewSheet.cells(1,##0_" '定义为 数值型 逗号分隔 小数位数0 (录制宏 实验可得出其他)

输入0是 不会为空


End With

xlapp.Visible = True '设置EXCEL对象可见(或不可见)

xlNewBook .SaveAs ("D:/123.xls") xlRefBook .Close (True) '关闭EXCEL工作簿 xlApp.Quit '关闭EXCEL

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读