VBS中调用Excel函数的方法

Filed Under (VBS技术) by 有为 on 03-12-2008

Set oExcel= CreateObject(”excel.application”)
oExcel.Visible = True  ‘Excel是否可视,若赋值为True则可视,但速度会慢得多
oExcel.Workbooks.Add
Set oSheet = oExcel.Workbooks(1).Worksheets(”sheet1″)
oSheet.Activate
oSheet.Cells(1, 1) = 1
oSheet.Cells(1, 2) = 2
oSheet.Cells(1, 3) = “=SUM(A1:B1)”
oSheet.Cells(1, 4) = “=AVERAGE(A1:B1)”
Set oExcel = Nothing

VBS控制Excel的一些常见方法

Filed Under (VBS技术) by 有为 on 03-12-2008

VBS控制Excel的一些常见方法:
(一) 使用动态创建的方法
首先创建 Excel 对象,使用ComObj:
oExcel = CreateObject( “Excel.Application” )
1) 显示当前窗口:
oExcel.Visible = True
2) 更改 Excel 标题栏:
oExcel.Caption = “应用程序调用 Microsoft Excel”
3) 添加新工作簿:
oExcel.WorkBooks.Add
4) 打开已存在的工作簿:
oExcel.WorkBooks.Open( “C:\Excel\Demo.xls” )
5) 设置第2个工作表为活动工作表:
oExcel.WorkSheets(2).Activate

oExcel.WorksSheets( “Sheet2″ ).Activate
6) 给单元格赋值:
oExcel.Cells(1,4).Value = “第一行第四列”
7) 设置指定列的宽度(单位:字符个数),以第一列为例:
oExcel.ActiveSheet.Columns(1).ColumnsWidth = 5
8)设置指定行的高度(单位:磅)(1磅=0.035厘米),以第二行为例:
oExcel.ActiveSheet.Rows(2).RowHeight = 1/0.035 ‘ 1厘米
9) 在第8行之前插入分页符:
oExcel.WorkSheets(1).Rows(8).PageBreak = 1
10) 在第8列之前删除分页符:
oExcel.ActiveSheet.Columns(4).PageBreak = 0
11) 指定边框线宽度:
oExcel.ActiveSheet.Range( “B3:D4″ ).Borders(2).Weight = 3
1-左 2-右 3-顶 4-底 5-斜( \ ) 6-斜( / )
12) 清除第一行第四列单元格公式:
oExcel.ActiveSheet.Cells(1,4).ClearContents
13) 设置第一行字体属性:
oExcel.ActiveSheet.Rows(1).Font.Name = “隶书”
oExcel.ActiveSheet.Rows(1).Font.Color = clBlue
oExcel.ActiveSheet.Rows(1).Font.Bold = True
oExcel.ActiveSheet.Rows(1).Font.UnderLine = True « 阅读全文 »

俺写的一个用于EXCEL取值添空的VBS(因我院研部添报成绩需要)

Filed Under (VBS技术) by 有为 on 24-10-2008

Sub getName()

Dim 工作表名 As String
Dim 源_行 As Integer
Dim 源_列 As Integer
Dim 源行间隔 As Integer
Dim 目标_行 As Integer
Dim 目标_列 As Integer
Dim 替换个数 As Integer

源_行 = 3  ‘可修改,指明从哪里复制 行
源_列 = 2  ‘可修改,指明从哪里复制 列
目标间隔 = 41  ‘可修改
目标_行 = 1  ‘可修改,指明要覆盖到的行
目标_列 = 11  ‘可修改,指明要覆盖到的列
替换个数 = 10  ‘可修改,有多少个人
源工作表名 = “Sheet2″  ‘可修改,根据需要修改
目标工作表名 = “Sheet1″  ‘可修改,根据需要修改

Dim i As Integer
For i = 0 To 替换个数 – 1
Worksheets(目标工作表名).Cells(目标_行, 目标_列).Value = Worksheets(源工作表名).Cells(源_行 + i, 源_列).Value
目标_行 = 目标_行 + 目标间隔
Next i

End Sub