現在Excelのマクロにて勤怠の時間計算を行っています。
終わった時間から開始時間を引いて何時間働いたかを出したいです。
ただ夜勤の場合日付が変わって就業時刻が終わる為
24時を超えた計算を行いたいです。
例
FM9時開始AM6時終わりの場合
30時-21時を引いた9時間という感じの計算を行いたいです。
行ってみた事。
TimeValue("30:00")-TimeValue("21:00")という計算を行ったところエラーとなってしまいました。(型が一致しませんとでました)
TimeValueだと24:00以上の値は使えないのでしょうか?
また、どの関数なら24時以降の計算が行えるのでしょうか?
初歩的な質問で申し訳ございませんが宜しくお願いします。
No.2ベストアンサー
- 回答日時:
Double型として時間を取得してみてはいかがでしょう
dim d1 as double, d2 as double, d3 as double
dim t1 as date
' 6:00として入力
d1 = TimeValue("6:00")
d2 = TimeValue("21:00")
d3 = d1 - d2
if d3 < 0 then
' マイナスの場合は 1日分加算する
d3 = d3 + 1.0
end if
' シリアル値を日付型に代入して時間を取得
t1 = d3
debug.print t1
といった具合です ...
なるほど!!!
これなら日勤の場合も夜勤の場合も1つの計算式でいけます!
日付が変わった場合だけの式を考えておりました。
一つの式で両方をまかなえる式を書き込んで頂ありがとうございます♪
No.1
- 回答日時:
こんにちは
Timevalue 関数は、時間ではなくて時刻をシリアル値(一日は、0 から0.99999999の範囲)に変換する関数です。
24:00以上の値は使えません。また24:00は、シリアル値で 0 (=0:00)になってしまいます。
シリアル値の性質を考えると単純に日付を含めて引き算すると時間が求められます(2009/3/10 9:30 のセルB1から 2009/3/9 8:15のセルA1を引く例 =B1-A1)。
24:00以上のシリアル値を表示するときは、表示形式を [h]:mm にします。
書き込みありがとうございます。
Timevalue関数は24:00以降は使用できなかったんですね。
>24:00以上のシリアル値を表示するときは、表示形式を [h]:mm にします。
これはセルの表示形式を変更するという事でしょうか?
セルの表示形式ではなくマクロ内で24:00以降の値を使用する場合はどうしたらいいのでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセル マクロ 指定日の指定時刻にプロシージャを実行 4 2022/04/17 16:44
- Excel(エクセル) 指定した値以上の中で最小値を出したい 7 2022/10/24 21:12
- その他(ビジネス・キャリア) 日報の実務労働時間の集計について困っています。 2 2023/06/09 19:00
- その他(Microsoft Office) Excel 勤務時間の計算について~(残業)有.無しの場合。 4 2022/07/17 21:03
- その他(Microsoft Office) 勤務表のエクセル作成で数式を教えてください。 1 2023/01/17 03:27
- 労働相談 有給休暇使用時の賃金の計算方法について 5 2022/04/04 00:02
- Excel(エクセル) 勤務表ですが、思うように出来ません。 3 2023/05/19 06:43
- Excel(エクセル) Excel関数で日またぎの勤務時間にしるしを立てる 2 2022/04/20 17:22
- Excel(エクセル) 月間シフト表から総勤務時間を計算する関数 4 2023/05/20 07:12
- Excel(エクセル) エクセルの早退時間を計算したいです。計算はうまくいっているようですが… 1 2022/12/26 16:22
このQ&Aを見た人はこんなQ&Aも見ています
-
それもChatGPT!?と驚いた使用方法を教えてください
仕事やプライベートでも利用が浸透してきたChatGPTですが、こんなときに使うの!!?とびっくりしたり、これは画期的な有効活用だ!とうなった事例があれば教えてください!
-
歳とったな〜〜と思ったことは?
歳とったな〜〜〜、老いたな〜〜と思った具体的な瞬間はありますか?
-
自分独自の健康法はある?
こうしていると調子がいい!みたいな自分独自の健康法、こだわりはありますか?
-
【選手権お題その3】この画像で一言【大喜利】
とあるワンシーンを切り取った画像。この画像で一言、お願いします!
-
今から楽しみな予定はありますか?
いよいよ2025年が始まりました。皆さんには、今から楽しみにしている予定はありますか?
-
vba 時間の引き算 例えば 15:00から16:15の間の時間は1時間15分ですが、vbaのコード
Visual Basic(VBA)
-
vbaの時間計算について
Excel(エクセル)
-
IF文に時間(何時から何時まで)の条件文を付けたい
Word(ワード)
-
-
4
VB2013での時間帯判定で困っています
Visual Basic(VBA)
-
5
VBAで時間の型と計算方法教えてください
Excel(エクセル)
-
6
エクセルVBAの時間計算
Excel(エクセル)
-
7
vba セルに入力した時間をマクロで受け取るには?
Excel(エクセル)
-
8
VBAでの勤務時間計算
Visual Basic(VBA)
-
9
excel vba 時間計算と条件分岐の質問
Visual Basic(VBA)
-
10
VBAで時間(00:00形式)を積算(足し算)したい
Visual Basic(VBA)
-
11
【Excel】セル内の時間帯が特定の時間帯に含まれるかの判定
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・「みんな教えて! 選手権!!」開催のお知らせ
- ・漫画をレンタルでお得に読める!
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・【選手権お題その3】この画像で一言【大喜利】
- ・【お題】逆襲の桃太郎
- ・自分独自の健康法はある?
- ・最強の防寒、あったか術を教えてください!
- ・【大喜利】【投稿~1/9】 忍者がやってるYouTubeが炎上してしまった理由
- ・歳とったな〜〜と思ったことは?
- ・ちょっと先の未来クイズ第6問
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・【選手権お題その2】この漫画の2コマ目を考えてください
- ・【選手権お題その1】これってもしかして自分だけかもしれないな…と思うあるあるを教えてください
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
有効数字について 以前質問をし...
-
c languageで 簡単な質問があ...
-
三菱シーケンサ(Aシリーズ)で...
-
2038年問題 日付算出
-
O(n log n)について2
-
大きすぎる数値になるとE+にな...
-
ExcelでPC(パソコン)によって...
-
16進数 加算 減算 C言語
-
Double型について
-
VBAでミリ秒まで出力する方法
-
C言語でセルオートマトンを作成...
-
n=a&&b==c<d<<eの計算方法
-
2進数データのビット演算
-
VB6.0での小数点の扱いについて
-
1以下になる数値計算
-
ExcelのINT関数の計算結果がお...
-
VB.net Double と...
-
VBAでの割り算の余りの求め方
-
double型からfloat型への型変換...
-
2進数の足し算(C言語)
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VB.net Double と...
-
O(n log n)について2
-
c languageで 簡単な質問があ...
-
有効数字について 以前質問をし...
-
ExcelのINT関数の計算結果がお...
-
三菱シーケンサ(Aシリーズ)で...
-
VBAでミリ秒まで出力する方法
-
16進数 加算 減算 C言語
-
ExcelでPC(パソコン)によって...
-
時刻の比較
-
除算を使わずに10で割りたい。
-
計算の丸め誤差の解消について
-
VB6.0での小数点の扱いについて
-
”/”を使わずに割り算したいんで...
-
EXCELの関数"STDEV(標準偏差)"...
-
BCD・HEX・BINについて
-
2038年問題 日付算出
-
2進数の足し算(C言語)
-
VBAのINT関数について
-
どんな数字を入力してもaverage...
おすすめ情報