求助:vb+access,关于选择时间段进行加减运算的问题,见附件
比如:我选择所有条目的数据在2007-11-3到2007-11-5的和,减去其对应的2007-11-4+2007-11-1日的和,然后列出所有差值中最大值的3个。碰到的问题 1:日期list点击列不出来
2:sql语言和减法怎么选择时间不会,看了2天了还是不会
3:(这个估计很麻烦,也不会用到,就是问问),能不能加个什么text的然后我把要怎么操作,比如不是加减, 而是乘除,或者一个公式写到里面,按照这个然后运算,可行不可行呀,不太清楚,就是想想
哪位大大能帮我解决前2个问题呀
Private Sub Combo1_Click()
Dim ado As ADODB.Recordset
sql = "select * from [TX] where [id]='" & Combo1.Text & "' order by timer"
Debug.Print sql
Set ado = DBCnn.Execute(sql)
Set Grid1.DataSource = ado
End Sub
Private Sub Combo2_Change(Index As Integer)
Dim ado As ADODB.Recordset '就是想在这里选择日期,可以使一天也可以是几天,我用了一个Combo2_Change的数组,想在下拉选择日期
sql = "select timer from [TX] where [timer]='" & Combo2.Text & "' order by timer"
Debug.Print sql
Set ado = DBCnn.Execute(sql)
Set Grid1.DataSource = ado
End Sub
Private Sub Command1_Click()
sql = "select ID,Num,timer from GP1 order by id"
Set ado = DBCnn.Execute(sql)
Set Grid1.DataSource = ado
End Sub
Private Sub Command2_Click()
sql = "select timer from [TX]-。。。。。。。。。。。。。。。不会了"
然后在这里对上面选择的日期范围内的数据进行提取,然后运算数据,然后输出到Grid1中
End Sub
Private Sub Form_Load()
Call ConnectDB
Dim ado As ADODB.Recordset
sql = "select ID from TX"
Set ado = DBCnn.Execute(sql)
Do Until ado.EOF
Combo1.AddItem ado(0)
ado.MoveNext
Loop
End Sub
Public sql As String
'定义全局ADO对象连接,用于连接数据库
Public DBCnn As New ADODB.Connection
Public Sub ConnectDB()
Set DBCnn = New ADODB.Connection
With DBCnn
.Provider = "SQLOLEDB"
.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\MS.mdb;Persist Security Info=False;Jet OLEDB:Database Password=22474816@%%^@&%("
.Open
End With
End
!! 1.跟Combo1_Click一样,要在click事件里写个
2.不太明白LZ表述的意思
最大的3个,用 select top 3 timer from [TX] order by id desc(降序排列,取最前3条记录)
数量之和用聚合函数: sum(字段名) ;
时间段:时间字段 between 时间1 to 时间2 或者用条件语句: 时间字段>时间1 and 时间字段<时间2 ;
写个简单例子给你,具体的SQL语法规则还是需要你自己去找资料学习
e.g.
select sum(Field1)-sum(Field2) from Table1 where time1>='2010-11-29 12:00:00' and time1<'2010-11-30'
3.工程--->部件 (Ctrl+T) 勾选 Microsoft Script control ,用这个控件的eval方法 建议使用DTPicker控件 谢谢,我在试着弄弄 工程--->部件 (Ctrl+T) 勾选 Microsoft Script control没有这个,有一个taxonomycontrol的,引用后系统报错
这个也没有。。。装的是精简版的吧 装的是飘过版
不明白楼主的需求。
不明白,等需求清楚了再看
另外建议vb装个完整版的 建议使用DTPicker控件 1:access里面有数据,数据是不同日期的,是以天记的日期
2:现在在execl里面,但是数据量很大,用execl打开就要1分钟
3:现在用execl就是把最后两列想减,在按大小排一下序
需求就是用vb读取access,然后把access里面的数据最近两天(或者指定两天,我用的是combo。text里面选择日期)想减,然后按大小排序。
不知道清楚没有
我的可能是简装版,刚才下了一个染上毒了,单位的电脑不敢再用了,晚上回家再下 搞不定 日期前后加上#试一试 比较复杂的话就加我QQ
补充:VB , 数据库(包含打印,安装,报表)