“收取金额,退还金额信息查询”窗体出现的一些问题

简介:

         在做收取金额,退还金额信息查询这两个窗体时,出现了两个大问题,一个是查找一个时间范围内的所有列,一个是在导出excel表时提示“对象不支持该属性或方法”,这两个问题困扰了我很长时间。

首先,说一下第一个问题,在选择时间控件时 ,我一开始是这样选择的

可是上面的月份是英文的,很显然不实用,也不对,后来又从网上查,说让用Microsoft 日历控件11.0,可是我的“工程”-“部件”中没有,网上说在office中添加一下就可以,可是我还是没找到,郁闷至极,我问了同学,

选择下面的部件Monthview

 

 

 

       在对一个时间段内的数据进行搜索并加载到MSHFlexGrid时,我不知道用什么样的sql语句去取一个范围内的值,并且是将两个combobox的值赋予数据库进行查询,还有一个关键的问题就是数据类型不一致,无法进行隐式转换,重复提示“无法将varchar数据类型“2013/9/20”转换为int类型”,在百度了好多次以后,终于算是找到方法了

Private Subcmdinquire_Click()

    Dim mrc As ADODB.Recordset

    Dim txtsql As String

    Dim msgtext As String

   

    txtsql ="select * from recharge_info where date between  '" & Format(ComboStartDate.Text,"yyyy-mm-dd") &"' And '"& Format(ComboEndDate.Text, "yyyy-mm-dd") &"'"

    Set mrc = executeSQL(txtsql, msgtext)

    If mrc.EOF Then

        MsgBox "没有记录", vbOKOnly +vbExclamation, "警告"

        Exit Sub

    Else

        With myFlexGrid

            .Rows = 1

            .CellAlignment = 4

            .TextMatrix(0, 0) = "卡号"

            .TextMatrix(0, 1) ="充值金额"

            .TextMatrix(0, 2) ="充值日期"

            .TextMatrix(0, 3) ="充值时间"

            .TextMatrix(0, 4) ="充值教师"

            .TextMatrix(0, 5) ="结账状态"

            Do While Not mrc.EOF

                .Rows = .Rows + 1

                .CellAlignment = 4

                .TextMatrix(.Rows - 1, 0) =mrc.Fields("cardno")

                .TextMatrix(.Rows - 1, 1) =mrc.Fields("addmoney")

                .TextMatrix(.Rows - 1, 2) =mrc.Fields("date")

                .TextMatrix(.Rows - 1, 3) =mrc.Fields("time")

                .TextMatrix(.Rows - 1, 4) =mrc.Fields("userid")

                .TextMatrix(.Rows - 1, 5) =mrc.Fields("status")

                mrc.MoveNext

            Loop

        End With

    End If

End Sub

      这里的format真的很重要,可以避免数据类型不匹配造成的困扰,尤其是时间的比较,还有就是注意单引号,双引号的应用,以及sql语句查询一定范围内列的方法

      第二个问题就是在导出数据时,因为之前以及有其他窗体导出excel成功了,在与依他窗体对比完代码后,我发现代码没有出入,而且在模块中编写的导出Excel的函数也是正确的,于是查了又查,点了又点,将窗体上的控件删了重新加,才发现,原来是MSHFlexGrid与monthview的位置前后的问题,如果将monthview控件放在MSHFlexGrid的时候,就是弹出“对象不支持该属性或方法

”的错误提示,可是怎么样才能使窗体运行时既不会让MSHFlexGrid挡住,又能将monthview正常显示呢?做法如下:

 

 

 

 

 

 

然后再编写一段代码:

 

      其中标注部分表示MSHFlexGrid控件位置总是滞后,这样就可以正常导出excel了

      在发现问题和解决问题的过程中,其实最重要的是用好网络,多尝试,不管对错,都要试一试,还有就是断点调试真的很好用,当需要多次调用一个功能时,可以想办法将其写成函数、过程,利用call将其调用出来就ok了,只要耐下心来去想,去查,都能做出来的。

相关文章
|
3月前
|
缓存 关系型数据库 BI
使用MYSQL Report分析数据库性能(下)
使用MYSQL Report分析数据库性能
162 3
|
机器学习/深度学习 人工智能 自然语言处理
自然语言处理(NLP)的进展与挑战
【6月更文挑战第13天】自然语言处理(NLP)在深度学习推动下取得显著进展,包括循环神经网络、词嵌入技术及预训练模型(如BERT、GPT)的应用,突破了文本分类、问答系统等任务。然而,数据稀疏性、语言复杂性和模型可解释性仍是挑战。未来,NLP有望实现更高效、准确和可解释的技术,需关注数据隐私和伦理问题。
547 10
|
3月前
|
SQL 运维 关系型数据库
【产品升级】Dataphin V5.0版本发布:助力出海业务、增全量一体集成、异步调用API等更多功能等你发现
Dataphin是瓴羊推出的智能数据建设与治理平台,基于阿里巴巴内部实践,提供一站式数据建设与治理能力。V5.0版本研发新增支持Databricks作为离线计算引擎、支持MySQL数据库一键增全量同步、支持管理Hudi、Delta Lake表等;资产运营与消费持续提效,支持批量编辑目录名称及描述、Quick BI仪表板的上架管理等功能,增加资产可用性与盘点效率。
258 8
|
3月前
|
传感器 机器学习/深度学习 算法
基于PID优化和矢量控制装置的四旋翼无人机(Matlab&Simulink实现)
基于PID优化和矢量控制装置的四旋翼无人机(Matlab&Simulink实现)
269 0
|
4月前
|
JSON 编解码 数据安全/隐私保护
电脑录制鼠标键盘脚本,鼠标动作录制脚本,万能脚本录制器【python】
完整功能:实现鼠标移动、点击和键盘操作的录制与回放 数据持久化:将录制的动作序列保存为JSON文件
|
9月前
自适应网站图片广告横幅代码(带广告标识)
自适应网站图片广告横幅代码(带广告标识)
265 1
|
10月前
|
人工智能 IDE 程序员
AI程序员入场!揭秘直播吧研发效能大提升的秘密武器
对于直播吧而言,这不仅是工具升级,更是研发模式向「人与AI协同型」跃迁的战略选择。
|
iOS开发 MacOS
mac bookpro m1 笔记本关闭键盘屏幕 禁用键盘屏幕使用 键盘屏幕误触 Touch Bar禁用 禁用MacBook-Pro的触摸栏
mac bookpro m1 笔记本关闭键盘屏幕 禁用键盘屏幕使用 键盘屏幕误触 Touch Bar禁用 禁用MacBook-Pro的触摸栏
618 3
|
安全 编译器 PHP
PHP 8 新特性详解:更高效、更简洁的编程体验
本文详细介绍了PHP 8的新特性及其对开发者日常工作的影响。通过分析这些新特性,读者可以更好地理解PHP 8相较于之前版本的改进之处,并在实际项目中加以应用。
627 31
|
jenkins 持续交付 API
使用Python操作Jenkins的过程详解
Python作为一种简洁、灵活且功能丰富的编程语言,可以与各种API轻松集成,Jenkins的API也不例外。借助于Python中的python-jenkins模块,我们可以轻松地编写脚本来连接到Jenkins服务器,并执行各种操作,如创建、删除、构建Jobs等。这种自动化的方式不仅提高了效率,还使得CI/CD流程更加灵活和可控。