MS ACCESS には Datediff関数はありますが、エクセルのNETWORKDAYS関数またはそれに代わる方法はないでしょうか。
ある依頼の受付から回答するまでの日をもとめたいのですが、単純な引き算ではなく、土日や祝祭日を除いた日数(営業日)が必要です。
エクセルでは、受付日と回答日をNETWORKDAYS関数で処理すると何営業日かを知ることができます。 残念ながらACCESSでこれを実現するすべをしりません。
どなたかご存知の方がいらっしゃいましたら、どうか助けてください。
No.4ベストアンサー
- 回答日時:
No.1です。
「できるはずです」と先ほど書いたのは、自動カレンダーを作成したことがあるからです。
ここにスクリプト全部を書くのも面倒なので、要点のみですが、休業日をテーブルに登録する手順を書きます。
1)土日が必ず休業ならば、土日をリテラルでテーブルに登録する。
2)規則的な休日を別のテーブルに保存する。
これは2通りのパターンがあります。
a)毎年同じ日
b)成人の日のように第○月曜日
それぞれ登録の仕方を工夫してみてください。
3)それ以外の社休日を別のテーブルに登録する。
4)2)と3)のテーブルから1)のテーブルにリテラルで登録する。ここのポイントは振替休日です。まあ全体の中から考えると大した手間ではありません。
上記1)4)は要求された期間についてテーブルを作成するように組むと便利です。
与えられた期間の休業日を得るにはクエリーを使います。もちろんクエリーも要求された期間に応じて自動的に作成されるようにします。すでにできている期間は作成しないようにするのは当然です。
1)のテーブルにインデックスやキーを設定するとレスポンスが悪くなるので設定しない方がいいでしょう。
この方法のメリットは、一度組んでしまえば3)のメンテナンスを気にするだけでほとんど半永久的に使えます。休日が変更になったら2)をいじればOK。変更前に過去の休業日を全部登録してしまえば、2)の変更が過去に影響することもありません。
デメリットは、最初がえらく大変だということです。どの程度使うのかによって考えればいいと思います。
どうもありがとうございました。
結局、一行一行取り出して、EXCELの関数をオートメーションで呼び出し、一行一行書き込むということしかないのかなぁと思っています。
でもそのコードは書けない...
いづれにしてもありがとうございました。
No.3
- 回答日時:
(1)開始日を決める。
それ以前の日付けを始点にしないルールにする。(2)日付けシリアル値で扱う。
(3)土日はWeekDay関数を使って日数から除く
(4)祝祭日は、テーブルをもって(#2003/7/21#のような)、それに該当する日を日数から省く。
(5)祝日の日が浮動するのでテーブルしかない。
ロジックで組みこむと相当ややこしい。
(6)シコシコとロジックを考えプログラムを組む。
(7)(5)から、定期的にテーブルをメンテすると言う
最も面倒なことになりますが、覚悟せざるを得ないでしょう。メンテの必要なことを利用者に知らせる仕掛けを作っておく。例)祝日最終更新日XXXXと利用の都度メッセージをだすとか。普通は会社のシステム部やオペセンターの仕事が、パソコンでは、誰かに回ってくるわけです。
No.2
- 回答日時:
ありません。
要件に合うロジックを自前で作り込むしかありません。
土日はともかく、祝祭日は国によって違いますし、法改正による変更もありますので、汎用関数としてパッケージに組み込むのは困難だと思います。
(Microsoftの肩を持つ訳ではありませんが)
No.1
- 回答日時:
日常的に使っているアクセスが97なので、間違っているかもしれませんが、営業日を返す関数はないはずです。
少々面倒なことになってしまいますが、営業日若しくは休業日のデータベースをつくって、クエリーでカウントするというのはいかがでしょう。日付に対する曜日は、Weekday関数でわかるので、その他の休業日を登録するプログラムを組めば、自動的にテーブルを作成できるはずです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
字面がカッコいい英単語
あなたが思う「字面がカッコいい英単語」を教えてください。
-
アクセス:既定値に土日含まず3日後を指定したい
Access(アクセス)
-
Accessでの稼働日数計算の方法
その他(データベース)
-
Accessで規定値に土日含まず5日前を指定したい
Access(アクセス)
-
-
4
前のレコードの値を自動で入れたい
PowerPoint(パワーポイント)
-
5
accessで指定期間の曜日カウントしたい
その他(データベース)
-
6
アクセスで営業日を計算させる方法について
Access(アクセス)
-
7
ACCESSで1月1日~12月31日までの日付を入れる方法
その他(データベース)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・「I love you」 をかっこよく翻訳してみてください
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・昔のあなたへのアドバイス
- ・かっこよく答えてください!!
- ・あなたが好きな本屋さんを教えてください
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「テーブルに座って……」という...
-
男性と2人で飲食店に行きテーブ...
-
お金持ちのテーブル
-
L2SWはARPテーブルを持っている?
-
今度同じサークルだった女の子...
-
ダイニングテーブルの真上に来...
-
オーダーの覚え方について
-
コンボボックスにレコードセッ...
-
頭悪い人って物捨てませんよね?
-
複雑なSQL文について
-
ベッドの上のテーブルってなん...
-
面接のときテーブルが正面に。...
-
少人数披露宴のテーブル
-
Compact Edition でテーブルの...
-
SNS会員サイトのデータベース構造
-
off of と fromの違いを教えて...
-
1つのテーブルに同じデータを参...
-
飲み会で、座敷orテーブルどち...
-
AccessのSQL 部分一致したデー...
-
コーヒーテーブルって何ですか?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
L2SWはARPテーブルを持っている?
-
男性と2人で飲食店に行きテーブ...
-
外部キーだけのテーブル(主キ...
-
お金持ちのテーブル
-
テーブルリンク リンク元を知...
-
飲み会で、座敷orテーブルどち...
-
「テーブルに座って……」という...
-
面接のときテーブルが正面に。...
-
会社の飲み会の幹事になり、座...
-
オーダーの覚え方について
-
テーブル(構造)のコピー
-
論理名とコメント構文(?)について
-
MySQLで複数テーブルを作成する
-
SQL クエリ データ数
-
SQL 外部結合
-
アクセスのリンクテーブル一覧...
-
【エクセル】データテーブルの...
-
【PHP】SQL文のSUM関数で出力し...
-
件数の多い順にselect
-
1対1のリレーション(主キー同...
おすすめ情報