• 締切済み

エクセル連続していない不規則な数値セルの小計を右隣空白セルに一発で出すには?

 エクセル2000で定期的に部材の出庫表を作成しているのですが、日々、データーが変動し、表が更新されます。    A   B  C  D  E  F  G 1コード   1  2  3  4  5  6  2名称   数量 ← ← ← ← 3部材1  10  5    4部材2  30 24     8 5部材3  25    40 15     23 6部材4      8 15     32 7部材5      9  18 8部材6  20 30  45       45 7  上記のような形式で表が作成され、実際はもっと横長の表になります。  各部材はB3以降に数量が記載され、最右端に合計セルがあります。数値セルの各行に所々、空白セルがあります。(セルには数式は入っていない)  少しでも表を見やすくしたいので、数値データーセルが連続しているセルの右隣の空白セルに簡単に小計を差し込みたいのですがその方法が分かりません。  仕方ないので手動にてCTRLキーを押しながら任意の数値セルを選択し、Σで合計していますが、作業が進まず、ミスも出ます。  上記の表の部材1ですと、B3、C3の合計(小計)15を空白のD3セルに、部材3ならD5、E5の小計55をF5に、部材6ならB8、D8の合計95をE8に表示させたいのです。 過去にもこの質問をしたのですが、VBAでないと出来ないのでしょうか?私はVBAでの記述がよく理解できません。他に簡単に連続する数値セルの合計を右隣の空白セルに表示する方法は無いでしょうか?IF関数等を入れたりしていますが、循環エラーが出たり、上手く行かず、教えていただけませんか?手入力しか無理でしょうか?これで困っています。

みんなの回答

noname#22222
noname#22222
回答No.3

空白セルは必須なんでしょうか? 0を入力したらブランクに表示するという手はダメですか? ※Excel門外漢のチョットした疑問。

superfighter823
質問者

お礼

空白セルは元データ表の構成上、発生します。返答有難うございました。

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.2

>VBAでないと出来ないのでしょうか できません。 (1)エクセルの関数は、空白行セルを探し、データがあれば、そのまま、なければ何か式を入れる、ことはできません。式を入れると 元のデータは消えてしまうから、式を入れられません。 別のセルに入れた数式で、元の行の空白セルのあり場所が判っても、その元の行の空白セルに、式を入れられません。 (2)すなわち式を入れるセル以外に、値や式を入れることができません。 (3)ある式を入れるセル自身を参照した式を入れると、循環エラーになります。 ですから、回答者の関数式の巧拙、応用力があるないに関係なく、不可能です。

superfighter823
質問者

お礼

 imogasiさん、回答有難うございます。手入力でやるしかないというのが分かりました。  関係部署に折衝して対応を考えて見ます。有難うございました。

  • 4994
  • ベストアンサー率19% (95/487)
回答No.1

真横に小計を出すのは無理かと思います。 (最右端の合計がおかしくなります) ただ単に小計を見やすくしたいだけなら 連続した数値の右横ではなく、部材の右横に出るようにしてはいかがでしょうか?    A   B   C  D  E  F ・・ 1コード   小計  1  2  3  4 ・・ 2名称        数量 ← ← ← ← 3部材1   15 10  5    4部材2   62 30 24     8  ・  ・     

superfighter823
質問者

お礼

 ご返答有難うございます。部材の右横に出すことは出来るのですが、それだと仕事が進めににくいので真横に出させたら思いました。  無理なことが他の方の回答で分かりました。どうも有り難うございました。

関連するQ&A

  • エクセルにて空白セル~合計セルに小計を差し込むには?

     仕事で下記のような横に長い一覧シートを使用しております。日によって列数の変動が大きく、列数が増えると印刷設定を変えてページ数を少なくしています。表が見にくくて申し訳ないのですが、数値0のセルは実際は空白です。  標準では下記形式のままで、合計及び各セルには数値データーが入っていますが、数式は入力されておりません。     A  B  C  D  E  F ~   BG   道具 型A 型B  型C 型D 型E 合計  1 畳  19  0   0  11  8~    156  2ドア  32 12    0  0  11~   93   3 鏡  0  25   18  0  0~    67  4建具 34  26   34  0  0 ~   112  5台所  8  0    0   20 6 ~   58  6座卓  0  0    43  22 0 ~   219  7 襖  30 23   25  30  0~    186  8欄間  4  32   0   0  24~    93  9照明  0  14   8   0  0 ~    72 10風呂  7  6    0   0  45~    95  横長の時、0の空白セルに連続する各データーセルをCTRLキーを押しながら、Σで小計を手動で出しているのですが、手作業では追い付きません。  B列を基点として、各行の連続しているデーターセルを0の空白セルの所に小計を簡単に出すにはどうすればよいでしょうか?  簡単に言いますと『B2>0かつC2>0でE2=0あればB2+C2を行う、E2>0ならB2+C2+E2を行う』次に空白0セルがあれば、それまでの小計を表示する、と言うようにしたいのですが、教えていただけないでしょうか?簡単に式をコピーできると言いのですが、  

  • エクセルで空白セルを寄せたい

    エクセル2002使用です VBAは使わずに関数だけで空白セルがあるセルを詰めて表示したいのですが・・・   A|B|C|D|E|F|G 1 あ い う え お か き 2 ○   ○ ○   ○ の表を   A|B|C|D|E|F|G 1 あ う え か  2 ○ ○ ○ ○ のように表を書き換えたいのです。 1行目には必ず文字が入力されています。 2行目には入力されているセルと空白セルが不定期に入力されています。 2行目のセルが空白ならば、1行目のセルも削除して左へ詰めて 表を転記したいのです。 よろしくお願いします。

  • エクセル グループ小計について

    "項目としてA1に順番、B1に色、C1に数量1、D1に数量2、E1に数量3、F1に数量4にそれぞれ数値があります。 B2~B25までに茶、黒、白、がランダムに入っています。 色が変わる度に小計を自動的に表示する方法はないのでしょうか。 ただし、順番の並びは変更しない方法とする。 サンプル表を添付します。 よろしくおねがいします。

  • EXCELで、参考対象のセルが空白の場合、の空白表示(複数対象)

    表1(1日単位の入金額)     A    B    C    D    ・ ・ 5  「 10」 「 10」 「 10」 「 20」   6  「 10」 「 20」 「 20」 「空白」   7  「空白」 「空白」 「空白」  「空白」   表2     A    B    C    D    合計 ・ ・ 5  「100」 「150」 「130」 「200」  「580」(A+B+C+D) 6  「110」 「 170」 「 150」 「200」  「630」 7  「空白」 「空白」 「空白」 「空白」  「 X 」 この表2で、ABCDの全てのセルが空白(7)の場合、「 X 」のセルが空白になるようにしたいのです。 勿論数値が入力されれば、ちゃんと計算出来るようにします。 ちなみに表2のABCDの各セルは、表1で入力された数値の積算金額(6段目の場合、表1の6+表2の5の合計)です。 一個だけならIF関数で、処理できたのですが、複数のセルの場合はどのようにするかが質問です。 よろしくお願いします。 なお、質問文が解らない部分があれば、補足いたします。    

  • エクセルで片方のセルに入力したら、もう片方を空白にしたい。

    請求書のフォーマットを作成しています。  A(タイトル)B(数量)C(税抜価格)D(税込価格)E(合計) 1  ○○     2    1000          2100 2  ○○     2            1050  2100 3  ○○     2                  2100 1の場合ですと、Eのセルを「2100」にしようと思ったら  E=セルC*1.05*セルBになり、 2の場合ですと、Eのセルを「2100」にしようと思ったら  E=セルD*セルBになります。 そこで本題なのですが、 私は3のように、税抜価格をセルCに入力、もしくは、税込価格をセルDに入力。そのどちらを行ってもセルEに「2100」という計算結果を出したいのですが・・・ (1)そのようにする場合、セルEにはどのような数式を入れればよいのでしょうか? (2)その際に、もしセルCに「1000」を入れたら、セルDは空白に、セルDに「1050」を入れたら、セルCは空白になるようにしたいのです(例えばセルCに「1000」が入力されている状態で、セルDに「1050」を入れると、セルCの「1000」が消えるような状態)そのようにするにはどうすればよいのでしょうか? ご教授いただければ幸いです。

  • Excel VBA 「小計」と入力したら自動計算

    エクセルの小計の計算について質問いたします。    A列    B列      C列   D列     E列    F列 1 施設名  2      商品名,内容   1    単位     単価    金額(数量×単価) 3      商品名,内容   1    単位     単価    金額(数量×単価) 4                              小計     ●●●● ――――――――――――――――――――――――――――――――― 5 施設名 6      商品名,内容   1    単位     単価    金額(数量×単価) 7      商品名,内容   1    単位     単価    金額(数量×単価) 8      商品名,内容   1    単位     単価    金額(数量×単価) 9                              小計     ●●●● ―――――――――――――――――――――――――――――――――                                合計     ●●●● 施設名ごとに項目が複数あり、施設ごとに項目の数も違います。 これを施設ごとに●の所に小計を出したいです。 「小計」が数回にわたり出てくる場合は、「前回小計をした次のセルから今回小計するセルの前まで」を計算させる訳ですが、どんなVBAを組めばいいのかわかりません。 理想としてはにE列に小計という文字を入れるとF列に自動で計が出るようにして、さらに小計の合計を最後の行のセルにだしたいです。。 さらに、見やすくなるように小計の下のセルにA~Fの間に太線を引いて施設ごとの区切りがわかるようにしたいです。。 繰り返し作業ばかりで大変です。 どなたか知恵をお貸しください。

  • 関数によって空白したのを数値「0」に置き換える

    A.............B...............C 1 ZZ............6..............× 2 AA........... 1 3 BB 4 CC............3 B列にはそれぞれ関数が入っています。 セルB1には、B2、B3、B4の数値の合計です。 C1のセルには、C1数値とB2、B3、B4の数値の合計が一致しているか否かの判定する関数が 入っており、一致していなければ、"×"が表示させるようにしています。 しかし、ここで問題が起きました。 「VALUE」というエラーが表示されました。 上記の表では、セルB3は、空白になっております。 本来は、セルが空白になっている場合は、「0」が格納されていると思うのですが、 ここには、関数によって、文字列?の「空白」に置き換えられています。 例えば = IF((Z5) ,5, "") ようにです。 多分、関数によって文字列として認識される空白("")を置いたためと思います。 関数によって置き換えた空白("")を数値「0」として認識できる関数を教えてください。 いろいろな方法があると思いますが、「関数」のみで教えてください。 C1には、以下の関数が入っています。 =IF((B1) = (B2+B3+B4) ,"○","×")

  • 連続しないセルの範囲をマクロを使って選択したい。

    見積書で「旧単価」より「新単価」の方が大きければ セルを黄色に… 小さければセルを水色に…という条件付書式を設定したセル D5を『形式を選択して貼り付け』でD列に書式のみを貼り付けようと 試みました。 【商品A見積書】     A      B      C     D     E 4  部品番号  部品名称  旧単価   新単価  数量 5  0000001   部品A    \210   ¥220    10   6  0000002   部品B    ¥520   ¥550     2 7  材料費小計 *******   *****   ******  ***** 8 9  0000004   部品C    \320   ¥420     3   10  0000005   部品C-2   ¥520   ¥450     2 11  材料費小計 *******   *****   ******  ***** この様な形で空白が出来ておりますので、全く上手くいきません。 Range("D65536").Select Selection.End(xlUp).Select で終了の位置までは選択できるのですが、 今度はD5までの空白が、商品ごとに変化してしまい 一定になりません。 このような連続しないセルの範囲を選択したい場合 どうすれば良いか御教授ください。

  • セルに数値が無ければ空白にすると計算が合わない

    画像 ① A4セルに数値がないとE4セルに「0」と表記してしまいます。 =IF(B4="","",B4+C4) 上記の関数を入れることで「0」の表記はなくなりました。 しかし、 ②のように計算がおかしくなってしまっています。 E4セルに合計「100」と表記するはずが、何もないままになっています。 B4セルに数値が無いため計算がおかしくなっているのではと思いますが、正常な関数を教えてください。

  • エクセル 空白セルを0にして……

    エクセルで表を作成しています ごく簡単な表なのですが 作成しているうちに 疑問が でてきたので 質問させていただきます 光熱費の表を作成しているのですが  B3に当日の水道のメータ数字 C3に前日の水道メータの数字表示 D3にその差 B4にまたその当日のメーター表示 C4に前日のメーター表示 D4にはまたその差が入力さ れるように設定 また、入力 当日のデータを入力したら 自動的に 翌日のセルの前日データのセルに 同じ数値が入るようにしています(例えばB3に入力したら翌日のC4セルに同じ数値が入る ) といったように 設定しました ここまでで 大体の表が完成したのですが ちょっと困ったことが おきてきました 当日の数値を入力すると 翌日のCセルに入力するようにしたのですが(B3に 入力すると 同じ数値がC4入力されるように設定) その際 一つおききしたいことができました 当日の数値を入力すると 翌日のB列が空白になり その行のEセルに数値が入って しまうのです。わたしとしては 基本的な設定を変えずに、ここを0に設定したいのですが その方法が分かりません  これとは 別に平行して 家計費の表を別で作成していた時 他の方からのアドバイスで 以前、空白の欄を0をする 関数を教えていただきました 其の時は 他の関数と 重なっている関数でした(加算減算を同時にする計算) この時の =IF(count(B3)=,"", , といったような関数を参考に色々試してみたのですが 中々うまくできません どうしたら この状況を解決できるでしょうか? 何方か お知恵をお貸しください 説明が分かりづかくて 申し訳ありません 宜しくおねがいいたします OSはVISTA ヴァージョンは2007です 重ねてもうしあげますが 説明が分かりづらくて申し訳ありません

専門家に質問してみよう