Access初心者です。
クエリを使用し、入社年月(yyyymm)から現在までの勤務年月を●年●ヶ月という形で算出したいと思っております。
たくさん同類のご回答を参考にしてみたのですが、日にちを含むものが多く、自信がありません。
例えば、現在-201311とし、
入社年月 201211 ですと、1年1ヶ月
201212 ですと、1年
201301 ですと、11ヶ月 というように、出力させたいと思います。
また、1年0ヶ月、0年11ヶ月という時に、’0’は出力させたくありません。
たくさん同じようなご質問がある中、申し訳ありませんが、至急ご回答いただけるとありがたいです。
よろしくお願い致します。
No.1
- 回答日時:
モジュールを宣言して、vbaのDateDiff関数を呼び出す自作関数を定義。
差を"M"で取得して、12で除算・剰余を求めて文字列化する
参考URL:http://office.microsoft.com/ja-jp/access-help/HA …
No.2ベストアンサー
- 回答日時:
こんなユーザー定義関数を作っておけば?
クエリに直接も出来なくはないだろうけど、長ったらしくなるので割愛
手順
下記コードの、Function service~ から最後のEnd Function までをコピー
Accessに戻って
Alt + F11 を押しますと VBE が立ち上がります。
メニューから、挿入 → 標準モジュールを選択。
Option Compare Database
Option Explicit ※(ツール→オプションの編集タブの「変数の宣言を強制する」にチェックがある場合のみ)
だけが表示された新たなウィンドウが出ますのでそこにペースト
メニューのデバッグ→▽△のコンパイルを選択。
エラーが出ないのを確認して、Alt + F11 で VBE から切り替えます。
クエリのデザイングリッドで
氏名|入社年月|勤続年数:serviceLength([入社年月])
とすれば表示されます。
Function serviceLength(ByVal fromDate As Variant) As String
On Error GoTo errh
'入社月の前月をもって1年とカウントします。数え年式
'201211と201311 → 1年1ヶ月
'201212と201311 → 1年
'入社月の同月で1年とする場合は、myCount = 0 にします 満年齢式
'201211と201311 → 1年
'201212と201311 → 11ヶ月
Dim fD As Date
Dim myCount As Integer
Dim LY As Integer, LM As Integer
myCount = 1
fD = CDate(Format(fromDate, "@@@@/@@/01")) 'DateDiff関数で使えるように変換
LY = (DateDiff("m", fD, Date) + myCount) \ 12 '12 で割った商
If LY <> 0 Then 'ゼロ非表示対策
serviceLength = CStr(LY) & "年"
End If
LM = (DateDiff("m", fD, Date) + myCount) Mod 12 '12で割った余り
If LM <> 0 Then
serviceLength = serviceLength & CStr(LM) & "ヶ月"
End If
Exit Function
errh:
serviceLength = "計算できません"
End Function
お返事遅くなり申し訳ありません!!!
ご回答、どうもありがとうございました。
初心者ですが、詳しく回答いただいたおかげで、
コピぺでできるなんて、とってもたすかります。
まだ、週明け早々、会社で使用させていただきます!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 会社・職場 28歳会社員、社歴1年ですが転職するか悩んでいます。 8 2022/07/29 14:04
- Excel(エクセル) 至急です><Excelの関数を教えてください。 2 2022/03/22 17:56
- 転職 週半分在宅勤務できるけど片道2時間半かかる職場への転職 4 2023/02/04 08:08
- 求人情報・採用情報 皆さんでしたらどちらの会社に行かれるか教えてください。 年齢は45歳 男性です。既婚者です 1会社、 4 2022/06/07 08:08
- 転職 転職活動中 会社選びで迷っています 3 2022/09/05 06:10
- 正社員 皆さんでしたらどちらの会社に行かれるか教えてください。 年齢は45歳 男性です。既婚者です 1会社、 6 2022/06/04 13:51
- 交際費・娯楽費 年収520万円一人暮らしの貯金 7 2022/09/26 07:10
- 就職・退職 転職について 1 2023/02/17 14:27
- 預金・貯金 28歳4人家族の貯金平均額について。 4 2022/12/04 12:10
- 面接・履歴書・職務経歴書 履歴書に職歴詐称してます。 5 2022/10/31 20:10
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
所属部署が分かりません・・・
-
社会人何年目とかの数え方って...
-
◆働く皆さん◆ 産休、入社何年...
-
こんばんは。 転職活動中です。...
-
コネを利用して就職にされた方...
-
恥ずかしながら勤続年数がはや...
-
履歴書 職暦について 教育委...
-
妻の職場への転職について
-
SQL Plusで項目名が最後まで表...
-
丸亀製麺でアルバイトを始めた...
-
17歳高校生です。 トヨタの期間...
-
三菱商事等の総合商社の社員は...
-
新入社員で私用で休みたい
-
履歴書の会社名の事で質問があ...
-
有給休暇日数について教えてく...
-
辛くてもう限界です。助けてく...
-
入社したばかりの派遣の休み
-
部署異動を3月に内示されたら...
-
外国人任天堂への入社について...
-
JA単協を受けている大学生です...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
社会人何年目とかの数え方って...
-
所属部署が分かりません・・・
-
恥ずかしながら勤続年数がはや...
-
SQL Plusで項目名が最後まで表...
-
転職の入社日当日に体調不良で...
-
◆働く皆さん◆ 産休、入社何年...
-
財団法人に入ると。
-
コネ入社経験者様、コネ入社の...
-
就活の時ですが自分に親の影響...
-
17歳高校生です。 トヨタの期間...
-
精神を強くする方法はあります...
-
部長という役職はやっぱりすご...
-
入社後 身上書を書かされるのは...
-
JA単協を受けている大学生です...
-
妻の職場への転職について
-
履歴書 職暦について 教育委...
-
こんばんは。 転職活動中です。...
-
保険業界 就職 ブラックリスト
-
コネ入社ってわかりますか?
-
新入社員で私用で休みたい
おすすめ情報