引数を日付型と整数型にして
テーブルのデータを取り出すモジュールを作成したいと思っています
日付別、時間別のアクセス数データベースがあり
例えば日付型引数(02/06/01)、整数型引数(1)として
関数を実行すると02/06/01の1時のデータ(20)を
返すものを作りたいのです
日付 0時 1時 2時 …(23時まで)
――――――――――――――――
02/06/01 10 20 30 …
02/06/02 20 20 40 …
…
――――――――――――――――
出来たらそのモジュールの例をあげてもらえると
非常に助かります
宜しくお願いしますm(_ _)m
No.1
- 回答日時:
元データは何に入っているのでしょうか?
Excel?Access?テキストファイル?他のデータベース?
データベースだったらバージョンは?各フィールドのデータ型は?
モジュールって?Accessの標準モジュールのこと?他に開発している何かのモジュール?
答えようにも情報が少なすぎです。もっと詳細な情報を記述しないと誰も答えられませんよ。
#ちなみに、時間別になっていない生のアクセスログは利用可能ですか?
この回答への補足
taka_tetsuさん
回答ありがとうございます
>もっと詳細な情報を記述しないと誰も答えられませんよ。
その通りですね、スイマセン
ACCESS2000のデータベースです
モジュールはAccessの標準モジュールのことです
選択クエリでフィールド名のところに
アクセス数:=関数名([日付],[時間])
と入力して
モジュールで日付(日付型)と時間(整数型)から
アクセス数を求めたいのです
DLookup関数を使えば出来ると思っていたのですが
出来なくて困っていました(下のようにしていました)
アクセス数:=DLookup([時間] & "時","テーブル1","日付=" & [日付])
No.2
- 回答日時:
>DLookup関数を使えば出来ると思っていたのですが
>出来なくて困っていました(下のようにしていました)
>
>アクセス数:=DLookup([時間] & "時","テーブル1","日付=" & [日付])
フィールド名の先頭が数字であるためです。
[]で生成したフィールド名を囲む必要があります。
アクセス数:=DLookup("[" & [時間] & "時]","テーブル1","日付=" & [日付])
これでOKなはずです。
この回答への補足
taka_tetsuさん
回答ありがとうございます
>アクセス数:=DLookup("[" & [時間] & "時]","テーブル1","日付=" & [日付])
こちらで試してみたのですがうまくいきませんでした
なぜかNullを返してしまいます
アクセス数:=DLookup("[" & [時間] & "時]","テーブル1")にしたところ
設定したフィールドから適当な数値を取得していたので
条件の部分がおかしいのかなとおもっているのですが…
ちなみにそのフィールドは日付型データ(yy/mm/dd)で入っています
No.3
- 回答日時:
テストデータとして下記を作りました。
テーブル名=小口現金1番号日付名前使途 金額
1H14.3.3中山 光雄電話料\2,000
2H14.3.3大田 昌雄文具費\3,000
3H14.3.4小暮 文他印紙代\250
4H14.3.2大宮 訓哉文具費\300
5H14.3.3小中 公次印紙代\2,100
6H14.3.1国元 間 交通費\3,200
7H14.3.2山川 仁 コピー代\3,400
というテストデータ(アクセスのテーブル)を作り、アクセスのモジュールに下記を入力しました。
Sub test01()
Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim hiduke As String
Dim name As String
Dim mysql As String
hiduke = InputBox("日付=")
name = InputBox("名前=")
Set db = CurrentDb()
mysql = "select * from 小口現金1 where 日付='" & hiduke & "' and 名前='" & name & "';"
' MsgBox mysql
Set rs = db.OpenRecordset(mysql, dbOpenDynaset)
Do Until rs.EOF
MsgBox rs!日付 & " " & rs!名前 & " " & rs!使途
rs.MoveNext
Loop
rs.Close
Set rs = Nothing
End Sub
本件質問に当てはめると、どこをどう変えれば良いかは判ると思います。ほとんど同じタイプです。
ただし上記InputboxとMsgbox rs!日付....は、通常はフォームやサブフォームに表示するのでしょうが、必要知識を最小限にするため、上記の様にしました。ここはご存知なければ調べてください。会社の他の方に使ってもらうには不満でしょうが済みません。
imogasiさん
回答ありがとうございます
とりあえずモジュールのほうを変更して
試してみたいと思います
分からないところが出てきたら補足したいと思いますので
その時は宜しくお願いします
No.4ベストアンサー
- 回答日時:
>>アクセス数:=DLookup("[" & [時間] & "時]","テーブル1","日付=" & [日付])
>こちらで試してみたのですがうまくいきませんでした
>なぜかNullを返してしまいます
日付はどのように引数で指定していますか?
Accessの標準の日付文字列の形式は#で囲む必要があります。
#2002/02/01#のような感じで指定する必要があります。
この回答への補足
taka_tetsuさん
回答ありがとうございます
>日付はどのように引数で指定していますか?
引数の日付は"yy/mm/dd"でフォーマットして
これをDatevalueで日付型にしたものです
(もともとのデータが 02/06/01 12:34:56 という形なので
日付部分を文字列で取り出しそれを日付型に変換していました)
taka_tetsuさん
何度も回答ありがとうございました
なんとか解決することが出来ました
引数の[日付]は"yyyy/mm/dd"でフォーマットした文字列にしました
"yyyy"にするところがポイントだったみたいです
アクセス数:=DLookup("[" & [時間] & "時]","テーブル1","日付=#" & [日付] & "#")
taka_tetsuさんには何度も回答してもらって
非常に助かりました
これからも宜しくお願いしますm(_ _)m
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excel ある複数列に数値を入力した際に、別の列に本日の日付を入力したいです 7 2023/03/01 23:31
- Access(アクセス) Accessテーブルの結合で別々のテーブルのフィールドを組み合わせて値を出す方法について 2 2022/07/20 19:43
- C言語・C++・C# C言語初心者です、、、お助けください 2 2023/03/14 20:08
- Excel(エクセル) Excelについて 3 2023/07/12 17:47
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Visual Basic(VBA) 列と行の名前(重複あり)が交差するセルに、データを入力したい 3 2022/06/12 11:17
- Excel(エクセル) VBAで重複データを合算したい(時間) 1 2022/12/08 23:06
- C言語・C++・C# 至急教えてください。プログラミングの問題です。 malloc関数を使ってください!お願いします! 最 1 2022/07/21 09:28
- Excel(エクセル) VBAで “:” を含むセルの特定 2 2023/05/11 16:30
- Excel(エクセル) 指定した値以上の中で最小値を出したい 7 2022/10/24 21:12
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
日付型のフィールドに空白を入...
-
Accessのデータ型の日付/時刻型...
-
SQL文で パラメータが少なすぎ...
-
【Accessで困っています...
-
【エクセル】指定した日付に一...
-
Access クエリで、レコードの無...
-
Accessの日付時刻型から日付、...
-
今週分だけ表示させたい
-
アクセス97のVBAで日付項目をヌ...
-
VBA 別シートの同じ日付の欄に...
-
Access2016、VBA、家計簿で各出費...
-
指定日付を起点にして最新日付...
-
【ピボットテーブル】4月から翌...
-
Accessで日付の比較がうまくい...
-
エクセルのWEBクエリで取り込め...
-
ビュー定義をプログラムで動的...
-
BCPでCSV内の文字列をテーブル...
-
SQL Server2005のクエリで「今...
-
エクセル-過去6カ月分の合計を...
-
前のレコードの合計に現レコー...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
日付型のフィールドに空白を入...
-
SQL文で パラメータが少なすぎ...
-
Excleピボットでデータのない部...
-
Accessの日付時刻型から日付、...
-
アクセスで月単位の抽出
-
VBA 別シートの同じ日付の欄に...
-
Accessのデータ型の日付/時刻型...
-
Excel→Accessへの日付データの...
-
アクセス:既定値に土日含まず...
-
BCPでCSV内の文字列をテーブル...
-
エクセル-過去6カ月分の合計を...
-
Access クエリで、レコードの無...
-
指定日付を起点にして最新日付...
-
【エクセル】指定した日付に一...
-
【Accessで困っています...
-
Accessで日付の比較がうまくい...
-
【vba】日付の形式が勝手に変わ...
-
前のレコードの合計に現レコー...
-
ACCESSの空白をカウントする
-
アクセス97のVBAで日付項目をヌ...
おすすめ情報