Excelでの関数数式は分かるのですがNumbersで使うためにNumbers用に変換を試みたのですがうまくできないので困っております。
以下のExcel関数数式をNumbers用に変換するにはどうしたら用のか教えていただけないでしょうか?
C21 colmun =IF(C7=0,0,MAX(B1-C7,0))*24
C22 colmun =(MIN(C8-C7-C9)*24)-C38-C40
C23 colmun =IF(C8<=TIME(22,0,0),0,(C8-"22:00")*24)
C24 colmun =MIN(C12-C11-C13)*24
C25 colmun =MIN(C16-C15-C17)*24
B1=6:00
F1=22:00
C7=17:00
C8=21:45
C9=0:00
C10=4.75
C11=12:00
C12=21:30
C13=0:00
C14=9.5
C15=17:00
C16=21:30
C17=0:00
C18=4.5
No.2ベストアンサー
- 回答日時:
はい、勤務表だろうなとは思っていました。
ところであの後手元にあるMacでもう一度調べてみたら、もっと根本的な問題があることに気付きました。「Numbersの時間計算は直接行えないことが多い」という、恐るべき問題です。普段からNumbersを使っていれば真っ先に気付けたはずなのに、1日かかるとは使ってないのがバレバレですね…。この問題、例えばセルA1~A3にそれぞれ出勤時間・退勤時間・休憩時間が入っていたとして、総稼働時間は=A2-A1-A3 で求まるはずなんですが、Numbersではこれはエラーになってしまうんです。それを回避する方法は、以下になります。これで9時出勤18時退勤の1時間休憩で、答えが0.333333になることは確認しました。
=TIMEVALUE(A2)-TIMEVALUE(A1)-TIMEVALUE(A3)
つまり、
「時間が入っているセルを計算に使うには、全てTIMEVALUE関数で受けなければならない!!」
ということです。ただそれはそれとして、今の式でMIN関数を使うのは無意味なばかりか、混乱の原因を作るだけなのでやめた方が良いでしょう。以上を踏まえるとセルC24の式はこうなります。他の式も全てこの形に直してください。
=(TIMEVALUE(C12)-TIMEVALUE(C11)-TIMEVALUE(C13))*24
それにTIMEVALUE関数を使うと、セルC23の式は以下のようにもっと22時であることを明示的に書けます。
=IF(C8<=TIMEVALUE("22:00"),0,(C8-TIMEVALUE("22:00"))*24)
ちなみにTIMEVALUE関数はExcelでもNumbersでも、23:59:59までしか扱えないという難点があって、TIMEVALUE("24:00")がエラーになってしまうんです。でもなぜかExcelでは、VALUE("24:00")はエラーにならないし、ちゃんと正しいシリアル値が返ってきます。さらに言うとVALUE("30:00")も正常に1.25を返します。なのでVALUE関数は有能だけど、TIMEVALUE関数は存在価値あるの?な感じになってるんですよね。
ただここでもNumbersは挙動が違ってて、以下の式はエラーになってしまいます。だからもし24時超えがある時は、日付も含めて計算するしかないですね。
=VALUE(A2)-VALUE(A1)-VALUE(A3)
この辺の「ん?」という挙動がある以上は、NumbersはMacユーザーの中でも完全には主流になりきれないでしょう。それにそもそもExcelってMacのソフトだから、そこまで心理バリヤは強くなさそうだし。
色々と調べていただいてありがとうございます。私のような普通の事務員では高度なレベルです。PCがMacなのでNumbersでけれらの作業ができればと試行錯誤しておりました。
おとなしく今まで通りExcelで勤怠処理行います。本当うにありがとうございます。
No.1
- 回答日時:
根本的にMIN関数の使い方を間違っていませんか?MIN関数はMAX関数と対になる、最小を求める関数です。
その関数の中で引き算して何がしたいんでしょう?=MIN(C12-C11-C13)*24
=(C12-C11-C13)*24
では、答えは全く同じです(試してみてください)。これはNumbersとExcelの違いをうんぬんする以前の問題ではありませんか?しかしExcelはこの式はエラーにならず、そのまま引き算の答えを返すだけです。
またExcelは、"22:00"のような文字列をそのまま式の中に書いても、時刻形式だと判断できるものなら自動的に変換して良きに計らってくれますが、Numbersも同じようにやってくれる保証はありません。なのでできるだけ横着をせず、VALUEやTIMEVALUE関数で受けるべきだと思います。
fakeflakeさん、すみません。私の質問の仕方が説明不足でした。
これは勤怠表です。
C7~C18は実際に勤務した時間です。
C7~C10の勤務時間(時刻表示)がC21~C23に数値として計算されて表示されます。
給料計算をするのに数値が必要なためです。
C11~C14はC24に、C15~C18はC25に数値として計算されて表示されます。
そこでC21~C25に入力したXcelの下記の関数がNumbersでは機能しないというこでございます。
Xcelフォーミュラ
C21 colmun =IF(C7=0,0,MAX(B1-C7,0))*24
C22 colmun =(MIN(C8-C7-C9)*24)-C38-C40
C23 colmun =IF(C8<=TIME(22,0,0),0,(C8-"22:00")*24)
C24 colmun =MIN(C12-C11-C13)*24
C25 colmun =MIN(C16-C15-C17)*24
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルの関数式を教えてください。 2 2022/11/29 21:09
- その他(Microsoft Office) IF関数について教えてください 2 2022/05/10 13:31
- Excel(エクセル) Excel表示形式 2 2022/09/09 09:57
- Excel(エクセル) Excelについて質問があります。 関数の数値入力についてなのですが、 b1にー c1に数値 がある 2 2023/05/28 12:30
- Excel(エクセル) A列が指定数値以上になったらD列の計算式を変更 3 2022/07/11 11:03
- Excel(エクセル) エクセル関数教えてください 3 2022/06/21 10:22
- Excel(エクセル) Excel セルの数値を参照させるにはどうすれば良いですか? 4 2022/08/28 16:50
- Excel(エクセル) Excel 数式を教えてください 2 2022/06/02 12:24
- Excel(エクセル) エクセルVBAでセルに表示されているとおりの数値を取得したい(時間の計算結果) 1 2022/03/30 17:52
- Excel(エクセル) エクセルの関数 7 2022/10/25 23:23
おすすめ情報
- ・「みんな教えて! 選手権!!」開催のお知らせ
- ・漫画をレンタルでお得に読める!
- ・「黒歴史」教えて下さい
- ・2024年においていきたいもの
- ・我が家のお雑煮スタイル、教えて下さい
- ・店員も客も斜め上を行くデパートの福袋
- ・食べられるかと思ったけど…ダメでした
- ・【大喜利】【投稿~12/28】こんなおせち料理は嫌だ
- ・前回の年越しの瞬間、何してた?
- ・【お題】マッチョ習字
- ・モテ期を経験した方いらっしゃいますか?
- ・一番最初にネットにつないだのはいつ?
- ・好きな人を振り向かせるためにしたこと
- ・【選手権お題その2】この漫画の2コマ目を考えてください
- ・2024年に成し遂げたこと
- ・3分あったら何をしますか?
- ・何歳が一番楽しかった?
- ・治せない「クセ」を教えてください
- ・【大喜利】【投稿~12/17】 ありそうだけど絶対に無いことわざ
- ・【選手権お題その1】これってもしかして自分だけかもしれないな…と思うあるあるを教えてください
- ・集合写真、どこに映る?
- ・自分の通っていた小学校のあるある
- ・フォントについて教えてください!
- ・これが怖いの自分だけ?というものありますか?
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・10代と話して驚いたこと
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
excelで小数点0を表示させる方法
-
Googleスプレッドシートで合計...
-
【EXCEL】関数で計算された数字...
-
エクセルの文字列を結合しても...
-
Excelで合計の金額を違うセルに...
-
エクセルで網掛けをしたセルを...
-
エクセルで0.0と表示したい
-
エクセルへバーコードリーダー...
-
エクセルの文章の修正法について
-
他シートのある列を検索して一...
-
エクセル 絶対値の合計
-
EXCEL VBA 選択範囲をTargetに
-
Excelで小数点の位置を揃えるの...
-
エクセルのグラフで、空白なの...
-
EXCELで改行しながらセルを連結...
-
vlookupで返された値が空白だっ...
-
セルの数式を計算させないで文...
-
EXCELで番号を自動的にふりたい
-
1点の辻の字に変換したいがエク...
-
「未使用」と「不使用」ってど...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで0.0と表示したい
-
excelで小数点0を表示させる方法
-
Googleスプレッドシートで合計...
-
【EXCEL】関数で計算された数字...
-
他シートのある列を検索して一...
-
エクセル 絶対値の合計
-
vlookupで返された値が空白だっ...
-
エクセルの文字列を結合しても...
-
エクセル .50以下で切り捨て、...
-
セルの数式を計算させないで文...
-
Excelで合計の金額を違うセルに...
-
EXCELで上位10個のデータを平均...
-
エクセルで網掛けをしたセルを...
-
マクロ クリックしたら色変わる
-
エクセルで運賃計算
-
Excel VBAにてUserFormのTextBo...
-
エクセル 背景色のついたセル位...
-
-EXCEL- 突然、関数が無効に...
-
Excelで方眼紙を作り、そこに手...
-
エクセルつくったグラフで10月...
おすすめ情報
補足でございます。
C21はもし6:00(B1)前に勤務した場合に勤務時間が数値で表示されます。
C22はこの日の勤務時間が数値で表示されます。
C23はもし22:00(F1)以降に勤務した場合に勤務時間が数値で表示されます。
C24とC25は6:00前、22:00以降関係なしにこの日に勤務した時間が表示されます。