Excel启用宏的详细教程

Python025

Excel启用宏的详细教程,第1张

Excel启用宏的详细教程

使用Excel的VBA开发的Excel文档,在Excel中运行时需要开启Excel的宏功能,否则此文档的VBA自动化功能将被完全屏蔽,文档的功能无法实现。

因此,在打开这些Excel程序文件之前,您需要先对您的Excel宏安全性进行设置(设置永久有效,在同一台电脑上无需再次设置)

在Excel2003版本中,可以依以下步骤操作:

1,在Excel的菜单栏上依次单击“工具”——“宏”——“安全性”,打开下图所示的“安全性”对话框,

2,在“安全级”选项卡中将宏的安全级别设置为“中”或“低”。其中推荐使用“中”级,这样的设置并不会降低您的安全性,您仍然对任意一个宏文件都拥有主动选择是否运行的'权力。

在宏的安全性级别设置成功后,再次打开Excel程序文件时,会出现下图所示信息框,此时点击“启用宏”按钮即可使本程序正常运行:

在Excel2007/2010版本中,可以依以下步骤操作:

1,依次单击Excel的Office按钮(2010版本为“文件”按钮)——“Excel选项”,打开下图所示的“Excel选项”选项卡,在左侧列表中选择“信任中心”,在右侧出现的窗口中点击“信任中心设置”按钮,

2,打开“信任中心”选项卡,在左侧选择“宏设置”,在右侧出现的窗口中选择“禁用所有宏,并发出通知”选项,单击确定完成。

在宏的安全性级别设置成功后,再次打开Excel程序文件时,在信息栏(编辑栏上方)会出现下图所示的警告信息,此时点击其中的“选项”按钮打开Office安全选项对话框,在其中选择“启用此内容”选项并确定即可使本程序正常运行。

首先想些数据excel文件简单办应该考虑CSV

Ruby支持比较且用excel直接打前提excel没特别复杂表结构式渲染等

例:

Ruby代码

outfile = File.open('csvout', 'wb')

CSV::Writer.generate(outfile) do |csv|

csv <<['c1', nil, '', '"', "\r\n", 'c2']

...

end

outfile.close

其般用考虑spreadsheet像楼提供连接所说例适合读取复杂适合参考用复杂建议看面说明

excel文件

想excel文件首先像写文件先加载spreadsheet类库指定编码接着创建Workbook

Ruby代码

book = Spreadsheet::Workbook.new

workbook基础创建Worksheet表单

Ruby代码

sheet1 = book.create_worksheet

用式创建表单:

Ruby代码

sheet2 = book.create_worksheet :name =>'My Second Worksheet'

sheet1.name = 'My First Worksheet'

我采用式加载数据表单Worksheet#[]=,

Worksheet#update_row, 或者直接给指定单元格复制

Ruby代码

sheet1.row(0).concat %w{Name Country Acknowlegement}

sheet1[1,0] = 'Japan'

row = sheet1.row(1)

row.push 'Creator of Ruby'

row.unshift 'Yukihiro Matsumoto'

sheet1.row(2).replace [ 'Daniel J. Berger', 'U.S.A.',

'Author of original code for Spreadsheet::Excel' ]

sheet1.row(3).push 'Charles Lowe', 'Author of the ruby-ole Library'

sheet1.row(3).insert 1, 'Unknown'

sheet1.update_row 4, 'Hannes Wyss', 'Switzerland', 'Author'

于格式处理:

Ruby代码

sheet1.row(0).height = 18

format = Spreadsheet::Format.new :color =>:blue,

:weight =>:bold,

:size =>18

sheet1.row(0).default_format = format

bold = Spreadsheet::Format.new :weight =>:bold

4.times do |x| sheet1.row(x + 1).set_format(0, bold) end

保存excel文件

Ruby代码

book.write '/path/to/output/excel-file.xls'

windows平台考虑WIN23OLE,处理windows转换强

Ruby代码

require 'win23ole'

application = WIN32OLE.new('Excel.Application')

worksheet

=application.Workbooks.Open(excelFileName).Worksheets(workSheetName)

worksheet.Activate

contLoop = true # Dummy counter for the loop

while contLoop do

colVal = worksheet.Cells(row, column).Value

if (colVal) then

# 字段非空则表示行值

# 处理读取

do processing ....

else

# 表明结束

# End the loop

contLoop = false

end

# go to the next Row

row += 1

end

# we are done

application.Workbooks.Close

excel宏的制作方法如下:

第一步,录制新宏

选择“工具-宏-录制新宏”,在对话框中,为你将要做的宏设定一个快捷键。确定之后,可以看到一个小的工具栏,上面有个“停”字。从现在开始,你的每一步操作都会被记录下来,直到单击“停”字下面的按钮,结束宏录制过程。替换默认宏名主要是便于分别这些宏。宏名最多可为255个字符,并且必须以字母开始。其中可用的字符包括:字母、数字和下划线。宏名中不允许出现空格。通常用下划线代表空格。

第二步,执行宏

录制完一个宏后之后就可以执行它了,只要,就会重复刚才的一系列操作。

当执行一个宏时,EXCEL按照宏语句执行的情况就像VBA代码在对EXCEL进行“遥控”。但VBA的“遥控”不仅能使操作变得简便,还能使你获得一些使用EXCEL标准命令所无法实现的功能。

要执行刚才录制的宏,可以按以下步骤进行:

1)选择任何一个单元格。

2)选择“工具”—“宏”—“宏”,显示“宏”对话框。

3)选择自己录制的宏名,选择“执行”。

或者是直接按下按初始设定的快捷键,也可以执行宏。

查看录制的代码

选择“工具”—“宏”—“宏”,显示“宏”对话框。

单击列表中的自己定义的宏名,选择“编辑”按钮。

此时,会打开VBA的编辑器窗口(VBE),在这里我们可以看到VBA的语句。

编辑录制的宏

需要编辑宏是因为以下三个方面的原因。一:在录制中出错而不得不修改。二:录制的宏中有多余的语句需要删除,提高宏的运行速度。三:希望增加宏的功能。比如:加入判断或循环等无法录制的语句。

录制宏的局限性

希望自动化的许多EXCEL过程大多都可以用录制宏来完成.但是宏记录器存在以下局限性.通过宏记录器无法完成的工作有:

1)录制的宏无判断或循环能力。2)人机交互能力差,即用户无法进行输入,计算机无法给出提示。3)无法显示EXCEL对话框。4)无法显示自定义窗体。