- ベストアンサー
Access97で月末と照合して入力できますか?
使用ソフトはAccess97です。 例えばアクセスのテーブルに フィールド1に今月の末日を入力します。(年と月を入れれば自動で末日が記されれば、なお有り難いです) フィールド2にある日の日付を入力します。 フィールド3にある日の日付が月末になってなければ数値1を、月末を越えて来月になっていれば0が自動入力される フィールド3のこのような関数はありますか?エクセルではIF関数を用いればできることなのですが、アクセスではわからないのです。 どなたかお詳しい方、よろしくお願いします。
- オフィス系ソフト
- 回答数3
- ありがとう数2
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
FAQです。「翌月1日の前日 = 今月末」であることに着眼すれば、DateSerial関数を使用して月末日を求められます。 (例) Public Function GetEndOfMonth(ByVal dtmSource As Date) As Date '月末日を求める。 GetEndOfMonth = DateSerial(Year(dtmSource), Month(dtmSource) + 1, 0) End Function > フィールド3にある日の日付が月末になってなければ数値1を、月末を > 越えて来月になっていれば0が自動入力される これもDateSerial関数で求められます。 ・・・というか、日付型フィールドへの連結コントロールなら、月末を超える 日付(例 : 3月32日とか)は入力できないのでは?
その他の回答 (2)
> ご回答ありがとうございます。遅くなってすみませんでした。 > 上記された関数はどこに入力するのでしょうか?Access97ですが・・・。 > 質問以前の質問ですみません。 申し訳ありませんが、VBAで簡単なプログラミングができ(技量は問わず)、理解できるレベルでないと、簡潔に説明するのは非常に厳しいです。 Access VBAの書籍を購入された方がよろしいかと思います。 (多数出版されていますので、書店に行けばいくらでも手に入りますし、立ち読みもできます) 最初からむずかしいものを作ろうと欲張りさえしなければ、さほどむずかしいものではありません。
お礼
ご回答ありがとうございました。 VBA設定が必要なのですね。これから勉強していきたいと思います。Excelだとちょっとシートや関数をひねればできることだったので、Accessでもできるかなと思ったのですが、要はまだAccessに慣れていないというのが問題かもしれませんね。 またわからないことがありましたら教えてください。よろしくお願いします。
- aptiva
- ベストアンサー率36% (193/529)
すべての答えになってないですが、月末日の求め方です。 考え方としては、「当月の翌月のついたちの前日が当月の末日」です。 matu = DateAdd("m",1,DateSerial(Year(dt),Month(dt),1))-1 上の式でdtに任意の日付を入れると、その日の月末日がmatuに代入されます。
お礼
ご回答ありがとうございます。 VBAのレベルが必要な設定みたいですね。これから勉強したいと思います。Excelだとちょっとシートや関数をひねればできることが、Accessでは一筋縄ではいかないようですね。 またわからないことがありましたら教えてください。よろしくお願いします。
関連するQ&A
- アクセス 前月の月末日を求めたい
日付 前月の末日 2009/6/29 2009/5/31 というように、 クエリで「前月の末日」を作成し、 日付から前月の末日を求めたいのですが どのような式を作ればいいのでしょうか? 日付フィールドはテーブルのデータです。 よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- アクセスに自動入力を入れたい
accessで、EXCELでのVLOOKUP関数のようなものを使いたいのですが フィールド1にCODE番号を入れると、フィールド2に自動入力という ようなことをしたいのです。 (1)テーブル1に区分テーブルを作りました。 例:1 A社 2 B社 3 C社 (2)テーブル2に次のように入れたい 例:フィールド1に「1」と入力すると、 フィールド2に「A社」と入力される これは可能でしょうか? もし、説明されているページなどがあれば、 そのURLを教えていただけると助かります。 当方、accessは入力程度しか経験がないため、 初心者向けでの説明をしていただけると幸いです。 よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- accessのクエリで入力が不可能…
【テーブルA】 フィールド1〔数値型〕 フィールド2〔テキスト型〕 フィールド3〔テキスト型〕 フィールド4〔数値型〕 【テーブルB】 フィールド1〔数値型〕 フィールド2〔テキスト型〕 フィールド3〔数値型〕 フィールド4〔テキスト型〕 となっています。 両方のテーブルを使い、クエリを作成しました。 リレーションが、テーブルAのフィールド1と、テーブルBのフィールド3に設定してあります。 このようにして作成したクエリでデータの入力ができません。 なぜでしょうか? Access2000です。
- ベストアンサー
- オフィス系ソフト
- 月末を動的に表示、非表示にする
エクセルで、年、月を入力するとその月の日付が動的に表示されるものを作っています。 月末の問題で、31日の日もあれば30日の日もあるため、 DATE(YEAR(年),MONTH(月)+1,1)-1で月末を求め、IF文で制御しようと、 IF((DATE(YEAR(年),MONTH(月)+1,1)-1)=31,"31","")という式を入れているのですが、 30日の月も、31日の月も日が表示がされません。 どこに問題があるのでしょうか。かなり切羽詰っています。 エクセルの関数は苦手のため、 お詳しい方がいらっしゃいましたらご回答お願いします。
- ベストアンサー
- オフィス系ソフト
- Accessでボタンを押すと今日の日付を入力
Access 2002で、フォーム内のボタンを押すとあるフィールドに今日の日付を入力させたいのですがどのように書けばいいでしょうか。 例) テーブル:顧客情報 フィールド名:購入日 よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- アクセスのデータ入力について
アクセスのテーブルの入力で同じフィールドへ同じデータを繰り返し入力する項目(日付など)があるのですが、1回だけ入力して他のレコードに反映させることはできないものでしょうか?解答よろしくお願い致します。
- ベストアンサー
- オフィス系ソフト
- Accessで日付から曜日を自動で入力させる
表題の通りですが、Accessで以下のような事は可能でしょうか? 1.フィールド1に日付を入力(例;2002/5/17) 2.フィールド2に日付・曜日を自動的に入力 (例;5月17日(金)) 入力作業は基本的に、入力用のフォームをつくって そこで行っています。
- ベストアンサー
- オフィス系ソフト
- AccessのDateSerial関数
テーブルの「登録日」というフィールドに記入してある日付から、3年後の日付を表示させるためにフォームでDateSerial関数を使っています。 しかしこの関数を使ってみると、テーブルの「3年後日付」フィールドにはDateSerial関数で計算させた日付が入ってきません。 また、同じ事をクエリでもDateSerial関数を使って行ってみましたが、やはりテーブルには反映されませんでした。 どうすればテーブルに3年後の日付が反映されるようになりますか? かなりAccessの初心者なので変な事を聞いてしまっているかもしれませんが、どうぞアドバイスをよろしくお願い致します。
- ベストアンサー
- オフィス系ソフト
- 日付から月末を取得したい
初めての投稿です。 access2000を使用しております。 クエリーを使用して日付フィールドからその月の月末を表示させたいと思っております。月末が土曜日や日曜日の場合は、その前日あるいは前々日の金曜日を月末にしたい。 ご教授のほどよろしくお願いいたします。
- ベストアンサー
- その他(データベース)
補足
ご回答ありがとうございます。遅くなってすみませんでした。 上記された関数はどこに入力するのでしょうか?Access97ですが・・・。質問以前の質問ですみません。