ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 50562|回复: 86

[分享] excel综合应用实例(VB+ADO+API+access+excel)

  [复制链接]

TA的精华主题

TA的得分主题

发表于 2010-1-30 04:31 | 显示全部楼层 |阅读模式
请下载全部附件后解压!
excel综合应用(VB+ADO+API+access+excel)
见附件(如有密码,则为25825897758)
望不吝赐教。

经验分享在9楼

申明:部分代码来自网络多位作者,我也记不清是具体是那位高人的,在此先谢谢人家.

现将文件压缩了一下,为一个附件,大家交流一下!

本人其他分享:
http://club.excelhome.net/thread-584144-1-1.html
http://club.excelhome.net/thread-562954-1-1.html
http://club.excelhome.net/thread-512410-1-1.html
http://club.excelhome.net/thread-527339-1-1.html

[ 本帖最后由 yykxiaoyang 于 2010-11-9 20:16 编辑 ]

excel封装学习.rar

291.72 KB, 下载次数: 4612

评分

3

查看全部评分

TA的精华主题

TA的得分主题

发表于 2010-1-30 07:06 | 显示全部楼层
楼主也太谦虚了,按照http://club.excelhome.net/thread-531674-1-1.html
楼主怎么也属于vba高级了

TA的精华主题

TA的得分主题

发表于 2010-1-30 08:59 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
想学学,但下载后打不开呀,提示"EXCEL不信任VBA项目操作,无法运行本系统,重新设置,"
请问是怎么回事,非常想学

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-1-30 14:37 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
原帖由 杨帆远航 于 2010-1-30 08:59 发表
想学学,但下载后打不开呀,提示"EXCEL不信任VBA项目操作,无法运行本系统,重新设置,"
请问是怎么回事,非常想学


那就先运行这个吧,见附件。

信任VBA项.rar

7.87 KB, 下载次数: 1218

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-1-30 14:42 | 显示全部楼层
原帖由 cflood 于 2010-1-30 07:06 发表
楼主也太谦虚了,按照http://club.excelhome.net/thread-531674-1-1.html
楼主怎么也属于vba高级了


不知不觉中成了“高手”,真不敢当呀,感觉还是那么菜!谢谢鼓励

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-1-30 17:03 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
看来没人感兴趣,也罢......

TA的精华主题

TA的得分主题

发表于 2010-1-31 08:45 | 显示全部楼层
其实,不记得什么时候了
我也曾执着于封装
后来,也不记得什么时候了
豁然开朗——封装,意义不大
以上言论仅作为参考,lz别丢我西红柿

TA的精华主题

TA的得分主题

发表于 2010-1-31 12:01 | 显示全部楼层
谢谢楼主分享。。收藏

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-1-31 14:35 | 显示全部楼层
原帖由 赵国辉 于 2010-1-31 08:45 发表
其实,不记得什么时候了
我也曾执着于封装
后来,也不记得什么时候了
豁然开朗——封装,意义不大
以上言论仅作为参考,lz别丢我西红柿


可能你不明白我为什么发贴,
我是为了学习,封装还是为了学习,好维护,我的文件从来都不用这些.我也没给别人没做过文件.
通过以上的学习,我见识了VB,ADO,API,access,我绝不会梦想以VBA或excel发家致富,也不会以他做为吃饭的本事,所以我仅以学习为出发点.或者说是为了打发时间,不能理解你的心情以前为什么不"豁然开朗"??



附件是我新做的我想给像我一样的菜鸟分享一下经验(高手就绕行了),代码来自网络,还有,你得安装VB6.0企业版(没用过其他的,也不知道其他的行不行),并在所提工程中引用
microsoft activex data objicts2.8 Library
microsoft excel 11.0 object library
microsoft office 11.0 object library

先看文件组成(见下图)
1.先准备excel文件(AWReport.xls),加打开密码(好像最长15位,但高级密码可255位长).
2.新建VB标准EXE工程,写代码(封装示例.exe文件):
Private Declare Function SetWindowPos Lib "user32" (ByVal hWnd As Long, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Private Sub Form_Activate()
On Error Resume Next
    Set xlApp = GetObject(, "Excel.Application")

    If Err.Number <> 0 Then
        Set xlApp = CreateObject("Excel.Application")

    End If
    Err.Clear
    xlApp.Visible = True

    If Dir(App.Path & "\AWReport.xls") = "" Then

        MsgBox "未找到" & App.Path & "\AWReport.xls" & ",请与开发者联系!", 64 + 4096, XTMC
        End
    End If
   
For Each xlBook In xlApp.Workbooks
        If xlBook.Name = "AWReport.xls" Then
            xlApp.WindowState = xlMaximized
            End
        End If
    Next
    xlApp.WindowState = xlMaximized
    Set xlBook = xlApp.Workbooks.Open(App.Path & "\AWReport.xls", , , , 25825897758#) '数字为excel密码,


    xlBook.RunAutoMacros (xlAutoOpen)
Set xlApp = Nothing
    End
End Sub
Private Sub Form_Load()
    SetWindowPos Me.hWnd, -1, 0, 0, 0, 0, 3
End Sub

生成"封装示例.exe",该文件可以绕过宏安全设置,不管是高还是低

[ 本帖最后由 yykxiaoyang 于 2010-7-24 11:38 编辑 ]
未命名.JPG

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-1-31 15:06 | 显示全部楼层
3.uploading.exe文件(进度条),excel文件进度条会让代码运行速度变慢,所以用这个
   VB标准exe工程,一窗体加一WebBrowser控件(这是在VBA里做完后导到VB里的,在VB里找不到WebBrowser控件)
     加一Label控件:
代码:
Private Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Private Declare Function ReleaseCapture Lib "user32" () As Long
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Sub Label1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
    Unload Me
End Sub
Private Sub Label1_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
    If Button = vbLeftButton Then
       ReleaseCapture
       SendMessage hwnd, &HA1, 2, 0&
    End If
End Sub

Private Sub UserForm_Initialize()
    SetWindowPos Me.hwnd, -1, 0, 0, 0, 0, 3
    With WebBrowser1
        .Navigate "about:blank"
        Dim sPath As String
        sPath = App.Path & "\system\uploading.gif"
        If Dir(sPath) = "" Then
            MsgBox "系统文件丢失,系统强行关闭!", 16, XTMC
            Exit Sub
        End If
        Do While WebBrowser1.Busy
            DoEvents
        Loop
        With .Document
            .Open
            .writeln "<HTML>"
            .writeln "<HEAD>"
            .writeln "<TITLE>"
            .writeln "</TITLE>"
            .writeln "</HEAD>"
            .writeln "<BODY scroll=" & Chr(34) & "no" & Chr(34) & " oncontextmenu=self.event.returnValue=false>"
            .writeln "<div style=" & Chr(34) & "position:absolute; left: 0; top: -3" & Chr(34) & ">"  
            .writeln "<IMG SRC=" & Chr(34) & sPath & Chr(34) & " BORDER=" & Chr(34) & "0" & Chr(34) & ">"
            .writeln "</div>"
            .writeln "</BODY>"
            .writeln "</HTML>"
        End With
    End With
End Sub
生成"uploading.exe"

[ 本帖最后由 yykxiaoyang 于 2010-1-31 15:09 编辑 ]
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-17 11:33 , Processed in 0.037653 second(s), 13 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表