感谢3楼的跟贴,但错误太多,有几百处,本人校对后重新贴出,望朋友们以后精益求精。
0)首先创建Excel对象,使用ComObj
Dim xla as Excel.Application
set xla = new Excel.Application
1)显示当前窗口:
xla.Visible=True
2)更改Excel标题栏:
xla.Caption="应用程序调用MicrosoftExcel"
3)添加新工作簿:
xla.WorkBooks.Add
4)打开已存在的工作簿:
xla.WorkBooks.Open("C:\Excel\Demo.xls")
5)设置第2个工作表为活动工作表:
xla.WorkSheets(2).Activate
或xla.WorkSheets("Sheet2").Activate
6)给单元格赋值:
xla.Cells(1,4).Value="第一行第四列"
7)设置指定列的宽度(单位:字符个数),以第一列为例:
xla.ActiveSheet.Columns(1).ColumnsWidth=5
8)设置指定行的高度(单位:磅)(1磅=0.035厘米),以第二行为例
xla.ActiveSheet.Rows(2).RowHeight=1/0.035'1厘米
9)在第8行之前插入分页符:
xla.WorkSheets(1).Rows(8).PageBreak=1
10)在第8列之前删除分页符:
xla.ActiveSheet.Columns(4).PageBreak=0
11)指定边框线宽度:
xla.ActiveSheet.Range("B3:D4").Borders(2).Weight=3
1-左2-右3-顶4-底5-斜(\)6-斜(/)
12)清除第一行第四列单元格公式:
xla.ActiveSheet.Cells(1,4).ClearContents
13)设置第一行字体属性:
xla.ActiveSheet.Rows(1).Font.Name="隶书"
xla.ActiveSheet.Rows(1).Font.Color=clBlue
xla.ActiveSheet.Rows(1).Font.Bold=True
xla.ActiveSheet.Rows(1).Font.UnderLine=True
14)进行页面设置:
xla.ActiveSheet.Pageset up.CenterHeader="报表演示"'页眉:
xla.ActiveSheet.Pageset up.CenterFooter="第&P页" '页脚:
xla.ActiveSheet.Pageset up.HeaderMargin=2/0.035 '页眉到顶端边距2cm
xla.ActiveSheet.Pageset up.HeaderMargin=3/0.035 '页脚到底端边距3cm
xla.ActiveSheet.Pageset up.TopMargin=2/0.035 '顶边距2cm:
xla.ActiveSheet.Pageset up.BottomMargin=2/0.035 '底边距2cm:
xla.ActiveSheet.Pageset up.LeftMargin=2/0.035 '左边距2cm:
xla.ActiveSheet.Pageset up.RightMargin=2/0.035 '右边距2cm:
xla.ActiveSheet.Pageset up.CenterHorizontally=2/0.035'页面水平居中:
xla.ActiveSheet.Pageset up.CenterVertically=2/0.035'页面垂直居中:
xla.ActiveSheet.Pageset up.PrintGridLines=True '打印单元格网线:
15)拷贝操作:
a.拷贝整个工作表:
xla.ActiveSheet.UsedRange.Copy
b.拷贝指定区域:
xlA.ActiveSheet.Range("A1:E2").Copy
c.从A1位置开始粘贴:
xlA.ActiveSheet.Range("A1").PasteSpecial
d.从文件尾部开始粘贴:
xla.ActiveSheet.Range.PasteSpecial
16)插入一行或一列:
a.xla.ActiveSheet.Rows(2).Insert
b.xla.ActiveSheet.Columns(1).Insert
17)删除一行或一列:
a.xla.ActiveSheet.Rows(2).Delete
b.xla.ActiveSheet.Columns(1).Delete
18)打印预览工作表:
xla.ActiveSheet.PrintPreview
19)打印输出工作表:
xla.ActiveSheet.PrintOut
20)工作表保存:
If not xla.ActiveWorkBook.Savedthen
xla.ActiveSheet.PrintPreview
End if
21)工作表另存为:
xla.SaveAs("C:\Excel\Demo1.xls")
22)放弃存盘:
xla.ActiveWorkBook.Saved=True
23)关闭工作簿:
xla.WorkBooks.Close
24)退出Excel:
xla.Quit
25)设置工作表密码
xla.ActiveSheet.Protect"123",DrawingObjects=True,_
Contents=True,Scenarios=True
26)EXCEL的显示方式为最大化
xla.Application.WindowState=xlMaximized
27)工作薄显示方式为最大化
xla.ActiveWindow.WindowState=xlMaximized
28)设置打开默认工作薄数量
xla.SheetsInNewWorkbook=3
29)关闭时是否提示保存(true保存false不保存)
xla.DisplayAlerts=False
30)设置拆分窗口,及固定行位置
xla.ActiveWindow.SplitRow=1
xla.ActiveWindow.FreezePanes=True
31)设置打印时固定打印内容
xla.ActiveSheet.Pageset up.PrintTitleRows="$1:$1"
32)设置打印标题
xla.ActiveSheet.Pageset up.PrintTitleColumns=""
33)设置显示方式(分页方式显示)
xla.ActiveWindow.View=xlPageBreakPreview
34)设置显示比例
xla.ActiveWindow.Zoom=100
35)让Excel响应DDE请求
Ex.Application.IgnoreRemoteRequests=False
36)用VB操作EXCEL
Private Sub Command3_Click()
On Error GoTo err1
Dim I As Long
Dim j As Long
Dim xla As Excel.Application '声明对象变量
Me.MousePointer = 11 '改变鼠标样式
Set xla = New Excel.Application '初始化对象变量
xla.SheetsInNewWorkbook = 1 '将新建的工作薄数量设为1
xla.Workbooks.Add '增加一个工作薄
xla.Sheets(xla.Sheets.Count).Name = "book1" '修改工作薄名称
xla.Sheets.Add , xla.Sheets("book1") '增加第二个工作薄在第一个之后
xla.Sheets(xla.Sheets.Count).Name = "book2"
xla.Sheets.Add , xla.Sheets("book2") '增加第三个工作薄在第二个之后
xla.Sheets(xla.Sheets.Count).Name = "book3"
xla.Sheets("book1").Select '选中工作薄<book1>
For I = 1 To 50 '循环写入数据
For j = 1 To 5
If I = 1 Then
xla.Selection.NumberFormatLocal = "@" '设置格式为文本
xla.Cells(I, j) = "E" & I & j
Else
xla.Cells(I, j) = I & j
End If
Next
Next
xla.Rows("1:1").Select '选中第一行
xla.Selection.Font.Bold = True '设为粗体
xla.Selection.Font.Size = 24 '设置字体大小
xla.Cells.EntireColumn.AutoFit '自动调整列宽
xla.ActiveWindow.SplitRow = 1 '拆分第一行
xla.ActiveWindow.SplitColumn = 0 '拆分列
xla.ActiveWindow.FreezePanes = True '固定拆分
xla.ActiveSheet.Pagesetup.PrintTitleRows = "$1:$1" '设置打印固定行
xla.ActiveSheet.Pagesetup.PrintTitleColumns = "" '打印标题_
xla.ActiveSheet.Pagesetup.RightFooter = "打印时间:" & _
Format(Now, "yyyy年mm月dd日hh:MM:ss")
xla.ActiveWindow.View = xlPageBreakPreview '设置显示方式
xla.ActiveWindow.Zoom = 100 '设置显示大小
'给工作表加密码
xla.ActiveSheet.Protect "123", DrawingObjects=True, _
Contents=True, Scenarios=True
xla.Application.IgnoreRemoteRequests = False
xla.Visible = True '使EXCEL可见
xla.Application.WindowState = xlMaximized 'EXCEL的显示方式为最大化
xla.ActiveWindow.WindowState = xlMaximized '工作薄显示方式为最大化
xla.SheetsInNewWorkbook = 3 '将默认新工作薄数量改为3个
Set xla = Nothing '清除对象
Me.MousePointer = 0 '修改鼠标
Exit Sub
err1
xla.SheetsInNewWorkbook = 3
xla.DisplayAlerts = False '关闭时不提示保存
xla.Quit '关闭EXCEL
xla.DisplayAlerts = True '关闭时提示保存
Set xla = Nothing
Me.MousePointer = 0
End Sub
[此贴子已经被作者于2005-4-8 15:06:14编辑过] |