专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »VB教程 » vbexcel:浅谈Excel 的VB编程 »正文

vbexcel:浅谈Excel 的VB编程

来源: 发布时间:星期四, 2009年2月12日 浏览:601次 评论:0


excel是个优秀电子表格软件Software如果你编需要以报表形式显示最终结果它会是个不错选择你可以通过vb控制excel显示数据表格如果你不愿意深入了解excel这些琐碎细节也不是没有权宜的计:你可以打开excel中工具→宏→录制新宏然后进行手工操作结束后把所录宏代码贴进你vb就行这样得到般都能正常运行但其中宏代码往往不够简洁效率和可读性都不高 ---- excel编程碰到个问题是表头有时表头形式比较复杂需要横向或纵向合并单元格请放心只要没有斜杠excel都能应付得了 ---- 例如合并a2~a5这4个单元格你录制宏代码会是这样: range(\"a2:a5\").select

with selection

.horizontalalignment = xlcenter

.verticalalignment = xlbottom

.wraptext = false

.orientation = 0

.addindent = false

.shrinktofit = false

.mergecells = false

end with

selection.merge
---- 而自己编程只要句 range.(“a2:a5”).mergecells=true 就可以解决问题

---- 表头形式定了再就是表头内容如果单元格中文本长度超过了列宽往往只能显示部分内容行尾那内容则会“越境”进入右边那个空白单元格很不美观这个问题可以通过在中设置列宽加以解决 ---- columns(14).columnwidth=12 ‘设置第14列列宽为12(缺省列宽为8.38) ---- 如果你不愿意劳神去逐列估计实际所需列宽干脆来行 ---- columns(“a:i”).autofit ‘a到i列自动调整列宽 ---- 让excel随机应变吧 ---- 但也许你不喜欢这种思路方法认为表头撑大了列宽弄得浏览张小表格还得向右滚动太不方便了要是能保持默认列宽让文本自动换行就好了没问题excel包你满意 ---- rows(3).wraptext=true ‘让第 3行各单元格中文本自动换行 ---- 不过你最好再加句 rows(3) .verticalalignment = xltop 让表头自动向上对齐这样比较符合习惯 ---- 你还可以给表头打上底色让你读者不至于看了打哈欠 ---- rows(2). erior .colorindex = 5 \'设置第2行底色为蓝色 ---- 再给表格标题上色这样更醒目 ---- rows(1).font.colorindex=4 ---- 表头完成后该填数据了个地填实在是太慢了如果你数据是存放在个 2维那问题就简单多了 dim data(3,4)

………… ‘数据处理

range(“a2:d4”).value=data

---- 这样可以次填入个表所有数据够快了吧!不过提醒range对象大小最好和匹配小了无法显示所有数据大了则会在空白单元格只填入“n/a”表示没有取得数据

---- 如果需要在结果中显示多个同样规格数据表想在range对象中加入循环变量这也好办 dim cell11,cell2

dim data(3,4)

…………

for i =1 to 40

………… ‘数据处理

cell1=worksheets(\"sheet1\").cells(5*i-4,1)

cell2=worksheets(\"sheet1\").cells(5*i-2,4)

worksheets(\"sheet1\").range(cell1,cell2).value=data

next i

---- 表格填完了现在该打表格线了以下几条语句可以满足你要求:

with worksheets(\"sheet1\").range(cell1,cell2).borders

.linestyle=xlcontinuous

.weight=xlthin

end with

---- 好了有关excelvb编程今天就讲到这儿吧

0

相关文章

读者评论

发表评论

  • 昵称:
  • 内容: