发新话题
打印

[高级] 直接调用Excel中的函数的方法-南客

直接调用Excel中的函数的方法-南客

直接调用Excel中的函数的方法,示例如下:
复制内容到剪贴板
代码:
close;
<%
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

%>

TOP

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

14) 进行页面设置:

a.页眉:
oExcel.ActiveSheet.PageSetup.CenterHeader = "报表演示"
b.页脚:
oExcel.ActiveSheet.PageSetup.CenterFooter = "第&P页"
c.页眉到顶端边距2cm:
oExcel.ActiveSheet.PageSetup.HeaderMargin = 2/0.035
d.页脚到底端边距3cm:
oExcel.ActiveSheet.PageSetup.HeaderMargin = 3/0.035
e.顶边距2cm:
oExcel.ActiveSheet.PageSetup.TopMargin = 2/0.035
f.底边距2cm:
oExcel.ActiveSheet.PageSetup.BottomMargin = 2/0.035
g.左边距2cm:
oExcel.ActiveSheet.PageSetup.LeftMargin = 2/0.035
h.右边距2cm:
oExcel.ActiveSheet.PageSetup.RightMargin = 2/0.035
i.页面水平居中:
oExcel.ActiveSheet.PageSetup.CenterHorizontally = 2/0.035
j.页面垂直居中:
oExcel.ActiveSheet.PageSetup.CenterVertically = 2/0.035
k.打印单元格网线:
oExcel.ActiveSheet.PageSetup.PrintGridLines = True

15) 拷贝操作:

a.拷贝整个工作表:
oExcel.ActiveSheet.Used.Range.Copy
b.拷贝指定区域:
oExcel.ActiveSheet.Range( "A1:E2" ).Copy
c.从A1位置开始粘贴:
oExcel.ActiveSheet.Range.( "A1" ).PasteSpecial
d.从文件尾部开始粘贴:
oExcel.ActiveSheet.Range.PasteSpecial

16) 插入一行或一列:
a. oExcel.ActiveSheet.Rows(2).Insert
b. oExcel.ActiveSheet.Columns(1).Insert

17) 删除一行或一列:
a. oExcel.ActiveSheet.Rows(2).Delete
b. oExcel.ActiveSheet.Columns(1).Delete

18) 打印预览工作表:
oExcel.ActiveSheet.PrintPreview

19) 打印输出工作表:
oExcel.ActiveSheet.PrintOut

20) 工作表保存:
if not oExcel.ActiveWorkBook.Saved then
oExcel.ActiveSheet.PrintPreview

21) 工作表另存为:
oExcel.SaveAs( "C:\Excel\Demo1.xls" )

22) 放弃存盘:
oExcel.ActiveWorkBook.Saved = True

23) 关闭工作簿:
oExcel.WorkBooks.Close

24) 退出 Excel:
oExcel.Quit

(二) 使用VBS 控制Excle二维图

1)选择当第一个工作薄第一个工作表
set oSheet=oExcel.Workbooks(1).Worksheets(1)

2)增加一个二维图
achart=oSheet.chartobjects.add(100,100,200,200)

3)选择二维图的形态
achart.chart.charttype=4

4)给二维图赋值
set series=achart.chart.seriescollection
range="sheet1!r2c3:r3c9"
series.add range,true

5)加上二维图的标题
achart.Chart.HasTitle=True
achart.Chart.ChartTitle.Characters.Text=" Excle二维图"

6)改变二维图的标题字体大小
achart.Chart.ChartTitle.Font.size=18

7)给二维图加下标说明
achart.Chart.Axes(xlCategory, xlPrimary).HasTitle = True
achart.Chart.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "下标说明"

8)给二维图加左标说明
achart.Chart.Axes(xlValue, xlPrimary).HasTitle = True
achart.Chart.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "左标说明"

9)给二维图加右标说明
achart.Chart.Axes(xlValue, xlSecondary).HasTitle = True
achart.Chart.Axes(xlValue, xlSecondary).AxisTitle.Characters.Text = "右标说明"

10)改变二维图的显示区大小
achart.Chart.PlotArea.Left = 5
achart.Chart.PlotArea.Width = 223
achart.Chart.PlotArea.Height = 108

TOP

用EXCEL的宏记录能自动录下所作动作的VBA代码。和VBS几乎可通用。
[url=http://www.pinggu.org/bbs/X_AdvCom_Get.asp?UserID=109193][IMG]http://www.pinggu.org/bbs/images/logo2.gif[/IMG][/URL][url=http://down.cenet.org.cn/download.asp?code=Jqtprrnotnmoo]经济学资源下载网站[/url]

TOP

TOP

呵呵!又见老师给我们上调用Excel函数课了,我们大家又能学习到新的知识了。真高兴!
   请教老师某单元格(第一行第四列或d1)为0,而我又不让它显示出来,用什么命令语句呢?

TOP

引用:
闲人 于 2004-12-21 22:47 写道:
呵呵!又见老师给我们上调用Excel函数课了,我们大家又能学习到新的知识了。真高兴!
   请教老师某单元格(第一行第四列或d1)为0,而我又不让它显示出来,用什么命令语句呢?
我已搞定了.

TOP

资料珍贵,下载保存
衷心感谢!!!

TOP

引用:
Originally posted by junson at 2005-1-24 03:53:
资料珍贵,下载保存
衷心感谢!!!

TOP

DDDDDDDDDD

TOP

ok

TOP

ok

TOP

ok

TOP

备份下来 参考 学习 谢谢分享

TOP

谢谢

TOP

中心感谢!!!!!!

中心感谢!!!!!!

TOP

感谢!!!!!!

TOP

感谢,但看不懂.

TOP

保存

TOP

学习! 看贴回贴,在得分!

TOP

发新话题
报警岗亭