您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

机房管理系统vb与excel链接2

2024/3/8 12:02:21发布18次查看
由于我之前找的文档让我以为在创建表里面走了很大的误区,所以当时我直接就在学生管理系统的文件夹里建了张表,运行时候直接打开这样表就行了。但是这里面还是存在着很大的误区。 后来我看了周坤的博客感觉他比我的代码优化了好多。我代码里面的好多问题都在
由于我之前找的文档让我以为在创建表里面走了很大的误区,所以当时我直接就在学生管理系统的文件夹里建了张表,运行时候直接打开这样表就行了。但是这里面还是存在着很大的误区。
后来我看了周坤的博客感觉他比我的代码优化了好多。我代码里面的好多问题都在他这里面得到解决。(orz!!!我做了一下午,忽然有种白做的感觉。)
“导出为excel”这个按钮大体就是点击按钮便创建一张表,然后把myflexgrid写到表格里面。
先看一下我的代码的问题:
set xlapp = createobject(excel.application) '创建excel应用类
xlapp.visible = true '设置excel可见
1.
set xlbook = xlapp.workbooks.open(app.path & \新建 microsoft excel 工作表.xls) '打开excel工作簿
set xlsheet = xlbook.worksheets(1) '打开excel工作表
xlsheet.activate '激活工作表
2.
xlsheet.cells(1, 1) = myflexgrid.textmatrix(0, 0)……'给单元格1行驶列赋值…………
xlbook.runautomacros (xlautoopen) '运行excel中的启动宏
之前我已经定义了,而我这行代码是打开已有的工作簿,但是,add这个方法就是创建一个新工作簿。新工作簿将成为当前表的活动工作簿。(我之前一直以为add是添加内容的意思)这行代码我只能控制表的第一行第一列,如果显示几十行怎么办?通过看系统里面代码可以用循环来完成。下面看一下我今天看到的代码:
dim xlsappas excel.application '定义excel程序
dimxlsbook as excel.workbook '定义工作簿
dimxlssheet as excel.worksheet '定义工作表
dim i as long
dim j as long
setxlsapp = createobject(excel.application) '创建应用程序
set xlsbook = xlsapp.workbooks.add
创建一个新工作簿。新工作簿将成为当前表的活动工作簿。
setxlssheet = xlsbook.worksheets(1) '设置应用表
with xlsapp
.rows(1).font.bold = true
如何在设置excel中的字体进行设置
end with
'把myflexgrid.rows的内容写入到电子表格中
for i = 0 to myflexgrid.rows - 1
很好的利用了循环语句
for j = 0 to myflexgrid.rows - 1
xlssheet.cells(i + 1, j + 1) = ' & myflexgrid.rows.textmatrix(i, j)
’通过我上面写的可以明显的总结出这个规律
next j
next i
xlsapp.visible = true '显示电子表格
'xlssheet.printout preview:=true '进入打印预览页面
' xlsbook.saveas app.path & \test.xls '保存路径和文件名称
要是点一下就出现一张表这样也太麻烦了,而且文件名字还是一样的。所以我觉得这段代码有点多余。
setxlsapp = nothing '释放控制权
这样做出来的效果比我做的好得多。
拓展:(excel更多操作)
1)显示当前窗口:
excelid.visible:=true;
2)更改excel标题栏:
excelid.caption:='
应用程序调用microsoftexcel';
3)添加新工作簿:
excelid.workbooks.add;
4)打开已存在的工作簿:
excelid.workbooks.open('c:\excel\demo.xls');
5)设置第2个工作表为活动工作表:
excelid.worksheets[2].activate;
或excelid.worksheets['sheet2'].activate;
6)给单元格赋值:
excelid.cells[1,4].value:='第一行第四列';
7)设置指定列的宽度(单位:字符个数),以第一列为5例:
excelid.activesheet.columns[1].columnswidth:=5;
8)设置指定行的高度(单位:磅)(1磅=0.035厘米),以第二行为例:
excelid.activesheet.rows[2].rowheight:=1/0.035;//1厘米
9)在第8行之前插入分页符:
excelid.worksheets[1].rows[8].pagebreak:=1;
10)在第8列之前删除分页符:
excelid.activesheet.columns[4].pagebreak:=0;
11)指定边框线宽度:
excelid.activesheet.range['b3:d4'].borders[2].weight:=3; 1-左 2-右 3-顶4-底 5-斜(\) 6-斜(/)
12)清除第一行第四列单元格公式:
excelid.activesheet.cells[1,4].clearcontents;
13)设置第一行字体属性:
excelid.activesheet.rows[1].font.name:='隶书';
excelid.activesheet.rows[1].font.color =clblue;
excelid.activesheet.rows[1].font.bold :=true;
excelid.activesheet.rows[1].font.underline:=true;
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product