Board logo

標題: [發問] ADO+Sql如何使用vba函數(month) [打印本頁]

作者: mhl9mhl9    時間: 2013-8-10 14:26     標題: ADO+Sql如何使用vba函數(month)

我的database建立在worksheets("資料庫"),有欄位"日期",但沒有欄位"月份"
用ADO+sql查詢 資料庫資料月份的唯一值:
"select distinct month(日期) from [資料庫$]"
"select distinct " & month & "(日期) from [資料庫$]"
以上2句都不成功,顯然是 month 不能用或方法錯
版主能不能教我如何寫,我主要目的想知道資料庫里輸入了哪幾個月的資料,謝謝
作者: HSIEN6001    時間: 2013-8-10 22:16

回復 1# mhl9mhl9

"select distinct month([table].日期) from [table]"
作者: mhl9mhl9    時間: 2013-8-11 02:20

[attach]15745[/attach]
test1可以把整個資料庫copy到activesheet.A1
test2就出現上面的錯誤對話框
什麽地方寫錯了?
Sub test1()
    ActiveSheet.Cells.ClearContents
    Set iR = Range("A1")
    iPath = ThisWorkbook.fullname
    iQ = "select * from [資料庫$]"  
   iSql
End Sub
Sub test2()
    ActiveSheet.Cells.ClearContents
    Set iR = Range("A1")
    iPath = ThisWorkbook.Path
    iQ = "select month(資料庫.日期) from [資料庫$]"
    iSql
End Sub
作者: mhl9mhl9    時間: 2013-8-11 02:54

本帖最後由 mhl9mhl9 於 2013-8-11 02:56 編輯

不好意思, test2中, 我把thisworkbook.fullname打成hisworkbook.Path
所以出錯
test5 ,可以正常運行, 我資料庫有6個月資料,但test5運行結果卻是6個Jan

Sub test5()
    ActiveSheet.Cells.ClearContents
    Set iR = Range("A1")
    iPath = ThisWorkbook.FullName
    iQ = "select distinct  Month(日期) as 月份 from [資料庫$]"
    iSql
end sub
作者: mhl9mhl9    時間: 2013-8-11 03:31

看來是格式問題,資料庫有6個月資料,distinct month(日期)出6個"Jan"
distinct year(日期)出一個"1905"
唯一值的個數是正確的,但值不對,怎麼做呢?
作者: mhl9mhl9    時間: 2013-8-11 03:33

回復 2# HSIEN6001


    看來是格式問題,資料庫有6個月資料,distinct month(日期)出6個"Jan"
distinct year(日期)出一個"1905"
唯一值的個數是正確的,但值不對,怎麼做呢?
作者: mhl9mhl9    時間: 2013-8-11 03:54

回復 2# HSIEN6001

問題解決了,dictinct month(日期) from [資料庫$],結果出了6個"Jan",但我把結果儲存格的格式改用"通用格式",就顯示正確的1,2,3,4,5,6
好了,謝謝你,我是第一次在sql里用vba的function,查到不是這麼簡單就可以用了,有點緊張,所以亂了套.簡單的格式問題沒有想到,謝謝你了
作者: HSIEN6001    時間: 2013-8-11 12:40

回復 7# mhl9mhl9


對不起!現在才上線 (*.*)
昨天試過#2那句OK ,就是#7的答案
所以給您貼上參考
完成就好!!
作者: mhl9mhl9    時間: 2013-8-11 13:09

回復 8# HSIEN6001

這個問題煩了自己幾天,你第一次答我前,我懷疑直接用month函數,因為你的答覆,我覺得用法有人認同,有點信心了
原來我逐個檢查15個分公司全年日報表完不完整,現在可以一次檢查完15個公司全年報表,時間快不了多少,但程式流程好像舒服得多.
多謝多謝




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)