ウォーターサーバーとコーヒーマシンが一体化した画期的マシン >>

セルK1の日付を参照して満年齢を表示しましょう
セルK1の日付を参照して勤続年数の年を表示しましょう
セルK1の日付を参照して勤続年数のヶ月を表示しましょう

この三つのやり方がわかりません。どなたかやり方教えていただける方いませんか?

「セルK1の日付を参照して満年齢を表示しま」の質問画像

A 回答 (5件)

どうでもいいんですが、K1には日付が入っているようには見えませんが?


L1じゃないんですか?
    • good
    • 1

DATEDIF使わせたいんだろうなぁ。

    • good
    • 0

満年齢


勤続年数の年
勤続年数のヶ月(?)

まずは言葉の意味を正しく理解することが必要です。
そうすることで、何を求める問題なのかを明確にできます。

で、そのうえで「何が分からない」のですか?
基本は引き算です。
引き算の仕方が分からないということでしょうか。
そして引き算した結果をどう扱うかと言うことになるですよね。
それぞれどう扱いたい?

…と、突っ込んで考えないと
 「そんなことどうでもいいから答えだけ教えろ」
という作業依頼になってしまいます。
ここは【Q&Aサイト】ですので作業依頼や代行なら他で行いましょう。

・・・
自分なら引き算の結果を「セルの表示形式」の設定で済ませちゃうけどなあ。
値にする必要があるならTEXT関数に入れて、その表示形式を指定しちゃう。
    • good
    • 0

年はどちらもDAYS360で求まると思います。

月数はIFとMONTHで求まる思います。
    • good
    • 0

それぞれ、K1と基準(今日)の年月日の差分から、


経過年数か経過月数を求めればよいです。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aと関連する良く見られている質問

Qエクセルについて。

次の数式を求める関数(下の方のプラン表)は、どんな数式を打てば良いのでしょうか?教えていただけると幸いです。

Aベストアンサー

単純な足し算ですよね。
添付画像のように作ったとして

[C8]=SUM($B$2,C$7,$B8)

これを[C8:F12]の範囲にコピーすればOK。

通常、数式のセルは、コピー貼り付けすると、移動先に応じてセルアドレスが変わってしまいますが、
「$」をつけることで、固定することができます。

上の式だと、どこに移動しても

$B$2 は B2 を参照するように固定される。

C$7 は 7行目 を参照するように固定される。
(式を下にコピーしても、7行目に固定される)

$B8 は B列 を参照するように固定される。
(式を右にコピーしても、B列に固定される)

ということになります。
$をつけて参照先を固定するのを「絶対参照」、
つけていない普通の場合は「相対参照」、
と言います。
より詳しいことは、このキーワードで検索して調べてみてください。

金額表示については、セルの書式から、
分類:通貨
記号:\
にしてあります。
実際のセルに「\」は入力されていません。

QEXCEL

EXCELにおいてDOY(Day of Year)を求めたいです。
DOYとは、例えば、1月30日なら30、4月30なら120というふうに。
ここまでならネットにもやり方がのっているのですが今回は1月1日を基準に12月1日は-31、11月30は-32というふうに1月前を-という感じで表記したいのですが、なにかいい方法はありますか?

Aベストアンサー

対象の年の前年の12月31日を引けばいい。
そんだけ。

Excelの日付けは「シリアル値」になっています。
1900年1月1日 0時0分 が「1」
1900年1月2日 0時0分 が「2」
・・・
2018年11月27日 0時0分が「43431」
となっています。
従って、前年の12月31日のシリアル値を引けば、その年の日数になります。
ただしセルの表示形式を「日付」ではなく「標準」や「数値」にすることを忘れないでください。

A1セルに日付が入力されているなら

 =A1-(DATE(YEAR(A1)-1,12,31)
 =A1-((DATE(YEAR(A1),1,1)-1)
 =A1-(DATE(YEAR(A1)-1,1,1)+1

こんなんで十分。

Q非表示のセルに値が入っているか検出したい

お世話になります。

VBAを使用せずに、セル関数だけで実現したいと思っています。

1行目が非表示の状態で、
 A1セルに文字が入っていればB2セルに"有り"
 A1セルに文字が入っていなければB2セルに"無し"
1行目が表示の状態で、
 A1セルに文字が入っていればB2セルに"有り"
 A1セルに文字が入っていなければB2セルに"有り"
と表示させたいのですが可能でしょうか。

"有り""無し"の文字にはこだわらず、セルを赤色とかになってもいいので
VBAを使用せずに、
非表示のセルに文字があるか、ないか
表示セルに文字があるか、ないか
を検出したいのです。

何とぞよろしくお願い申し上げます。

Aベストアンサー

ごめん。
なぜ
> A1セルに文字が入っていなければB2セルに"有り"
とする必要があるのか自分には理解できないので、
 「非表示のセルに値があるかを表示する」
を目的としてアドバイスしてみます。

COUNTA関数でセルに入力されている値の数を数えることができますね。
これは行や列が非表示でも数えます。
SUBTOTAL関数は非表示のセルに対して集計を行いません。
すなわち、

 COUNTA関数が返す値

 SUBTOTAL関数でCOUNTA関数相当の集計をした結果
が等しくなければ
 非表示のセルに値が存在する
と判断できます。

 =IF(COUNTA(A1)=SUBTOTAL(103,A1),"無し","有り")

となりますが、行表示させているときに”有り”/”無し”表示はおかしな話です。
B1セルにダミーの値を入れておき、それをSUBTOTAL関数で集計し、非表示かを判断させるという方法で対処してみましょう。
ついでに質問文にあるよく分からない判定に合わせてみます。

 =IF(SUBTOTAL(103,B1)=1,"有り",IF(COUNTA(A1)=SUBTOTAL(103,A1),"無し","有り"))

ベタな方法で処理しましたので、もっとスマートな方法があるかと思います。
でも面倒なのでパス。
そこは質問者さん自身で精査して調整してください。
考え方は示しましたので、ご自身で判断と調整ができると思います。

ごめん。
なぜ
> A1セルに文字が入っていなければB2セルに"有り"
とする必要があるのか自分には理解できないので、
 「非表示のセルに値があるかを表示する」
を目的としてアドバイスしてみます。

COUNTA関数でセルに入力されている値の数を数えることができますね。
これは行や列が非表示でも数えます。
SUBTOTAL関数は非表示のセルに対して集計を行いません。
すなわち、

 COUNTA関数が返す値

 SUBTOTAL関数でCOUNTA関数相当の集計をした結果
が等しくなければ
 非表示のセルに値が存在する
と判断で...続きを読む

Qエクセルでの名前の定義について

エクセルで シート1の患者の単に名前が下にずらっと並んでいて、シート2にそれぞれの患者の情報が
横に列ごとの項目種類でならんでいた場合シート1の患者に名前の定義をし(例 S患者名)、シート2でも患者に名前を定義し(例 B患者名) それぞれお互いにクリックして見れるようにハイパーリンクをしたが、シート2でソートなどをした関係か、シート2からシート1はいいが、シート1からシート2はずれてリンクささってしまうが、どうしてか? ご教授ください。

Aベストアンサー

No.1です。

このやり方は名前の定義は不要です。手順に沿って行うだけでよいです。
A列には普通に名前を羅列します。(例 A2:Aさん、A3:Bさん、・・・)
B列には下記の手順にしたがって数式を入力します。
C列にはリンクしたい先の名前を記載します。(例 C2:Bさん、C3:Cさん、・・・)
こちらで試したときのデータの配置を添付しました。(そちらのデータの配置は把握しておりません)

No.2の回答で、うまくいかなかった理由は、数式のシート名の部分が『sheet』になっているためと思われます。そちらのファイルではシート名は『シート○○』ですよね?

ついでに、もう一点微修正しましたので、以下の手順と差し替えてください。
(数式を変えただけで手順は同じです)
最下部の※も参照ください。

◆手順
1.シート1のB2セルに『=HYPERLINK(CELL("address",INDEX(シート2!A:A,MATCH(C2,シート2!A:A,))),C2)』と入力して、下方向にコピペします。
2.シート1のC列にリンク先患者名(例:S患者名)を記入します。
3.シート2のB2セルに『=HYPERLINK(CELL("address",INDEX('シート1'!A:A,MATCH(C2,'シート1'!A:A,))),C2)』と入力して、下方向にコピペします。
4.シート2のC列にリンク先患者名(例:B患者名)を記入します。


シート名やセル参照はそちらのデータにあわせる必要があります。
リンク(C列)に指定した名前がもう一方のシートの名簿(A列)に存在しない場合、リンクがエラーになります。
あっているはずなのにリンクがエラーになるときは、F2キーを押してからEnterを試してください。

No.1です。

このやり方は名前の定義は不要です。手順に沿って行うだけでよいです。
A列には普通に名前を羅列します。(例 A2:Aさん、A3:Bさん、・・・)
B列には下記の手順にしたがって数式を入力します。
C列にはリンクしたい先の名前を記載します。(例 C2:Bさん、C3:Cさん、・・・)
こちらで試したときのデータの配置を添付しました。(そちらのデータの配置は把握しておりません)

No.2の回答で、うまくいかなかった理由は、数式のシート名の部分が『sheet』になっているためと思われます。そちらのファイ...続きを読む

Q月末の自動計算

月末火曜日の日付をスタートとして稼働日数を求めたいと思っています。

10月なら9/25~10/30まで
11月なら10/30~11/27まで
12月なら11/27~12/25までの日数を計算したいです。

月末水曜日になると当月の日数に自動で計算が切り替わるよう計算することは可能でしょうか。

わかる方がいれば教えていただきたいです。
※土日は日数に含んでOKです。

Aベストアンサー

No1です

>先程試したところ8と表示されるのですが11/28~今日までが8日という計算でしょうか?
はい。下に示しますように『今日』を対象に計算する式として作成してしまいましたので、12/5(=本日)は11/27(=最終火曜日)から数えて8日目という意味になります。
(シートが自動計算の設定になっていれば、明日になると9と表示されるはずです)

私の勝手な勘違いだったかもしれませんが、「今日が月末火曜日から何日目かを計算する」関数式として考えていましたが、対象が「今日」とは限らなかったのでしょうか?
その場合は、式中の「TODAY()」の部分を対象の日(=シリアル値)に置き換えればそのまま同じ計算が可能なはずです。
例えば、対象の日がA1セルに入力されているとするなら、TODAY()を全てA1に置き換えればよいといった感じです。

>ただ、水曜日になったら前日の火曜日分も含めて計算してほしいです。
翌日の水曜日を2日目と計算したいという意味でしょうか?
(No1の説明を読んでいただければわかりますが)現在の式は、水曜日は1(日目)と表示される式になっています。
修正したい場合は、No1の式より常に1日多い値になれば良いだけなので、式の最後に「+1」を加えれば、お求めの結果になると思います。

>とても複雑な回答で解読できなかったので教えていただけると幸いです
式は少々長いですが、全体としての構成は、単純にIFで場合分けした式になっています。
ご参考までに、大雑把な構成を言葉で示すならば・・・
『対象日(今日)がその月の最終火曜日より前なら、前月の最終火曜日からの日数を数え、後ならその月の最終火曜日からの日数を数える』
という式になっています。

No1です

>先程試したところ8と表示されるのですが11/28~今日までが8日という計算でしょうか?
はい。下に示しますように『今日』を対象に計算する式として作成してしまいましたので、12/5(=本日)は11/27(=最終火曜日)から数えて8日目という意味になります。
(シートが自動計算の設定になっていれば、明日になると9と表示されるはずです)

私の勝手な勘違いだったかもしれませんが、「今日が月末火曜日から何日目かを計算する」関数式として考えていましたが、対象が「今日」とは限らなかったのでしょう...続きを読む

QエクセルのIF関数について教えてください

エクセル2007を使用しているのですが、IF関数について分からない事があるので分かる方アドバイスをお願いします。

A2には「お急ぎ便」「通常便」「日時指定便」のいづれかの文字が入力されています。
A3には「出荷予定日」  2018/12/1 など入力されています。
A4には「=A3+1」と入力して出荷予定日の翌日の日付が入力されるようにしています。 
     例えばA3が2018/12/1の場合には2018/12/2と表示されます。

私がやりたいことですが、A5のセルに下記の情報を入力したいです。

A2のセルに「お急ぎ便」という特定の文字が含まれている場合には、出荷予定日の翌日に到着させなければいけない為、A4の日付をA5セルに表示させるようにしたいです。

反対に「通常便」「日時指定便」の文字が含まれている場合には、A5セルに何も入力せずに「空白」にしたいです。

私も色々と試行錯誤しながら下記の関数がつかえそうだと考えてみましたが、この文字列はお急ぎ便という文字がはいっている場合は○を表示させて、入っていない場合は×と表示させるものですよね。

=IF(COUNTIF(A2,"*お急ぎ便*")=1,"○,"×")

上記の○の部分に、A4のセルで表示されている文字を表示させるようにしたいのですが、可能でしょうか?×の部分は単純に削除して空白にすればいいと思うので問題がないのですが、○の部分に=A3+1とかA4とか色々と入力しましたが、入力した内容がそのまま表示されてしまって、A4の日付をA5のセルに表示させるのはできないようです。

分かる方がいらっしゃったらアドバイス頂ければ助かります。どうぞよろしくお願いします。

エクセル2007を使用しているのですが、IF関数について分からない事があるので分かる方アドバイスをお願いします。

A2には「お急ぎ便」「通常便」「日時指定便」のいづれかの文字が入力されています。
A3には「出荷予定日」  2018/12/1 など入力されています。
A4には「=A3+1」と入力して出荷予定日の翌日の日付が入力されるようにしています。 
     例えばA3が2018/12/1の場合には2018/12/2と表示されます。

私がやりたいことですが、A5のセルに下記の情報を入力したいです。

...続きを読む

Aベストアンサー

>○の部分に=A3+1とかA4とか色々と入力しましたが、入力した内容がそのまま表示されてしまって

まずは、A5のセルの表示形式を日付にしましょう。

それから、A2には
>「お急ぎ便」「通常便」「日時指定便」のいづれかの文字が入力されています。
なので、部分一致にしなくても

A5=IF(A2="お急ぎ便",A4,"")

でよくないですか?それとも他に文字がプラスされることがあるのですか?

QExcelで数値が入っているセルにおいてその数値を表示せず、代わりに任意の文字列を表示したいのですが

Excelで数値が入っているセルにおいてその数値を表示せず、代わりに任意の文字列を表示したいのですが何か方法はありますか?

あるセルに元の数値があってそれをベースに別のセルで計算を行っています。但しその元の数値を印刷時に見えなくし、代わりに任意の文字列を表示したいのです。

例えば社内でのみ閲覧可能な定価相当の数値があり、これにある掛け率で売価を計算しているとします。当然この売価は印刷時において見える必要があります。一方元の数値の入ったセル部分には実際には社内定価の数値が入っているのですがこれを表示するのではなく「オープン価格」として表示したいケースです。
いい方法はありますか?

Aベストアンサー

「セルの書式設定」-「ユーザ定義」で、”オープン価格” と定義してみては。

Qエクセル 間に0をいれて6桁に合わせたい

エクセル2016を使用しています。

アルファベット1桁~2桁と数字1桁~4桁の組み合わせている
商品番号を間に0を入れて6桁に変更したいのです。
(アルファベット2桁と数字が4桁になる場合、間の0は入りません)

★次のようにに変換したいです
A-26 → A00026
AB-1 → AB0001
AB-100 → AB0100
A-1234 → A01234
AB-1234 → AB1234

いろいろ調べたのですが関数がわかりません。
教えてくれたら助かります(*^_^*)

Aベストアンサー

=REPLACE(A1,FIND("-",A1),1,REPT(0,7-LEN(A1)))

Q万年カレンダーについて。

次のexcelのデータで、おかしなところがありましたら、教えていただけると幸いです。
https://fire.st/9Il0GsR

Aベストアンサー

>確かに35行は、緑になりました。どうしてそうなるのでしょうか?教えていただけると幸いです。
添付の画像を参照ください。
2018年6月の例ですが、C35へ
=COUNTIF(祝日,A35)
と入力しています。結果は、1048470が表示されます。
これは、=COUNTIF($Y:$Y,A35)と同じことです。(祝日の範囲がY列全体の為)
A35は空白なので、Y列の空白の部分がカウントされます。その為、1048470になります。
COUNTIF(祝日,A35)の結果が0でなければ、判定は真なので、色がつく条件式が成立します。
そのため、緑になります。

>すみません。COUNTIF 関数のみで、祝日に色をつけるとするとどうすれば良いのでしょうか?教えていただけると幸いです。
祝日の範囲を、空白を除いて、正確に定義しなおします。
一旦、祝日の名前を削除し、実際に祝日の日付が入力されているセル範囲Y3:Y107を、祝日の範囲にします。
(つまり、Y列全体をやめて、$Y$3:$Y$107にします)
そうすると、COUNTIF 関数のみで祝日に色をつけることができます。
祝日の名前を削除する方法は、下記を参照ください。(削除せず、変更することも可能です)
https://www.wanichan.com/pc/excel/2016/8/47.html

COUNTIF 関数のみで、祝日に色をつけるようにした場合は、祝日の追加が発生すると(2023年以降分の祝日の追加など)、Y列の範囲が変わるので毎回、それにあわせて、祝日の範囲もかえる必要があります。

>確かに35行は、緑になりました。どうしてそうなるのでしょうか?教えていただけると幸いです。
添付の画像を参照ください。
2018年6月の例ですが、C35へ
=COUNTIF(祝日,A35)
と入力しています。結果は、1048470が表示されます。
これは、=COUNTIF($Y:$Y,A35)と同じことです。(祝日の範囲がY列全体の為)
A35は空白なので、Y列の空白の部分がカウントされます。その為、1048470になります。
COUNTIF(祝日,A35)の結果が0でなければ、判定は真なので、色がつく条件式が成立します。
そのため、緑になります。...続きを読む

Qエクセルで名前入力をしたら最新日付のデータを抽出したい

初めての質問になります。
よろしくお願いします。

タイトル通りの内容で(A1)に名前を入力したら、
その名前(D列3から300行)の最新の日付(E列3から300行)のデータ(U列3から300行)を
(B1)に抽出をしたいです。
尚、使用している日付は2018/12/5 のタイプの日付形式です。
※シート別けしておらず同一シートです。

A1 あああ(入力) B1 100(抽出データ)

D列 E列 データ
あああ 2018/12/5 100
あああ 2018/11/5 98
あああ 2018/10/5 45
いいい 2018/12/4 88
いいい 以下略 以下略
いいい
ううう
ううう
ううう

昔から簡単な作業はやってきたのですが関数?となるとどうも苦手で、
これから勉強していきたいと思ってます。
いろいろ触っていくとエクセルって楽しいですね!
本当は質問ではなく自己解決してみたいところではあるのですが、
苦戦しつつ3時間が経過・・・ちょっと泣けてきましたので質問させて頂きました。
質問もこんな形式で理解してもらえるかわかりませんがよろしくお願いします。

初めての質問になります。
よろしくお願いします。

タイトル通りの内容で(A1)に名前を入力したら、
その名前(D列3から300行)の最新の日付(E列3から300行)のデータ(U列3から300行)を
(B1)に抽出をしたいです。
尚、使用している日付は2018/12/5 のタイプの日付形式です。
※シート別けしておらず同一シートです。

A1 あああ(入力) B1 100(抽出データ)

D列 E列 データ
あああ 2018/12/5 100
あああ 2018/11/5 98
あああ 2018/10/5 45
いいい 2018/12/4 88
...続きを読む

Aベストアンサー

何度も済みません。
[No.2]用の添付図です。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング