永发信息网

vb中怎么读取excel文件

答案:1  悬赏:40  手机版
解决时间 2021-03-01 15:43
vb中怎么读取excel文件
最佳答案
1、调用Excel对象打开EXCEL文件后,读取文件内容
***************************************
在VB中要想调用Excel,需要打开VB编程环境“工程”菜单中的“引用”项目,并选取项目中的“MicrosoftExcel 11.0 object library”项。由于你的Excel版本不同,所以这个选项的版本号也是不同的。

因为EXCEL是以层次结构组织对象的,其对象模型中含有许多不同的对象元素。
第一层:Application对象,即Excel本身;
第二层:workbooks对象集,指Excel的工作簿文件
第三层:worksheets对象集,表示的是Excel的一个工作表;
第四层:Cells和Range对象,指向Excel工作表中的单元格。
新建立一个VB的工程,先放一个button,名称为Excel_Out。先定义好各层:
Dim xlapp As Excel.Application 'Excel对象
Dim xlbook As Excel.Workbook '工作簿
Dim xlsheet As Excel.Worksheet '工作表
我们打算做的是:打开/新建一个excel,在其中对某工作表的一些单元格修改其值,然后另存为test.xls文件。
Private Sub Excel_Out_Click()
Dimi, j As Integer
Setxlapp = CreateObject("Excel.Application") '创建EXCEL对象
'Set xlbook = xlapp.Workbooks.Open(App.Path& "\test.xls")'打开已经存在的test.xls工件簿文件
Setxlbook = xlapp.Workbooks.Add '新建EXCEL工件簿文件
'xlbook.RunAutoMacros (xlAutoOpen) '运行EXCEL启动宏
'xlbook.RunAutoMacros (xlAutoClose) '运行EXCEL关闭宏
xlapp.Visible = True '设置EXCEL对象可见(或不可见)
Setxlsheet = xlbook.Worksheets(1) '设置活动工作表''
''~~~当前工作簿的第一页,这里也可以换成“表名”

'下面就是简单的在一些单元格内写入数字
Fori = 7 To 15
For j = 1 To 10
xlsheet.Cells(i, j) = j '当前工作簿第一页的第I行第J列
Next j
Nexti
Withxlsheet '设置边框为是实线
.Range(.Cells(7, 1), .Cells(28, 29)).Borders.LineStyle = xlContinuous
EndWith
'引用当前工作簿的第二页
Setxlsheet = xlapp.Application.Worksheets(2)
xlsheet.Cells(7, 2) = 2008 '在第二页的第7行第2列写入2008
xlsheet.SaveAsApp.Path&"\test.xls" '按指定文件名存盘
'Setxlbook = xlapp.Application.Workbooks.Add '新建一空白工作簿
xlapp.Quit '结束EXCEL对象'xlapp.Workbooks.Close
Setxlapp = Nothing '释放xlApp对象
End Sub
这样,我们就可以简单的对excel文件进行操作了。下面再放一些我从网上查到的资料吧,还挺有用的:
1.创建Excel对象
eole=CREATEOBJECT(′Excel.application′)
2.添加新工作簿
eole.Workbooks.add
3.设置第3个工作表为激活工作表
eole.Worksheets(〃sheet3〃).Activate
4.打开指定工作簿
eole.Workbooks.Open(〃c:\temp\ll.xls〃)
5.显示Excel窗口
eole.visible=.t.
6.更改Excel标题栏
eole.Caption=〃VB应用程序调用Microsoft Excel〃
7.给单元格赋值
eole.cells(1,4).value=XM(XM为数据库字段名)
8.设置指定列的宽度(单位:字符个数)
eole.ActiveSheet.Columns(1).ColumnWidth=5
9.设置指定行的高度(单位:磅)
eole.ActiveSheet.Rows(1).RowHeight=1/0.035
(设定行高为1厘米,1磅=0.035厘米)
10.在第18行之前插入分页符
eole.Worksheets(〃Sheet1〃).Rows(18).PageBreak=1
11.在第4列之前删除分页符
eole.ActiveSheet.Columns(4).PageBreak=0
12.指定边框线宽度(Borders参数如下)
ole.ActiveSheet.Range(〃b3:d3〃).Borders(2).Weight=3
13.设置四个边框线条的类型
eole.ActiveSheet.Range(〃b3:d3〃).Borders(2).LineDRIVER={Microsoft Text Driver (*.txt; *.csv)};" DBQ=" & App.Path & ";", "", ""
rs.Open "select * from [test$]", conn, adOpenStatic, adLockReadOnly, adCmdText
Set Read_Text_File = rs
Set rs = Nothing
Set conn = Nothing
***************************************
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
和人说话会脸红,和女生更是会脸红,说话时甚
吴佳思的名字好吗?谢谢
FAST迅捷路由器初始密码是多少啊,不要说admi
如家酒店宿迁西湖路汽车总站店地址在什么地方
公司主营业务为营业税,请问企业所得税是在地
请问广东医学院(东莞校区)最近的汽车客运站或
IP被百度封了,多长时间才能恢复?可百度回复
麻将中将和是什么意思?
3,4,6,7算24(只能四则运算)
坡洋我想知道这个在什么地方
qq空间被屏蔽了
舞蹈千年游
又吐又拉,头疼得很是厉害,请问这是不是被人下
刚入手的雷神,没有装系统,只有最开始的dos
哈尔滨市工商局南岗分局经检一队在哪里啊,我
推荐资讯
85年6月4日属牛的是什么命
有一个海鲜带着芒果味道叫什么
修炼法术口诀
坦克世界排位赛怎么进入的最新相关信息
流动比率通过比较流动资产和流动负债的关系来
华为荣耀6怎么用otg数据线连接单反没反应
周大福天津塘沽中原百货珠宝专营店地址在什么
找夜班兼职工作
中寺街在什么地方啊,我要过去处理事情
马克斯是哪里人?
是不是说宋朝被金兵武力灭掉
梦见人骑大马差一点提到自己
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?