VB程式撰寫問題求解

各位先進你好,小弟最近在測試VB程式
已經有寫一些了,但是卡在一個地方
想請各位先進幫忙

以下是我的程式碼

If optDAY.Value = True Then
sWhereDate = "WHERE year(FloatTable.DateAndTime) = " & strYEAR & " and month(FloatTable.DateAndTime) = " & strMONTH & " and day(FloatTable.DateAndTime) = " & strDAY & " and minute(FloatTable.DateAndTime) = 00"
Else
sWhereDate = "WHERE year(FloatTable.DateAndTime) = " & strYEAR & " and month(FloatTable.DateAndTime) = " & strMONTH & " and hour(FloatTable.DateAndTime) = 00 and minute(FloatTable.DateAndTime) = 00"
End If

我是用VB搭配Access去抓取資料,以下是抓取出來的結果

2014/7/6 00:00

1234
2014/7/6 01:00

1234
2014/7/6 02:00

1223
2014/7/6 03:00

1232143
2014/7/6 04:00

134323
2014/7/6 05:00

11122143
2014/7/6 06:00

1234123321
2014/7/6 07:00

1131132212
2014/7/6 08:00

1325215334
2014/7/6 09:00

1232211232
2014/7/6 10:00

22123312
2014/7/6 11:00

434312312
2014/7/6 12:00

34564644
2014/7/6 13:00

21342323
2014/7/6 14:00

34365443
2014/7/6 15:00

23232365
2014/7/6 16:00

2323434432
2014/7/6 17:00

4355243
2014/7/6 18:00

5224
2014/7/6 19:00

5432
2014/7/6 20:00

32323434
2014/7/6 21:00

23532333
2014/7/6 22:00

3232333
2014/7/6 23:00

23233232


小弟想要在最後一筆多抓明天的 00:00 的數值
所以這一個檔案裡面就會有今天00:00到明天的00:00的數值
這樣我VB要怎撰寫,請先進幫忙解答
謝謝。
2015-03-10 11:54 發佈
文章關鍵字 VB程式 問題
雖然看不懂你在寫啥,不過應該在Where中使用Between子句即可,就像這樣:

Where 日期 Between #2014/7/6 00:00# And #2014/7/7 00:00#

基本上你的程式一整個莫名其妙,應該這樣寫才對:

原本:

sWhereDate = "WHERE year(FloatTable.DateAndTime) = " & strYEAR & " and month(FloatTable.DateAndTime) = " & strMONTH & " and day(FloatTable.DateAndTime) = " & strDAY & " and minute(FloatTable.DateAndTime) = 00"

改成:

dim 日期 as DateTime
日期= strYEAR & "/" & strMONTH & "/" & strDAY

sWhereDate = "WHERE FloatTable.DateAndTime Between #" & 日期時間 & " " & "00:00# And #" & Format$(Dateadd("d",1,日期時間),"yyyy/m/d") & " 00:00#"

我搞不懂為什麼年月日要拆成三個,搞得程式碼多了兩三倍。


macacajau wrote:
各位先進你好,小弟...(恕刪)
大哥你好

請問那這段程式碼要怎修改呢?

Else
sWhereDate = "WHERE year(FloatTable.DateAndTime) = " & strYEAR & " and month(FloatTable.DateAndTime) = " & strMONTH & " and hour(FloatTable.DateAndTime) = 00 and minute(FloatTable.DateAndTime) = 00"

請指導,謝謝。
內文搜尋
X
評分
評分
複製連結
Mobile01提醒您
您目前瀏覽的是行動版網頁
是否切換到電腦版網頁呢?