エクセルで1行だけ数式が反映されない?

このQ&Aのポイント
  • エクセルで売掛金を管理するための集計表を作成中ですが、1行だけ数式が反映されない問題が発生しています。
  • 売上金と入金の記録をしているエクセルのシートで、特定の行だけ売上金額が表示されず0になってしまいます。
  • 関数やセルの値を変更しても解決せず、困っています。アドバイスをお願いします。
回答を見る
  • ベストアンサー

エクセルで1行だけ数式が反映されない?

とても困ってしまったので、どなたか教えてください。 詳しく状況を説明するために長々と書いてます。 エクセルで売掛金を管理するための集計表を作っています。 シート1 売上金とその入金の記録をしています。 A列:売上が発生した月を直接入力 例)4月分 B列:関数を使って月の数字だけ取り出す作業列 例)4   =LEFT(A2,LEN(A2)*10-    SUM(LEN(SUBSTITUTE(A2,{0,1,2,3,4,5,6,7,8,9},)))) C列:取引先名を直接入力 例)A社 D列:取引先名と売上月を組み合わせる作業列(=B2&C2)    例)4月のA社の売上 → 4A社 F列:売上金額を直接入力 シート2 月ごとの売上・入金・残高が、取引先単位で分かる一覧表です。 1つの取引先について、1行使っています。 シート2で、A社の4月の「売上」に該当するセルに、 =SUMIF(シート1!$D:$D,"4A社",シート1!$F:$F) と入力して、4月のA社の売上金額を表示するようにしました。 と、ここまでは良かったのですが 80近くある行のうち、15行目だけが売上金額を表示せずに 「0」になってしまいます。 当初は15・16行目が0表示だったのですが、 何度も関数やシート1の値を入れ直したり、正確なセルから書式のコピーをしてみたりしている内に 何が良かったのか分からないのですが、売上金額が表示されました。 ですが、15行目だけがどうしても「0」表示のままなのです。 シート1のD列の関数を消して、直接値を入力してみたところ、 売上金額が表示されました。 昨日からずっと困ってます。 どなたかアドバイスをお願い致します。。

質問者が選んだベストアンサー

  • ベストアンサー
  • oji32
  • ベストアンサー率21% (38/180)
回答No.7

#1・4・5・6です。 ×が出てよかったです(^_^;) =SUMIF(シート1!$D:$D,"4A社",シート1!$F:$F) この式の4A社の部分をコピーして、シート1の社名のセルに貼り付けられたらいかがでしょうか? あと、 名称でマッチングをかけること自体、間違いの元なのでお勧めできないのですが、今回は、名称をその都度入力されているので余計にエラーが起こりやすい要因となります。社名一文字でも違ったら集計されないのですものね・・・。 ということでまたお時間があるときにでも、社名の一覧のシートを追加して、 シート1・2 とも名称はそこから参照するようにされたらいかがでしょうか?

tentenmaru
質問者

お礼

ありがとうございます!ありがとうございます!!!!! できました~~~!!!!!!!!! 良かったです。これで心置きなく盆休みが取れます。 そっか、逆に貼り付けることなんて思いつきませんでした。 実はシート1の右側に取引先の一覧を作っていて、 列Cはリストで選択するようにしているんです。 取引先の一覧も手打ちで入れ直したんですが、 何かが違ってたということですね。 取引先の一覧のA社にシート2のA社をコピペしたら売上金額が出てきました!! 神様、仏様、oji32様ですね♪ 見捨てないで最後までお付き合いくださって本当にありがとうございました!!!

その他の回答 (6)

  • oji32
  • ベストアンサー率21% (38/180)
回答No.6

#1・4・5 です。 =IF(シート1!Dの4A社のセル="4A社","○","×") このIF文で○になりますか? ・○になる → お手上げかも?? ・×になる → やっぱり何か式が違うのでは?? あと、最終確認として A列:・数字の半角全角の違いはないですか? B列:・式を単純に =LEFT(A2,LEN(A2)-2)に変更しても同じですか? C列:・社名の後ろにスペース等入っていないですか?

tentenmaru
質問者

補足

度々申し訳ないです。でも本当にありがたいです! oji32さんのアドバイスどおりIF文を入力したら×が出ました! お手上げじゃなくて良かった。。。 そして A列→半角全角の違いはなかったです。 B列→式を変更してみたけど同じでした。 C列→社名の後ろにスペースは入ってませんでした。 B列の式はネットで調べてコピペしたんです。 こんなにシンプルに出来るんですね! 早速、こちらに変えました。ありがとうございます。

  • oji32
  • ベストアンサー率21% (38/180)
回答No.5

#1・4です。 15行目に入っている式を他の行に入力すると表示されますか? 表示される →シート2の問題 表示されない →シート1の問題または、式の問題 の可能性が高いような気がします。

tentenmaru
質問者

補足

度々ありがとうございます! 他の行に入力してみましたが、計算結果は0のままです。 集計表がいくつか必要なので、別の地区の取引先の集計表を また作ってみたところ、今度は80行目に同様のトラブルが起きました。 今度はシート1のD列に直接入力しても反応がありません。 最初の集計表は何のトラブルもなく完成したのに何故なんだろう。。 でも、oji32さんのおっしゃるようにシート1の方で あれこれ試してみたら良いのでしょうね。。

  • oji32
  • ベストアンサー率21% (38/180)
回答No.4

#1です。 >シート1のD列の関数を消して、直接値を入力してみたところ、 売上金額が表示されました。 この部分を見ていませんでした・・・。 Dの該当セルで先ほどの →書式設定を他のセルと比べる →F9を押す →F2を押してEnterを押す。 をお試しください。

tentenmaru
質問者

補足

再度のアドバイスありがとうございます! Dの該当セルで試してみました。 同じように試してみたのですが、変化がないみたいです。 シート1が原因なのかもしれないのですね。

回答No.3

私も以前そのような事になったことがあります。 突然そのセルだけがバカになったように反応しなくなる。 っていうか、どんな関数を入れても0を表示するという現象;; でも私の場合は、新しくシートを挿入して、 そのシートのどこでもいいんですが、コピペをし、 再度、関数を入れなおすと直りましたが...、 それでは無理でしょうか?

tentenmaru
質問者

補足

アドバイスありがとうございます! まさにそのとおり!バカになったように反応してくれないんです。 「0」って、何だよぉ!?って泣きたくなっちゃいました。 同じ現象を見たことがある方がいて何だかほっとしました。 シートを挿入して試してみましたが、私の場合は今のところ何も変化が ないみたいです。。 参考にしてあれこれ試してみたいと思います。

noname#176215
noname#176215
回答No.2

何となくで一応確認ですが。 循環参照になってませんか? [ツール]→[ワークシート分析]→[数式の検証] で何か表示されませんか?

tentenmaru
質問者

補足

アドバイスありがとうございます! 早速試してみたら、計算結果は0でした。 循環参照ではないと思うのですが(多分。) でも、数式の検証は使ったことがなかったので 勉強になりました。ありがとうございます。

  • oji32
  • ベストアンサー率21% (38/180)
回答No.1

・他のセルと書式が違う。 →書式設定を他のセルと比べる ・再計算を行ってみる。 →F9を押す ・式の再入力を行う。 →F2を押してEnterを押す。 いずれかで解決しませんか?

tentenmaru
質問者

補足

早速のアドバイスありがとうございます! おっしゃる方法は何度となく試してるのですが、 何も反応がありません。。 新たに行を挿入して作り直してみたり、 まったく違う別の行に入力してみたり、 試してみましたが、0のままなんです。。

関連するQ&A

  • エクセルの行にあるものを列にする数式

    エクセルの数式を使って、行に入っているものを別のシートの列に入力することについて質問です。 例(シートA)    A  B  C  D 1  月 火 水 木 2  10 20 30 40 ABCDが列番号、1,2が行番号です。 このように入力したシートがあります。 そして、違うシートには下のように入力したいのです。 例(シートB)    A  B  C  D 1  月 10 2  火 20  3  水 30 4 木 40 (ずれてしまってすみません) シートBの『10,20,30,40』のところに数式を入れたいのですが、シートAに入力した時に、シートBにそのまま反映されるようにしたいのです。 ちなみに、シートBのB1(10となっているところ)に『=シートA!A2』と入力して、それをシートBのB列全体にコピーすると、シートAのA列部分を縦によんでしまうので、反映されません。 シートAでは横によんでいって、それをシートBでは縦に表示する、というところです。 このような説明でわかりましたでしょうか? $マークも使って絶対値もやりましたが、それでもダメでした。 いい方法をご存知のかた、よろしくお願いいたします。

  • Excel 数式のコピーについて

    一般的な売上の合計を求める表で、行を挿入するとその行の数値も加算され縦計の合計も 数式のコピーで自動的に求められるようになってますが、 列を挿入して売上店を増やしたらその店の合計は自動的には関数が入ってなく、関数のコピーを しなければいけなません。 行の挿入と列の挿入では違ってくるのですか? 行ができるので列もできるのか?と思ってました。よろしくお願いします。   A社D社B社    10 30 20    20 20 30 合計30    50    (D社を挿入したら縦計が自動的に入ると思ってました・・・)

  • 必要な行だけ表示または印刷できる?

    エクセルで たとえば A列に得意先 B列に日計売上 C列以降は集計等入力した表があって 別シートにその日の売上があった得意先名と日計売上だけが表示されるように A列 =IF(Sheet●!B○=0,"",Sheet●!A○) B列 =IF(Sheet●!B○=0,"",Sheet●!B○) で日計売上のない得意先は表示されない表を作ったのですが、表示の無い行が含まれない表示はできますか? 式が入力されているので空白行の削除ではないんですね 可視行でもうまくいかなかったのですが 良い方法は、ありますか?

  • エクセル リンクを埋め込んだシートに行を追加

    いつもお世話になっております。 エクセルの表で、          (1月)     (2月)  得意先名   売上金額   売上金額 こんな表があるとします。 これを2枚目のシートに全てリンクをして、 元のシートの内容がアップデートされても、 2枚目のシートに自動入力が出来るようにします。 しかし2枚目のシートには、2行ほど足して、 このような差異を比較ができるようにしたいのです。          (1月)     (1月)              (1月)              (2月)  得意先名   売上金額   12月末付販売予想金額   販売予想金額-売上金額   売上金額 先程2枚目のシートの、(1月)売上金額の右横に行を挿入しようとしたら、 注意書きのウィンドウが開き、どうやら出来ないということが判明しています。 もし他の方法で、既に埋め込まれたデータの右横に新しい行を挿入でき、 なおかつ埋め込まれたデータが元のシートと問題なくリンクできるように出来る方法がありましたら教えて頂けると助かります。 どうぞよろしくお願い致します。

  • EXCELでデータが入っている最終行までの合計

    現在、EXCEL2000で各月の全得意先の合計を求める式を作っています。 データは現在B列に得意先コード・C列に得意先名D列以降はVLOOKUP関数で別シートから求めた各月の得意先の売上金額を求めています。 D6セル:VLOOKUP(B6,'5月'!$B$6:$J$1500,9,0) 例えば、現在D6からD1149までにデータが入っており、別シートの得意先元リストの件数が増えれば、自動的に下の行にスライドするようになっています。その為、数行余分に予め関数を入れた空欄の行を作っています。 B6セル:OFFSET(元リスト!$B$6,ROW()-6,COLUMN()-2) 現在D1158にD6からデータの入っている最終行まで合計を関数で表示させたいのですがうまくいきません。ネットでも色々探しているのですが、私の検索の仕方が悪いのか中々見つかりません。 LOOKUP関数となにかを組み合わせて、得意先コード(B列)の空白になっている時、その一つ上のD列の行を参照できるようにできればいいんじゃないかとは思うのですが。 もし、いい方法があればご教示願います。

  • データを集計したいのですがどのように数式を作れば?

    初めて質問箱に投稿させていただきます。よろしくご指導下さい。 ※ シート(1)にデータ、シート(2)に結果を求める。 ※ シート(1)のA列に大分類(8項目)、B列に中分類(35項目)、C列に小分類(15項目)、D列に金額   を入力します。  これを2行から99行に色々な組み合わせのデ-タを入力したシートを基にして    ※ シート(2)のB列2行~D列2行に、シート(1)のA列~C列のデータの中で組み合わせの1番多い組   み合わせを表示し、シート(2)のE列2行にその組み合わせの金額の合計額を表示する。 ※ シート(2)のB列3行~E列3行以降の行に、シート(1)の組み合わせの2番目以降の順に表示する   という具合に、すべての組み合わせとその計金額を表示する。 ※ このような求め方をするためには、どのような数式をつくればよいのでしょうか。ご指導ください。                                                               シート(1)の例       A列      B列      C列     D列 1行  大分類    中分類    小分類    金 額 2行    3       B       あ      1,000 3行    2       C       あ        500 4行    3       B       い        500 5行    1       A       う       1,500 6行    2       C       あ      1,000 7行    3       A       う       1,500 8行    3       B       あ        800 9行    2       C       あ        600 10行   1       A       う         700 11行   3       A       あ         200 12行   3       B       あ       1,000 13行   5       A       い         100 14行   2       C       あ         200 15行   3       A       う         700 ~ 99行 計                      10,300   シート(2)の例  (上記シート(1)の例の集計結果をシート(2)の例のように表示したい)       A列   B列    C列     D列      E列 1行   回 数  大分類  中分類   小分類   金  額   2行    4    2      C      あ     2,300 3行    3    3      B      あ     2,800    4行    2    1      A      う      2,200 5行    2    3      A      う      2,200 6行    1    3      B      い       500 7行    1    3      A      あ       200 8行    1    5      A      い       100 9行 10行 ~ 30行   計                       10,300      

  • Excel VBAで項目ごとに別々のシートに転記したい

    excel VBAで項目ごとに別々のシートに転記したい 困り度: すぐに回答を! excelVBA勉強中の初心者です。 初めて質問させていただきます。 初心者には難しく、行き詰ってしまいました。 仕事で以下のことがしたく、基本書、参考書などを調べて勉強し作成していっているのですが、身近に教えていただける方もおらず、つまづいております。 詳しい作成方法など、詳しい方にご教授いただければと思います。 book(1) 一ヶ月分の売上データが入っており、     A列に取引先名     B列に商品名     C列に件数     D列に合計額     があります(1万行前後)。 book(2) シート1に抽出したい取引先名の一覧(50件ほど)、      シート2以降は転記用でA列に商品の一覧(固定)、      例えば4月分であればB列に件数、C列に金額、     5月分であればD列に件数、E列に金額・・と一年間使用するため、件数・金額は12か月分用意してあります。      シート1にある抽出したい取引先ごとに作成しています。 (1)の売上データを、(2)にあるシート1の取引先一覧と一致するものを抽出して、取引先ごとに分けてあるシートに転記したいのです。 ※(1)の売上データには抽出不要の取引先も多数含まれています。 ※(1)の売上データは同じレコードが存在する場合もありますが、すべて別々のものとみなし、転記先シートには件数・金額ともに合計を表示したい 以上です。 よろしくお願いします。

  • 数式を奇数行と偶数行を別々に貼り付け!

    数式を奇数行と偶数行を別々に張り付け の方法ってあるんですか?? Sheet1で計算表をつくっています。 B列~列Hまで1行と2行を結合さしていて、I列~X列は1行、2行別々です。 I列~X列に1行2行別々の数式をいれたいんです。 偶数行に =IF(Sheet2!AC52="","",IF(Sheet2!AC52<2,"<",ROUND(Sheet2!AC52,2))) として、2行・4行・6行・・・・ 奇数行に =IF(Sheet2!D52="","",IF(Sheet2!D52<Sheet2!$B52,Sheet2!$A52,ROUND(Sheet2!D52,4))) として、3行・5行・7行・・・・ でいう感じでしていきたいんですが、関数はありますか?? 関数以外でも方法があれば教えてください。 お願いします。

  • 取引先名による金額の自動配分方法

    ウィンドウズXPでマイクロソフトトエクセル2003を使用して「切手受払帳」を作成したいと思っています。Sheet1を切手受払帳に、Sheet2を取引先一覧にSheet名を変更しています。Sheet1を切手受払帳のA1に取引先名、B1に切手使用額、C1に総務、D1に営業、E1に資材と表題を入力しています。Sheet2の取引先一覧にはA列に取引先名を約千件入力しています。B列にはフリガナを半角カタカナで入力し、C列には頭文字を半角カタカナで入力、D列には取引先名に対応した部署名を入力しています。○○工業は総務と登録しています。取引先一覧の取引先名(D列)を元に、切手受払帳A2に取引先名を○○工業と入力し、B2に260と切手使用額を入力すると、C2に260と自動的に金額が表示される。A列に入力した取引先名でB列の切手使用額をC列~E列の部署ごとの列に自動配分する関数の組合せをおしえてください。

  • エクセル関数の自動表示について

    自動表示についてご質問いたします。 シート1 (3月入力時)       A列  B列  C列  D列  E列  F列  G列  H列 1行目  1月   2  10  11  12  30  31  33 2行目  2月   1   2   5   8   9  10  48 3行目  3月   3   5  10  11  30  31  32 4行目  4月   こういうシート1の表があったとします。 シート1で3月入力した時点で、シート2では以下の表があったとします。        A列  B列  C列  D列  E列  F列  G列   1行目    3   5  10  11  30  31  32 と、自動で表示され。 4月(シート1)に数値を入力すれば、シート2の数値が最新数値に自動で入れ替わる・・・と、いう関数を作りたいのですが、いい関数ありますでしょうか? この場合、シート1ではB列~H列の数字の個数は固定(今回は7個)であり、毎回ランダムで数字が入力されていきます。 これをシート2の1行目、A列~G列に最新数値を毎回反映させて、表示したいのです。 どなたか、ご存知の方よろしくお願いします^^;

専門家に質問してみよう