ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
12
返回列表 发新帖
楼主: chenzhanlw

[求助] 在where 条件子句中日期是如何表示的

[复制链接]

TA的精华主题

TA的得分主题

发表于 2011-8-16 21:50 | 显示全部楼层
小蚁雄兵 发表于 2009-4-25 18:27
不错不错

sleepbag老师的Accesss的菜单跟我的有很大区别,请问题如何设置的?

TA的精华主题

TA的得分主题

发表于 2011-8-16 22:28 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
不错,学习了,那个在哪下载

TA的精华主题

TA的得分主题

发表于 2013-10-28 14:07 | 显示全部楼层
写成 select  * from [a$] where 日期>#2009-01-03#  试试
希望能帮助到你

TA的精华主题

TA的得分主题

发表于 2023-4-21 18:15 | 显示全部楼层
my_dear 发表于 2009-4-24 18:59
可以用类似#2009/04/24#形式来表示即可

谢谢,#方法。,问题解决。

dd.jpg
  1. Sub ll1()
  2.     Dim Cn As ADODB.Connection
  3.     Dim Rs As ADODB.Recordset
  4.     Dim Sql As String
  5.     Dim oDate As Date
  6.     Set Cn = New ADODB.Connection
  7.     Set Rs = New Recordset
  8.        oDate = "2023/3/4"
  9.        Debug.Print oDate
  10.        Cn.Open "Provider=Microsoft.ACE.OLEDB.12.0;Extended Properties='Excel 12.0;HDR=yes';data source=" & ThisWorkbook.FullName
  11.        Sql = "Select a.学号,a.表a,b.期中成绩,c.期末,d.内容, "
  12.        Sql = Sql & "e.表e,f.表f,g.表g,h.表h "
  13.       
  14.        Sql = Sql & " from [a$]a,[b$]b,[c$]c,[d$]d,[e$]e,[f$]f,[g$]g,[h$]h  "
  15.        Sql = Sql & " where a.学号 = #2023/3/4#  and  b.学号 = #2023/3/4# and  c.学号 = #2023/3/4# and  d.学号 = #2023/3/4# "
  16.        Sql = Sql & " and e.学号 = #2023/3/4#  and  f.学号 = #2023/3/4# and  g.学号 = #2023/3/4# and  h.学号 = #2023/3/4# "
  17.        Debug.Print Sql
  18.        Set Rs = Cn.Execute(Sql)
  19.     Sheet4.Cells.Clear
  20.     Sheet4.Cells(2, 1).CopyFromRecordset Rs
  21.     Stop
  22. End Sub

复制代码



练习1.zip

23.42 KB, 下载次数: 2

TA的精华主题

TA的得分主题

发表于 2023-5-2 08:30 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
for ii= 0  to rs.count不好用。
只能用 Do While Not .EOF 的组合应用
                       .MoveNext+Loop

  1. Sub MovePicToShtFolder()
  2.     ''临时文件目录的文件移到指定目录。
  3.     Dim Rs As ADODB.Recordset
  4.     Dim Fso As Scripting.FileSystemObject
  5.         Set Fso = New Scripting.FileSystemObject
  6.     Dim Sht As Worksheet, Sht1 As Worksheet
  7.         
  8.     Dim PathFile
  9.         PathFile = ThisWorkbook.Path & "\t\t.ppsx"
  10.     Dim Str, SqlStr
  11.     Dim Rr
  12.     Dim Ppt As PowerPoint.Application
  13.     Dim Pres As Presentation
  14.     Dim Sld As Slide
  15.     Dim Shp 'As Shape
  16.         ''
  17.         Set Sht1 = Sheets("t")
  18.         Str = Sht1.Cells(1, 1)
  19.         Set Sht = ThisWorkbook.Worksheets(Str)
  20.         Sht.Cells.Clear
  21.         Sht.Cells.Font.Size = 9
  22.         
  23.         Rr = 5
  24.         
  25.         Set Ppt = New PowerPoint.Application
  26.         Ppt.Visible = msoCTrue
  27.         If Fso.FileExists(PathFile) Then
  28.             If Ppt.Presentations.Count = 0 Then
  29.                  Set Pres = Ppt.Presentations.Open(PathFile)
  30.             Else
  31.                  Set Pres = Ppt.Presentations(PathFile)
  32.             End If
  33.         Else
  34.             MsgBox PathFile
  35.         End If
  36.         For Each Sld In Pres.Slides
  37.              Str = Sld.NotesPage.Shapes.Placeholders(2).TextFrame.TextRange.Text
  38.              'Debug.Print Str,
  39.              Set Shp = Sld.Shapes("Date")
  40.              'Debug.Print Shp.Left, Shp.Top, Shp.Width, Shp.Height
  41.              Set Rs = EngChiSqlRs(ThisWorkbook.FullName, Str, "A1:O1000")
  42.              With Rs
  43.                   .MoveFirst
  44.                   For jj = 0 To .Fields.Count - 2
  45.                        Sht.Cells(1, jj + 2) = .Fields(jj).Name
  46.                        'Debug.Print .Fields(jj).Name, .Fields(jj)
  47.                   Next jj
  48.                   Sht.Cells(1, jj + 2) = "Left"
  49.                   Sht.Cells(1, jj + 3) = "Top"
  50.                   Sht.Cells(1, jj + 4) = "Width"
  51.                   Sht.Cells(1, jj + 5) = "Height"
  52.                   
  53.                   ''
  54.                   Do While Not .EOF
  55.                        For jj = 0 To .Fields.Count - 2
  56.                            Sht.Cells(Rr, jj + 2) = .Fields(jj).Value
  57.                        Next jj
  58.                        
  59.                        .MoveNext
  60.                   Loop
  61.                   With Shp
  62.                        Sht.Cells(Rr, jj + 2) = .Left
  63.                        Sht.Cells(Rr, jj + 3) = .Top
  64.                        Sht.Cells(Rr, jj + 4) = .Width
  65.                        Sht.Cells(Rr, jj + 5) = Int(.Height)
  66.                   End With
  67.              End With
  68.              Rr = Rr + 1
  69.         Next Sld

  70.         
  71.         'Ppt.Quit
  72. End Sub
复制代码

TA的精华主题

TA的得分主题

发表于 2023-5-2 19:40 | 显示全部楼层
找到Recordset.count=-1原因了。

        Set Rs = Cn.Execute(Str),Execute方法不能成立。
        Rs.Open Str, Cn, adOpenKeyset, adLockOptimistic----Open方法成立

Recordset.Open方法参数介绍_zjcxc的博客-CSDN博客  https://blog.csdn.net/zjcxc/article/details/384551

语法:
    recordset.Open Source, ActiveConnection, CursorType, LockType, Options

参数说明:
Source               可选,变体型,计算 Command 对象的变量名、SQL 语句、表名、存储过程调用或持久 Recordset 文件名。 ActiveConnection     可选。变体型,计算有效 Connection 对象变量名;或字符串,包含 ConnectionString 参数。
CursorType       可选,CursorTypeEnum 值,确定提供者打开 Recordset 时应该使用的游标类型。
可为下列常量之一(参阅 CursorType 属性可获得这些设置的定义)。
值  常量                 说明
--- ------------------- -----------------------
0   AdOpenForwardOnly   默认值)打开仅向前类型游标。
1   AdOpenKeyset             打开键集类型游标。
2   AdOpenDynamic         打开动态类型游标。
3   AdOpenStatic               打开静态类型游标。

LockType              可选。确定提供者打开 Recordset 时应该使用的锁定(并发)类型的 LockTypeEnum 值,可为下列常量之一(参见 LockType 属性可获得详细信息)。
值  常量                                   说明
--- -------------------------------- -----------------------
1   AdLockReadOnly           (默认值)只读 — 不能改变数据。
2   AdLockPessimistic         保守式锁定,提供者完成确保成功编辑记录所需的工作,通常通过在编辑时立即锁定数据源的记录。
3   AdLockOptimistic            开放式锁定(逐个) — 提供者使用开放式锁定,只在调用Update 方法时才锁定记录。
4   AdLockBatchOptimistic  开放式批更新—用于批更新模式(与立即更新模式相对)。

您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-6-8 03:14 , Processed in 0.037261 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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