注册 登录
编程论坛 VB6论坛

从哪里能学习到VB操作Excel程序和详细解说

工长56 发布于 2015-01-19 20:06, 2884 次点击
我爱vb编程,但是基础差,学习了一段时间了,也没有长劲,现在要用了,上不了台面,只好再学了。
问一:哪里有关于vb6中操作Excel详解,这方面的学习材料也行,请指点。
问二:在窗口中有二个按钮,一个“预览”,一个“打印”,有三个文本框,在三个文本框中输入数字,能写入到Excel表中,单击“预览”,实现表格打印的原样,单击“打印”,实现在打印机输出,表有表头为“收费任证”,三行为“第一项”,“第二项”,“第三项”,两列为一列是项目,二列为费用,最下面有“收费员:”。如果写出程序和详细解说更好,我能学会并能修改,本人十分感谢!
21 回复
#2
wp2319572015-01-20 08:41
问度娘
#3
lianyicq2015-01-20 09:05
问题是不是可以转化为VB从EXCEL文件中读数据,然后再按格式打印?
在EXCEL中的用脚本也可以试试.
程序代码:
Private Sub Command1_Click()
Dim EXAPP As Excel.Application
Dim WB As Excel.Workbook
Dim sht As Excel.Worksheet
Set EXAPP = CreateObject("excel.application")
Set WB = EXAPP.Workbooks.Open("文件路径及文件名")
Set sht = WB.Worksheets("Sheet1")
sht.Cells(1, 1) = 6 '写入方式一
sht.Range("A2") = 7 '写入方式二
Form1.Caption = sht.Range("B5").Value '从表格取值
'
WB.Save'保存编辑后的文件
WB.Close
Set sht = Nothing
Set WB = Nothing
Set EXAPP = Nothing
End Sub
以上是用VB打开EXCEL文件,读/写单元格的例子。
可以在图片框中设定你想要的表格样式,再填入从EXCEL读取来的数据或文本框来的数据。
自己用打印机试试打印图片框的效果。根据打印效果可用图片框做打印预览界面。


[ 本帖最后由 lianyicq 于 2015-1-20 11:15 编辑 ]
#4
工长562015-01-20 13:22
回复 3楼 lianyicq
先谢谢!我来试试,有问题再请教。
#5
HVB62015-01-22 08:35
回复 3楼 lianyicq
敬请3楼高手做个例子。谢谢。附件放在E盘下。
只有本站会员才能查看附件,请 登录
#6
lianyicq2015-01-22 10:14
回复 5楼 HVB6
不知道要什么样的例子。如果只是对excel单元格的读写,例子代码就够用了。
注意要引用microsoft excel 12.0 object library
#7
工长562015-01-22 11:26
昨天我上机实习,按三楼老师指点,做了一遍效果很好,问题解决了,谢谢三楼老师!
#8
工长562015-01-22 11:30
二楼老师该给我们初学者多鼓励,多指点,多扶持,谢了。
#9
HVB62015-01-22 11:58
回复 6楼 lianyicq
以上是用VB打开EXCEL文件,读/写单元格的例子。
可以在图片框中设定你想要的表格样式,再填入从EXCEL读取来的数据或文本框来的数据。
红色的方法如何做?
#10
lianyicq2015-01-22 12:09
回复 9楼 HVB6
在图片框中写字用print的方法
picture1.prinf "ok"
定位用currentx,currenty属性
picture1.currentx=200
picture1.currenty=200
表格的线当然用line方法了
picture1.line(x1,y1)-(x2,y2)
#11
HVB62015-01-23 08:44
回复 10楼 lianyicq
5楼和9楼的意思是:希望把5楼的“一月”工作表界面显现在“图片框”中。

[ 本帖最后由 HVB6 于 2015-1-23 08:46 编辑 ]
#12
工长562015-01-24 10:52
请问三楼老师 在上个程序中如何实现输入的信息(比入一天的数据)在窗体上增加一个列表查看?
#13
工长562015-01-24 11:03
把前几天的学习结果向老师汇报如下:
原程序:
Private Sub Com1_Click()
Dim EXAPP As Excel.Application
Dim WB As Excel.Workbook
Dim sht As Excel.Worksheet
Set EXAPP = CreateObject("excel.application")
Set WB = EXAPP.Workbooks.Open(App.Path & "\lian01.xls")
Set sht = WB.Application.Worksheets("sheet1")
sht.Range("A2") = Text1.Text
sht.Range("C2") = CStr(Date)
sht.Range("B3") = Text2.Text
sht.Range("B4") = Text3.Text '写入方式
sht.Range("B5") = Text4.Text
sht.Range("C" & 6) = "姜  欢" '写入方式二
EXAPP.Visible = False
sht.PrintPreview            '打印预览
EXAPP.Worksheets("sheet1").PrintOut
WB.Close
Set sht = Nothing
Set WB = Nothing
Set EXAPP = Nothing
End Sub

语句Worksheets("sheet1")中sheet1试着用我的文件名代替为什么不行呢?
#14
工长562015-01-24 16:45
请问老师 在上个程序中(13楼程序)如何实现输入的所有信息(如:一天的数据)在窗体上加“查看查询”钮 ,增加一个列表能够查看查询?
#15
lxlyhu2015-01-27 10:59
操作excel,要用到VBA。VBA是VB面向应用程序的接口!据说微软的所有产品均支持VBA,使之自动化……。

本人开发有一个“多薄多表合并mergebooks.dll”,就是用VBA开发、VB封装的,可自动对excel表格进行汇总,可从网上搜索、下载、安装、使用;
另外开发有一个“DBMS_lx数据库查询暨管理系统”,是用VBA自动化操作access的!
#16
lxlyhu2015-01-27 11:04
VBA代码可以直接编写在excel中,叫做“宏”。也可以制作成excel插件,做成工具按钮、菜单、或功能区按钮,还可用VB封装。
#17
lianyicq2015-01-27 15:20
回复 11楼 HVB6
我用画线和打字的方法是为了制作满足打印样式的单据。excel文件作为源文件,提取到自己画的单据中打印出来。如果要打印原本的excel文件,不用这样做。
#18
HVB62015-01-27 15:30
回复 17楼 lianyicq
谢谢回复。
#19
工长562015-01-27 21:28
我再试试吧,但愿能成功!
#20
jove999992015-02-17 05:44
回复 3楼 lianyicq
要得能查询的话,就能当个袖珍版的数据库来用了
#21
柔儿梦婷2015-04-19 10:07
回复 3楼 lianyicq
这位高手老师能帮我把这个VBA代码也改成VB的可以吗谢谢老师!
Sub abc()
    Range("A3:AC3500").Clear
    cz = "http://www.
    Cells(2, 1).Resize(1, 29) = Array("开奖期号", "开奖日期", "红", "号", " ", " ", " ", " ", "蓝", "红", _
      "号", "出", "球", "顺", "序", "投注总额", "奖池金额", "一等注数", "一等金额", "二等注数", "二等金额", _
      "三等注数", "金额", "四等注数", "金额", "五等注数", "金额", "六等注数", "金额")
    With ActiveSheet.QueryTables.Add(Connection:="TEXT;" & cz, Destination:=Range("A3"))
        .TextFileSpaceDelimiter = True
        .TextFileColumnDataTypes = Array(1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1)
        .Refresh
    End With
    Range("A65536").End(3).Select
End Sub

"投注总额", "奖池金额", "一等注数", "一等金额", "二等注数", "二等金额", _这几个内容去掉
#22
lianyicq2015-04-20 08:51
回复 21楼 柔儿梦婷
另外开贴后再回复。方便以后贴子的查询。
不用开,看到贴子了。

[ 本帖最后由 lianyicq 于 2015-4-20 08:54 编辑 ]
1