Excel宏

'定义从excel程序、工作表、工作簿等对象

Private mXlapp As Excel.Application  'Excel程序对象
Private mXlbook As Excel.Workbook  '工作簿
Private mXlsts As Excel.Sheets  '注意这里必须用sheets
Private mXlsheet As Excel.Worksheet  '工作表
Private myName As String  '如:000.xlsx
Private mDrawNum As String  '导入的最后一张dwg图纸的图号
Private mtpBomDate() As stMtBom  '导入的最后一张图纸的明细表结构体数据

set mXlapp = getobject("excel.application")  '获取excel对象

也可以 set mXlapp = createobject("excel.application")  '新建excel对象,后面须附上错误处理方法应对未安装excel的情况

set mXlbook = mXlapp .workbook  '分配内存

set mXlsts = xlwb.Worksheets  '分配内存

set mXlsheet = mXlsts (1)    '分配内存

也可以 set mXlsheet = activesheet  '获取活动工作簿

'A1单元格的几种表示方法:

cells(1,"A")  '速度最快

range("A1")  '速度其次

[A1]    '速度最慢

'如果用 i 表示行号,将 i 嵌入上述表示方法中:

cells(i, "A")

range("A" & i)

'其实列也可以用数字表示,列A的索引就是1,B的索引就是2,以此类推:

cells(1, "A") 与 cells(1, 1) 都表示 "A1"

 ******************

零散注意点:

1、range(st.cells(),st.cells()):cells前面必须加sheet的名称。

2、sort排序前必须激活该工作表 sheet.activate

3、遇到长循环容易假死时,在循环前加一个 Doevents 即可。(将控制权交给系统,适当放松一下)

posted @ 2023-10-24 19:20  大力水手008  阅读(51)  评论(0)    收藏  举报