ママのスキンケアのお悩みにおすすめアイテム

Excelでの質問です。
参照先のセルに何も値(空白セル?)が入っていない時に
「0」などが表示されてしまうのを参照先と同じように、何も表示されていない状態に
したいのですが、どのようにすればよろしいでしょうか。

例えば、A1に「=B1」と入力してある場合、A1に「0」と表示されます。
B1には何も入力していない状態であります。
A1をB1と同じように何も表示されていないように「0」とかを出ないように
したいのです。

何かいい方法がありましたら、教えてください。
よろしくお願いします。

A 回答 (4件)

IF関数で空白なら空白を返すようにします。



=IF(B1="","",B1)

IF関数 完璧マスター!
http://kokoro.kir.jp/excel/if.html
    • good
    • 2
この回答へのお礼

ご教示ありがとう御座います。
見事に解決致しました。本当にありがとう御座いました。

リンク頂きました、IF関数 完全マスターも参照しましたが
IF関数というものがよくわかりました。
ありがとう御座いました。

お礼日時:2008/10/08 16:24

>A1に「=B1」と入力してある場合、A1に「0」と表示されます。


=IF(B1="","",B1)
の式にします。
参考までに過去スレ紹介します。
http://oshiete1.goo.ne.jp/qa2661215.html
    • good
    • 0
この回答へのお礼

ご教示ありがとう御座います。
見事に解決致しました。本当にありがとう御座いました。

過去スレ検索もしたつもりでしたが、まだまだ足りなかったようですね・・・。

お礼日時:2008/10/08 16:25

A1 =if(b1="","".b1)



ちょっとミスりました

A1 =if(b1="","",b1)
です
    • good
    • 1
この回答へのお礼

ご教示ありがとう御座います。
見事に解決致しました。本当にありがとう御座いました。

お礼日時:2008/10/08 16:21

A1 =if(b1="","".b1)



で、どうでしょう
    • good
    • 0

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

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

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

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

Q日付が未入力の際はゼロか、空白にしたい

表題のとおりです。

シート1の、あるセル(B1とします)そこには、たとえば2/10と入力すれば
2010/2/10と表示されるように書式設定がなっております。
そして、シート2のあるセルには =Sheet1!B1 というように、シート1のB1セルの
イコールとなっております。

しかし、そのシート1のB1セルに何も記入されなかった場合
シート2の方にはなぜか「1990/1/0」と表示されてしまいます。

シート1のB1に何も入力されなかった場合はシート2をゼロか
もしくは、何も表示させないようにしたいのですが
どのようにしたらよいのでしょうか?

Aベストアンサー

=Sheet1!B1

=IF(Sheet1!B1="","",Sheet1!B1)

Qエクセル(2003) 「1900/1/0」を消したい

セルA1に0を入力し
書式設定で日付→yyyy/m/dを選択しました。

しかし下記のマクロ実行しても
0が空白になりません。

Sub 日付置換()
Cells.Replace what:="1900/1/0", Replacement:="", LookAt:=xlPart
Cells.Replace what:="00/01/00", Replacement:="", LookAt:=xlPart
Cells.Replace what:="0", Replacement:="", LookAt:=xlWhole
End Sub

なら最初から0なんか入力しなきゃいいじゃん。
と思われるかもしれませんが
これはCSVファイルで出力したもので
最初から0の数値にも書式設定がかかってて「1900/1/0」となっています。

「1900/1/0」のデータをなくしたいのですが
どんな方法がありますか?
データ量が多いためマクロなどで一度に行ないたいです。

アドバイスよろしくお願いします。

Aベストアンサー

>セルA1に0を入力し
>書式設定で日付→yyyy/m/dを選択しました。
単純ですが
書式設定をユーザー定義で→yyyy/m/d;; としてみてください。
0の時の表示が1900/1/0からブランクに変わります。

QエクセルのIF関数で、文字が入力されていたならば~

エクセルのIF関数で文字が入力されていたならば~、という論理式を組み立てたいと思っています。

=IF(A1="『どんな文字でも』","",+B1-C1)

A1セルに『どんな文字でも』入っていたならば、空白に。
文字が入っていなければB1セルからC1セルを引く、という状態です。

この『どんな文字でも』の部分に何を入れればいいのか教えてください。

またIF関数以外でも同様のことができれば構いません。

宜しくお願いします。

Aベストアンサー

=IF(ISTEXT(A1),"",B1-C1)

でどうでしょうか?

Qリンク元の日付が空白の時リンク先セルも空白にしたい

エクセル2007です。

A1に、2013/12/1と入れて表示形式 m"月"d"日" で12月1日と表示されています。
B1に、=A1とリンクしてこれが40行ほどコピーされています。
B列も同じく表示形式を m"月"d"日" にすると、
A列に空白がある時対応するB列セルには「1月0日」と表示されてしまいます。

A列の日付が入らない場合はB列も空白にしたいのですがいい表示形式はありますか?

他の日付以外のセルは形式を #,##0;[赤] -#,##0; として空白の列=リンク先も空白列を実現できています。
B列の日付のセルをこの形式にするとA列リンク元が空白の時はいいのですが、
日付を入れるとシリアルNo.らしき数字が表示されて、日付ではなくなってしまいます。

Aベストアンサー

表示形式を
m月d日;;;
とします。

Qエクセルで1月0日と表示される!!

エクセルで2つのシートを使い、1つのシートには、一ヶ月の日付と点数を入力し、もう1つのシートは、先のシートからデータが飛ぶ形で、曜日ごと集計される形で、月ごとにまとめています。

しかし、集計のシートで、第5週がない場合、入力シートのセル内はブランクで、集計シートに表示されるのは1月0日となってしまいます。

説明がわかりずらいかと思いますが、取りあえず、シートを越えてデータを飛ばしたときに、1月0日と表示させない方法を教えていただければと思います。

ネットで検索しても、解決方法がヒットしません。
エクセルのスペシャリストの方、助けてください。

Aベストアンサー

こんばんは。

>先のシートからデータが飛ぶ形

‥というのは、=Sheet1!A2 のような式を入れているということでしょうか?

そういうことでしたら Sheet1 の A2セルが空白の場合、0と認識されますので、
日付シリアル値が 0 → 1900年1月0日 になるからです。

これを回避させるには次のような方法があります。
-----------------------------------------------
(1) Sheet2 のすべてのセルが 0 を表示させなくてもかまわないのなら
 メニュー <ツール>-<オプション>-<表示>タブの
 「ゼロ値」 のチェックをはずす。

(2) Sheet2 の日付のセルをすべて選択し、
 メニュー <書式>-<条件付き書式>で
 「セルの値が」-「次の値に等しい」を選び、
  0 のときは文字の色を白にする。
 
※条件付き書式については参考URLをご覧ください。

(3) Sheet2 の数式を↓のように変更する。 
=IF(Sheet1!A2="","",Sheet1!A2)
----------------------------------------------
以上のうちからどれか1つをお選びください。

参考URL:http://www.eurus.dti.ne.jp/~yoneyama/Excel/jyo-sho/jyo-syna.htm

こんばんは。

>先のシートからデータが飛ぶ形

‥というのは、=Sheet1!A2 のような式を入れているということでしょうか?

そういうことでしたら Sheet1 の A2セルが空白の場合、0と認識されますので、
日付シリアル値が 0 → 1900年1月0日 になるからです。

これを回避させるには次のような方法があります。
-----------------------------------------------
(1) Sheet2 のすべてのセルが 0 を表示させなくてもかまわないのなら
 メニュー <ツール>-<オプション>-<表示>タブの
 「ゼロ...続きを読む

Q31:30:00が1900/1/1 7:30:0

エクセルで時間を入力してるのですが
「21:30:00」と入力すると「21:30:00」のままなのですが
他のセルに「31:30:00」を入力すると表示は「31:30:00」になるのですが、
数式バーは「1900/1/1 7:30:00」になってしまいます。

どちらも書式は「[h]:mm」にしています。
なぜ30時間を超えるとおかしくなるのでしょうか?

Aベストアンサー

エクセルの日付は、1900年1月1日が起点です。
数値の1を表示形式「[h]:mm:ss」で表示すると、24:00:00(24時00分00秒)
「hh:mm:ss」で表示すると、00:00:00((00時00分00秒)
yyyy/mm/dd で表示すると、1900/01/01(1900年1月1日)
yyyy/mm/dd hh:mm:ss で表示すると 1900/01/01 00:00:00

となります。

時刻表示の 21:30:00 は、数値では、0.8958
時刻表示の 31:30:00 は、数値では、1.3125
です。
数値の1が1日(24時間)に相当します。正確に言うと、数値1の違いが1日(24時間)の違いに相当します。

数値で1以下は1900年1月1日以前なので、数式バーに1900/01/00 21:30:00 と表示しても良いのですが、日付に0日というのはありませんので変ですよね?そこで仕方なしに時刻の部分だけを表示するようにしたのでしょう。(エクセルを作った人は困ったと思います。)エクセルの仕様だ、と言えばそれまでですが、

30時間を超えるとおかしくなるのでではなく、24時間以上だと表示が変わるのです。

エクセルの日付は、1900年1月1日が起点です。
数値の1を表示形式「[h]:mm:ss」で表示すると、24:00:00(24時00分00秒)
「hh:mm:ss」で表示すると、00:00:00((00時00分00秒)
yyyy/mm/dd で表示すると、1900/01/01(1900年1月1日)
yyyy/mm/dd hh:mm:ss で表示すると 1900/01/01 00:00:00

となります。

時刻表示の 21:30:00 は、数値では、0.8958
時刻表示の 31:30:00 は、数値では、1.3125
です。
数値の1が1日(24時間)に相当します。正確に言うと、数値1の違いが1日(24時間)の違いに相当します。

数値で1以...続きを読む

Qエクセルで、条件に一致した行を別のセルに抜き出す方法

エクセルで、指定した条件に一致するセルを含む行をすべて抜き出す方法が知りたいです。

たとえば、

<A列> <B列> <C列>
7/1 りんご 100円
7/2 ぶどう 200円
7/2 すいか 300円
7/3 みかん 100円

このような表があって、100円を含む行をそのままの形で、
別のセル(同じシート内)に抜き出したいのですが。

7/1 りんご 100円
7/3 みかん 100円

抽出するだけならオートフィルターでもできますが、
抽出結果を自動的に、別の場所に、常に表示させておきたいのです。

初歩的な質問だと思いますが、検索しても分からなかったので、よろしくお願いします。

Aベストアンサー

同じ質問が結構よく出てますが、そんなに初歩的でもありません
別シートのA1セルに「100円」と入力し、そのシートの任意のセルに以下の式を貼り付けて下さい。後は、下方向、右方向にコピー。
日付のセル書式は「日付」形式に再設定してください

=IF(COUNTIF(Sheet1!$C:$C,$A$1)>=ROW(A1),INDEX(Sheet1!A:A,LARGE(INDEX((Sheet1!$C$1:$C$500=$A$1)*ROW(Sheet1!$C$1:$C$500),),COUNTIF(Sheet1!$C:$C,$A$1)-ROW(A1)+1)),"")

データ範囲は500行までとしていますが、必要に応じて変更して下さい

Qエクセルで打ち込んだ数字を自動で別シートに表示したい

エクセルでセルに打ち込んだ数字を自動で別シートに表示できる方法があれば、教えてください。

例えば、シート1のC1に5を打ち込んだら、シート2のD2にシート1で打ち込んだ5が自動で表示される。

また1列すべてを自動で表示させる場合、一つのセルの時と違いがありましたら教えてください。よろしくお願いします。

Aベストアンサー

こんばんは。
入力したセルの値を合計とかでなくて、
純粋に別のシートに自動的に表示したいのであれば、
以下の方法があります。

1.1つのセルだけの場合
例)シート1のC1に5を打ち込んだら、
  シート2のD2にシート1で打ち込んだ5が自動で表示される

⇒シート2のD2のセルをアクティブにして「=」を入力
 した後、シート1のC1をクリックする。
 そうするとD2のセルに「=Sheet1!C1」と表示され、値が自動的に
 表示されるようになります。

2.1列全てコピーしたい場合。
  コピー&リンク貼り付けを使うと便利です。

例)例)シート1のC1~C5に何かを入力したら、
  シート2のD2~D7にシート1で打ち込んだものが自動で表示される

  シート1にあるコピー元のセルを範囲選択して、
  シート2のD2の上で「右クリック」⇒「形式を選択して貼り付け」
  をクリックします。

  そして出てきた小さな画面の左下にある「リンク貼り付け」という
  ボタンをクリックすると完成です。
  試してみてください。。

  念のためにリンク貼り付けを図解しているURLを載せておきます。
  参考にしてみてくださいね。。
  http://www.geocities.jp/office_inoue/excel/eq21.htm

こんばんは。
入力したセルの値を合計とかでなくて、
純粋に別のシートに自動的に表示したいのであれば、
以下の方法があります。

1.1つのセルだけの場合
例)シート1のC1に5を打ち込んだら、
  シート2のD2にシート1で打ち込んだ5が自動で表示される

⇒シート2のD2のセルをアクティブにして「=」を入力
 した後、シート1のC1をクリックする。
 そうするとD2のセルに「=Sheet1!C1」と表示され、値が自動的に
 表示されるようになります。

2.1列全てコピーしたい場合。
  コ...続きを読む

QVLOOKUP関数で空白を選択すると「0」と表示されるのですが

VLOOKUP関数で他シートのアドレス帳から住所名前等を引き出し、別シートで宛名ラベルを作っています。
この時、何も記入されていないシートをVLOOKUPで読み込んだ場合に、宛名に「0」が表示されてしまうのですが、これを表示させない方法はどうしたらよいのでしょうか?

また以前は「0」では無く、「N#A(記憶が曖昧ですが)」のような表示がされていたんですが、どうして変ったんでしょううか?

よろしくお願いします。

Aベストアンサー

検索値が見つからない場合は #N/A エラーになります。
検索値が見つかったが、参照する列が空白の場合は 0 になります。

ISERROR や ISNA 等を使ってエラーの場合は空白にすれば、#N/A は表示されなくなります。
例)=IF(ISERROR(VLOOKUP($A2,検索範囲,2,0)),"",VLOOKUP($A2,検索範囲,2,0))

この状態で ツール-オプション-表示タブの「ゼロ値」を外せば #N/A も 0 も見えなくなります。
ただし、検索結果以外の 0 も見えなくなりますのでそれがまずいようなら、

=IF(ISERROR(VLOOKUP($A1,検索範囲,2,0)),"",IF(VLOOKUP($A1,検索範囲,2,0)=0,"",VLOOKUP($A1,検索範囲,2,0)))

のような感じにすると#N/A も 0 も見えなくなります。

Qエクセルで条件に一致したセルの隣のセルを取得したい

下のような「得点」という名前のシートがあります。
(「田中」のセルがA1です。)

 [ 田中 ][ 10 ][ 200 ]
 [ 山田 ][ 21 ][ 150 ]
 [ 佐藤 ][ 76 ][ 250 ]
 [ 鈴木 ][ 53 ][ 350 ]

別のシートのA1セルに、「佐藤」と入力すると、

 [ 佐藤 ]

「得点」シートから「佐藤」の列を見つけて、B1、C1に

 [ 佐藤 ][ 76 ][ 250 ]

のように表示させたいのですが、B1、C1にはどのような式を書けば良いのでしょうか。
「得点」シートでは氏名が重複する事はありません。
IF文を使うと思うのですが、いまいち良く分かりませんでした。

よろしくおねがい致します。

Aベストアンサー

こんにちは!
VLOOKUP関数で対応できます。
IF関数と併用すればエラー処理が可能です。

Excel2007以降のバージョンであれば
B1セルに
=IFERROR(VLOOKUP($A1,得点!$A:$C,COLUMN(B1),0),"")
としてC1セルまでオートフィルでコピー!
そのまま下へコピーすると行が2行目以降でも対応できます。

Excel2003までの場合は
=IF($A1="","",VLOOKUP($A1,得点!$A:$C,COLUMN(B1),0))

としてみてください、m(_ _)m


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

人気Q&Aランキング