こんにちは
標題の件で、下記の数式で年齢を出しています。
=DATEDIF(@,TODAY(),"Y")
通常@部分に誕生日を入力するのですが、入力をしない場合に「105」と表示されてしまいます。
入力しない場合には、空欄にしたいのですが、どのようにしたら良いのでしょう?

このQ&Aに関連する最新のQ&A

A 回答 (3件)

IF関数を使えばいけますよ。



=IF(@=“”,“”,DATEDIF(@,TODAY(),“Y”)

でいけると思います。

“”は空白という意味です。
    • good
    • 0

IF関数で以下の通りでは、如何でしょうか



=IF(A2="","",DATEDIF(A2,TODAY(),"y"))
    • good
    • 0

NO.1です。

補足です。

この場合、@は誕生日の入ったセルを参照することになります。

式の意味は
「参照するセルが空白なら空白を表示。何か入っていたらその数値を元にDATEDIF関数で計算しなさい」
と言うことになります。
    • good
    • 0

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

このQ&Aを見た人が検索しているワード

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

Qエクセル プルダウンの作り方

お世話になります。
エクセルでプルダウンの作り方を教えていただけませんでしょうか?
住所を▼のボタンでクリックしたら【北海道,青森,秋田,岩手・・・】などの選択ができるようにしたいのです。
宜しくお願いします。

Aベストアンサー

メニューから「データ」、「入力規則」、「設定」で「入力値の種類」を「リスト」を選択します。
そうすると「元の値」という表示がでますので、そこで前もって作っておいたリストの範囲を指定します。
多くないのでしたら、そのままそこにカンマで区切って入力しても出来ます。

QExcelで、1,5,7,(),8,4という数字とカッコの合計数(6個)を出す場合の数式は?

Excelで、1、5、7、( )、8、4、という数字とカッコが並んでいた場合、数字のみの合計数は、オートSUMで数式を入れておけば、1+5+7+8+4で、12と算出されるかと思いますが、並んでいる数字とカッコの数を出したい場合(6個)、どのように数式を入れたらよいでしょうか?

Aベストアンサー

データの個数でしたら関数の
=COUNTA(A1:A6)
でいいと思います
A1:A6は任意に変えて下さい

Qエクセルでプルダウンメニューの作り方

  エクセルの画面で、よく三角形を逆さまにした形をクリックするといくつかメニューが出てき、どれかを選べるようになっていますが、その作り方を教えてください。
 会社で人事を担当していますが、三角形(プルダウンボタン)をクリックすると社員氏名一覧が表示され、そこから選択できるようにしたいのです。
 しばらく自力でいろいろやってみましたが、さっぱり見当がつかず、どうやればいいのか分かりませんでした。よろしくお願いします。

Aベストアンサー

こんばんは!
当方使用のExcel2003での一例です!

↓の画像のようにSheet2に名簿表を作成しておきます。
画像ではSheet2のA2セル以降を範囲指定 → 名前ボックスに仮に「名簿」と入力しOK
これで範囲指定したセルが「名簿」と名前定義されましたので、

Sheet1のリスト表示させたいセルを範囲指定 → メニュー → データ → 入力規則
→ リスト → 「元の値」の欄に
=名簿
としてOK

これでSheet1のセルをアクティブにすると右側に下向き▼が表示されますので、そこをクリック!
これで希望に近い形にならないでしょうか?
Excel2007の場合は↓のURLが参考になるかもしれません。

http://www.eurus.dti.ne.jp/~yoneyama/Excel2007/excel2007-ny_kis2.html

尚、同一Sheetに「名簿表」を作成する場合は名前定義する必要はなくて
「元の値」の右側の四角をクリックし、リスト表示したいセルをそのまま範囲指定すればOKです。

以上、お役に立てば良いのですが・・・m(_ _)m

こんばんは!
当方使用のExcel2003での一例です!

↓の画像のようにSheet2に名簿表を作成しておきます。
画像ではSheet2のA2セル以降を範囲指定 → 名前ボックスに仮に「名簿」と入力しOK
これで範囲指定したセルが「名簿」と名前定義されましたので、

Sheet1のリスト表示させたいセルを範囲指定 → メニュー → データ → 入力規則
→ リスト → 「元の値」の欄に
=名簿
としてOK

これでSheet1のセルをアクティブにすると右側に下向き▼が表示されますので、そこをクリック!
これで希望に近い形にならない...続きを読む

Qエクセル 「DATEDIF」使用時、空欄なのに170表示に

エクセル初心者です。
社員の情報をまとめる表を作りました。
社員の 誕生日から満年齢、入社日から勤務年数を割り出すために
「DATEDIF」を使って、計算は成功しました。

今後引き続きこの表を使っていくために
(新入社員が入ってきたら追加で入力できるように)
下のほうに白い欄をいくつか設けて、入力書式や式を
引き続き使えるように「Ctrl+D」でコピーしたのですが、

満年齢と勤務年数の値が(誕生日や入社日が空欄なのに)
勝手に170と出てしまっています。なぜでしょうか?

この後ピボットテーブルとやらで社員の人数やら
平均年齢やらを割り出したいのに、空欄に170と数字が
入っていては都合が悪いです。
誕生日や入社日が空欄だったときは、満年齢や勤務年数の
欄は空欄、あるいはゼロにしたいのですが、
どうしたらいいでしょうか。
どうぞよろしくお願いします。

Aベストアンサー

=IF(誕生日のセル="","",DATEDIF(誕生日のセル,TODAY(),"Y"))
のようにすればよいでしょう

Qエクセル(Excel) 納品書の作り方【画像修正版

昨日http://oshiete.goo.ne.jp/qa/7348426.htmlで質問させていただき、詳しくご回答いただき少し進んだのですが、状況が変わったので改めて質問させていただきます。

■エクセル(Excel)で納品書の作成をしています。
シート1に納品書、シート2に商品マスタ(一覧)を作っていて、シート2の一覧を反映させて
納品書に番号を打ち込むだけで、商品名・単価までが出るシステムを作りたいのですが、
昨日のご回答の中の「VLOOKUP」?を入れて、自分なりにマス目の数字を変えてやってみたのですが
反映されずN/?のようなエラーになってしまいます。

※画像が見にくかったのでシート<CENTER></CENTER>だけにしました。

1、上記のように、シート2との関連付けの係数を、写真の場合の数字で教えてください。

2、合計と、合計から20%を引いた数値を割り出す関数も、写真の数字で御願いします。

宜しくご教授お願い致します。

Aベストアンサー

こんばんは!
前回投稿した者です。

当方もかなり古い(人間も古い!なぁ~んちゃって!)Excel2003を使用しています。
↓の画像のようにSheet2にデータを作成しておきます。

#N/A というエラーは、「検索値」がない!ということですので
お示しの画像のB列にSheet2のA列にないデータを入力するとそういったエラーが表示されます。

画像のセル配置ですと
C4セルに
=IF($B4="","",VLOOKUP($B4,Sheet2!$A:$C,COLUMN(B1),0))
(「$」マークの位置に気を付けてください)
という数式を入れD4セルまでオートフィルでコピー!
そのまま最後の24行目までコピーしておきます。

F4セルには
=IF(COUNTBLANK(B4:E4),"",D4*E4)
という数式を入れ、F24までオートフィルでコピー!

これでB列に商品番号を入力すればSheet2のデータが反映され、
E列に数量を入力でF列に金額が表示されると思います。

最後に合計金額のF26セルは
=IF(COUNT(F4:F24),SUM(F4:F24),"")
手数料のF27セルは
=IF(F26="","",F26*0.2)

これで何とか形にならないでしょうか?

※ 振込金額の欄は不明ですので手を付けていません。

参考になりますかね?m(_ _)m

こんばんは!
前回投稿した者です。

当方もかなり古い(人間も古い!なぁ~んちゃって!)Excel2003を使用しています。
↓の画像のようにSheet2にデータを作成しておきます。

#N/A というエラーは、「検索値」がない!ということですので
お示しの画像のB列にSheet2のA列にないデータを入力するとそういったエラーが表示されます。

画像のセル配置ですと
C4セルに
=IF($B4="","",VLOOKUP($B4,Sheet2!$A:$C,COLUMN(B1),0))
(「$」マークの位置に気を付けてください)
という数式を入れD4セルまでオートフィルで...続きを読む

Q前半分の行には1,3,5,7…を、後ろ半分の行には2,4,6,8…を自動で入力する方法は

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

C列に文具名が入力されている表があります。

別のシートにある約500種類の文具一覧の中から、
毎月末に、ある条件を満たした文具名だけをC列に抽出しています。
月によってC列に抽出される文具名の数は変動します。

各文具名のA列には1,2,3,4の連番を、
B列には前半分の行に1,3,5,7…を、
後ろ半分の行には2,4,6,8…を入力したいのですが、
自動で入力する方法があれば教えていただけないでしょうか。

A列  B列  C列
 1   1  えんぴつ
 2   3  消しゴム
 3   5  三角定規
 4   7  コンパス
 5   2  下敷き
 6   4  ボールペン
 7   6  ノート
 8   8 セロハンテープ

上の例では文具が8個ですので、
A列は1~8
B列は半分の4行目までは1,3,5,7
5行目からは2,4,6,8が入ります。

文具が奇数個の場合のB列は…
例えば11個の場合には、
1~6行目まで1,3,5,7,9,11
7~11行目まで2,4,6,8,10
が入ります。

C列に抽出される文具が500個近くなる月がありますが、
現在はA1,A2に1,2を入力してマウスで下にフィルコピー、
B列には、前半分の行まではB1,B2に1,3を入力し、
後ろの半分の先頭行と、その次の行に2,4を入力して
それぞれフィルコピーしています。

抽出された行数に応じて、自動でA列、B列に番号をふる方法が
ありましたら教えて下さい。
宜しくお願いします。

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

C列に文具名が入力されている表があります。

別のシートにある約500種類の文具一覧の中から、
毎月末に、ある条件を満たした文具名だけをC列に抽出しています。
月によってC列に抽出される文具名の数は変動します。

各文具名のA列には1,2,3,4の連番を、
B列には前半分の行に1,3,5,7…を、
後ろ半分の行には2,4,6,8…を入力したいのですが、
自動で入力する方法があれば教えていただけないでしょうか。

A列  B列  C列
 1   1  えんぴつ
 2   3 ...続きを読む

Aベストアンサー

[回答番号:No.5] の DOUGLAS_ です。
 [ROW()] 関数を使うと、行のデータがずれるかも知れませんね。

B1:
=IF(C1="","",A1*2-IF(A1*2>MAX(A:A)+1,EVEN(MAX(A:A)),1))

でお試しください。

Qエクセル(Excel) 納品書の作り方【改めて】

昨日http://oshiete.goo.ne.jp/qa/7348426.htmlで質問させていただき、詳しくご回答いただき少し進んだのですが、状況が変わったので改めて質問させていただきます。

■エクセル(Excel)で納品書の作成をしています。
シート1に納品書、シート2に商品マスタ(一覧)を作っていて、シート2の一覧を反映させて
納品書に番号を打ち込むだけで、商品名・単価までが出るシステムを作りたいのですが、
昨日のご回答の中の「VLOOKUP」?を入れて、自分なりにマス目の数字を変えてやってみたのですが
反映されずN/?のようなエラーになってしまいます。

※画像が貼り付けてあります。商品名は1番以外伏せさせていただいています。
くっつけてありますが、左側がシート1・右側がシート2です。

1、上記のように、シート2との関連付けの係数を、写真の場合の数字で教えてください。

2、合計と、合計から20%を引いた数値を割り出す関数も、写真の数字で御願いします。

宜しくご教授お願い致します。

Aベストアンサー

画像がいまいちよく見えないのですが、納品書の項目は左から、No、商品番号、商品名、単価、数量、金額でいいのでしょうか(名前は多少違っていても意味があっていればもんだいないです)

でしたら、
C1セルに=IF(ISBLANK(B2),"",VLOOKUP(B2,Sheet2!$A$2:$C$200,2,FALSE))
D1セルに=IF(ISBLANK(B2),"",VLOOKUP(B2,Sheet2!$A$2:$C$200,3,FALSE))
E1セルは空白で
F1セルに=IF(D2="","",D2*E2)
といれて、C1からF1までをコピーしてその下の行にタテに貼り付ければ出来ますよ。
おそらくエラーが出たのは、コピーしたときにVLOOKUP関数の最初のセルの指定がずれてしまっているのでは無いかと思いますよ。     

Qエクセルで同じA列の中に、1,2,3,4,5,6,2,3,4,2,1,3,2,2,2,3,1という

エクセルで同じA列の中に、1,2,3,4,5,6,2,3,4,2,1,3,2,2,2,3,1,3,1というような順番で数字が並んでいます。

その数字の中で、1→3と3→1になるものがいくつあるか求めたいのですが、出す関数・マクロがわかりません。
教えていただけないでしょうか?

よろしくお願いします。

Aベストアンサー

こんばんは!

>A列の中に
とは行方向に数値が入っている!というコトでしょうか?

そうであれば
表示したいセルに
=COUNTIFS(A1:A1000,1,A2:A1001,3)+COUNTIFS(A1:A1000,3,A2:A1001,1)
としてみてください。

「1」の次の行が「3」の場合と
「3」の次の行が「1」の場合をプラスしています。m(_ _)m

Qエクセル2007でプルダウンで選んだものに反応

Excel2007でプルダウンで選んだものに反応して隣のセルが自動入力される方法(エクセル2007)
A1をプルダウンで「猫」「犬」から選べるようにし、「猫」を選んだ場合B1に自動に「111」が、「犬」を選んだ場合B1に自動に「222」と入力されるようにしたいです。
ご教授の程、宜しくお願いします。

Aベストアンサー

VLOOKUP関数での方法です。
(1)別シートに入力文字列と対応コード表を作成。(仮にSheet2のA:B列範囲で順不同)
(2)B1に=IF(COUNTIF(Sheet2!A:A,A1),VLOOKUP(A1,Sheet2!A:B,2FALSE),"")を設定
   入力文字列が存在しない場合は空白としています。

QEXCEL2000 SUMIF(範囲,"TODAY()",合計範囲) だけでは出来ないので

本日契約成立の株の売買が1個の場合→売買手数料3150円です。
複数売買の場合→売買手数料は3150円を分割します。(機械的にセルの数だけ均等分割可。1日が終了し金額確定してからその金額で計算式を上書き訂正します。別案として契約金額に応じて按分出来ればなおうれしいです)
ただし手数料は1日の契約合計300万円ごとに3150円となる。300万=3150 301万=6300円 601万=9450円
帳簿の現状
セルB買い年月日 C買い数量 D買い単価 E支払金額手数料含む F品名(銘柄) G売り年月日 H売り数量 I売り単価 J売上金額手数料含む K売買損益

過去から未来に渡る売買帳です。Eの支払金額欄とJの売上金額欄に前もって数式を入れて置きたいのです。

Aベストアンサー

約定金額を300万以下、600万以下、900万以下、900万を超えるにしました。

当日以外の日は、スペースにしました。

それとこの式は、ファイルが重くなる見本のような式なので(電卓でこの式どおり計算するとわかります)、変えました。

E2に・・・
=IF(TODAY()<>B2,"",IF($B$1=0,,IF($B$1<=3000000,C2*D2*3150/$B$1,IF($B$1<=6000000,C2*D2*6300/$B$1,IF($B$1<=9000000,C2*D2*9450/$B$1,C2*D2*12600/$B$1)))))

L2に・・・
=IF(TODAY()<>I2,"",IF($B$1=0,,IF($B$1<=3000000,J2*K2*3150/$B$1,IF($B$1<=6000000,J2*K2*6300/$B$1,IF($B$1<=9000000,J2*K2*9450/$B$1,J2*K2*12600/$B$1)))))

B1に=SUM(A:A)・・・(B1はA列以外だったらあいてるセルならどこでもいい)C1だったら、上の式は$C$1にしてください。

約定金額を300万以下、600万以下、900万以下、900万を超えるにしました。

当日以外の日は、スペースにしました。

それとこの式は、ファイルが重くなる見本のような式なので(電卓でこの式どおり計算するとわかります)、変えました。

E2に・・・
=IF(TODAY()<>B2,"",IF($B$1=0,,IF($B$1<=3000000,C2*D2*3150/$B$1,IF($B$1<=6000000,C2*D2*6300/$B$1,IF($B$1<=9000000,C2*D2*9450/$B$1,C2*D2*12600/$B$1)))))

L2に・・・
=IF(TODAY()<>I2,"",IF($B$1=0,,IF($B$1<=3000000,J2*K2*3150/$B$...続きを読む


人気Q&Aランキング