- ベストアンサー
AccessのVBAでの日付の計算の記述のしかた
AccessのVBAで日付の計算をしようとしています。 DateAdd("m",6,Date()) と入力するとコンパイルエラーになります。 どこが間違っているでしょうか。 マクロウィンドウで値の代入とかやっていたときは、これでできていた気がします。 VBAだと記述の仕方が変わるんでしょうか。 実際は、「6」とか「Date()」のところに フィールド名を入れたいのですが、それって可能でしょうか。 ものすごく初歩的な質問だとおもいますが、 回答よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (2)
- irija_bari
- ベストアンサー率73% (70/95)
- irija_bari
- ベストアンサー率73% (70/95)
関連するQ&A
- ACCESSの日付について
こんにちは。 Access2000を使用しています。 フォームで、完了のチェックをしたときに[完了日]のフィールドに 今日の日付を取得するようにしたいのですが、 (1)マクロで、値の代入-[完了日]のフィールドに=Dateで 日付を入れるようにしました。 (2)フォームのチェックボックスをクリックすると、上記のマクロが 実行されるようにした。 を行うと、1899年などという日付がでてきます。 パソコンの内蔵時計を確認しましたが、2002年の今日の日付に なっています。 どなたかよろしくお願いします。
- 締切済み
- オフィス系ソフト
- Access上にある日付をコピーしたい場合
Access2000のユーザーです。 初心者に近い為理解が遅いかもしれませんがよろしくお願いします。 お尋ねしたいのは、コピーの方法です。 データの入力フォームを作っており、フォームヘッダーに日付を入力させ、同じ日付で何度も違う得意先のデータを入力する為最初に入力した日付を各レコードにコピーさせたいと思います。 マクロで値の代入を使ってコピーができないかとやってみましたが日付フィールドには日付が入っていませんでした。マクロではなくVBAでないと無理であれば初挑戦してみたいと思いますが、どの様に記述すればよいのかさっぱり・・・といった状態です。 このような説明で伝わるか不安ですが、よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- アクセスのDMAXをVBAで記述したい
今は、マクロで値の代入を使い アイテム=[ID] 式=DMax("ID","テーブル名")+1 として連番の次の番号を振ろうとしています。 これと同じことをVBAでやるにはどのように 記述すれば良いのでしょうか。 宜しくお願い致します。
- ベストアンサー
- その他(業務ソフトウェア)
- Access2000VBAで前に記述したコードが終わる前に次に進みます・・・
フォームを開いた後、Msgboxを表示させたくて、Access2000VBAのOpenイベント又はLoadイベントに、Msgboxを記述しました。 ところが、フォームが開く前にMsgboxが表示されてしまします。フォームが開いた後Msgboxを表示させるためにはどうしたらよいのですか? また、ADOで接続したテーブルの数値型フィールドの合計値を計算して、計算結果をテキストボックスに代入するコードを記述した後、このテキストボックスの値をMsgboxに表示させるコードを記述たところ、計算を終える前にMsgboxが表示されてしまいます。 前のコードが確実に実行された後、次のコードの処理に進む様にするにはどうすればよいのですか?
- 締切済み
- オフィス系ソフト
- VBAのプログラムとシートでの計算の速度
現在、エクセルVBAでマクロを組んでいます。 マクロで算出した値を、セルを指定して、シートに代入しています。シートの代入する理由は、途中の計算結果の確認とエクセル関数を利用し、マクロの簡便化を図りたいためです。 代入した値を基にして、エクセル関数を使った結果の値を、他のセルに表示(代入)していますが、VBAで、その結果の値を、利用しています。 お聞きしたいのは、最初にシートに代入してから、エクセル関数の結果を得られる前に、VBAが、値を取得しないかどうか心配です。 素人考えでは、同じエクセル上で動作しているので、エクセル関数の計算終了後に、VBAが動くと思いますが。どうでしょうか?
- ベストアンサー
- その他MS Office製品
- VBA での日付の計算
お世話になってます。 Access VBA 初心者です。 string型変数に日付(YYYYMMDD)がセットされています。 その日付に1日プラスした日付を算出したいのですが、 どうすればよいのかよく分かりません。 たとえば Dim w_Date As String w_Date = "20070726" としたならば、 w_Dateは"20070727"となるようにしたいのですが。。。 よろしくお願いいたします。
- ベストアンサー
- Visual Basic
- VBAで日付と時刻の計算に困っています
すでに入力されている日本の日付と時刻を、欧州の日付と時刻に変換する というようなマクロを組みたいです。 もう少し具体的にいうと、 日本の日付と時刻が 2011/06/12 07:15:20 というような形式で入力されているセルA1があり、 そのセルA1を選択している状態でマクロを実行すると、 セルに入力されている日付と時刻を欧州の日付と時刻に変更する というマクロです。 セルA1の日付を例にすると、マクロを実行したら時差である9時間を減算して、 2011/06/11 22:15:20 という値が返ってくるようにしたいです。 DateAdd関数を使用して時刻を-9時間することはできたのですが、 時刻のみが-9時間されるだけで日付は変更できませんでした。 もしよろしければ、時間を減算しただけで日付も減算してくれるような マクロの組み方を教えていただけないでしょうか。
- ベストアンサー
- その他(プログラミング・開発)
- 日付時刻型の比較
お世話になります。コンピュータ歴が短いもので質問の意味がよくわからないかもしれませんがよろしくおねがいします。 accessのDB「テーブル1」に日付時刻型のフィールド「フィールド1」があり、 2001/00/00 00:00:00の形式でデータが入っています。 テーブル1のデータで、1ヶ月前のデータより新しいもののみをVBScriptで抜き出したいのですが、下記のようにDATEADD関数で変数1に1ヶ月前の日付を代入し、それと比較しようとしましたが、うまくいきませんでした。 変数1 = DATEADD("m" ,-1 ,NOW) Set rs = Server.CreateObject("ADODB.RecordSet") sql = "SELECT * FROM テーブル1 WHERE フィールド1 >= 変数1" 変数1をResponse.Writeすると見た目は同じ形式で入っていました。 変数1の部分を手書きで#2001/00/00 00:00:00#と書けばうまく動いてくれるの ですが・・・ 変数の値を型変換しなければいけないのでしょうか? 良い方法がありましたら教えてください。
- ベストアンサー
- Microsoft ASP
- アクセス2003のサブフォームコントロールの参照について
アクセス2003で質問です。 メインフォームM1 サブフォームS1 サブフォームコントロールSCTL1 S1のフィールド T1と定義している場合に T1へサブフォームS1からオープンした別のフォームF1の値を代入したいのです。 マクロで値の代入の式を アイテムに [Forms]![M1]![SCTL1]![T1] と記述してもプロパティまたはメソッドが正しくないというエラーが表示されます。 同じ記述でアクセス2000では出来ました。 どこが違うのか教えて下さい。
- ベストアンサー
- オフィス系ソフト
- 値の代入で計算しているんですが
アクセスでデータベースを作っています。 マクロの値の代入で計算しているんですが、 なぜかスムースに計算されません。 ほかのフィールドの数値を変えてからだと、計算される場合もあったり、イベントの指定を変えたりすると計算されます。ステータスバーにも計算されてないときも「計算中です」というメッセージはでてきます。エラーメッセージはでません。 レコードの「総計」というフィールドに 「受講料」「施設費」「補講費」というフィールドの 数値をトータルしたものを代入したいと思っています。 「イベント」か式自体におかしいのかもしれません。 アイテム [総計] 式 [受講料]+[教材費]+[補講費]+[施設費] このマクロをイベントのどこに入れればスムースに計算されるでしょうか?
- ベストアンサー
- オフィス系ソフト
お礼
ありがとうございます。うまい具合にいきました。 DateAdd関数の記述だけではダメなんですね。 同時にそれを項目に代入しないからエラーになってたようです。 レベルの低い疑問につきあっていただいて ありがとうございました。