• ベストアンサー

この表なんですが、●の右横の数値は左列の●直前の空白をカウントした値で、L6にはその式が入ってます。N5の上には空白がないからO5の値は0にならないのですか。L列、P列、S列、に作業列を作って●の右横の数値を表示して表を作ってみたのですが、時間がかかります。作業列を作らない方法ありますか。L5に求める値の関数が分かりません。初心者なのでご教授お願いします。

この投稿のマルチメディアは削除されているためご覧いただけません。

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

  • ベストアンサー
  • mt2015
  • ベストアンサー率49% (258/524)
回答No.1

今一何をしたいのかが分かりにくかったのですが、L列に作業列(M列)を使わない式を入れたいって事でしょうか? とりあえずこんな式を作ってみました。 L5に入れてコピーしてみてください。 =IF(K5="●",ROW()-SUMPRODUCT(MAX(4,ROW(K4:K$4)*(K4:K$4="●")))-1,"") でも、初心者の場合、メンテナンスの手間を考えたら作業列を使った方が簡単だと思いますよ。

その他の回答 (1)

  • bunjii
  • ベストアンサー率43% (3589/8248)
回答No.2

>この表なんですが、●の右横の数値は左列の●直前の空白をカウントした値で、L6にはその式が入ってます。 「=IF(K6="●",M6-SUM(L$5:L5),"")」と言う数式のことですよね? >N5の上には空白がないからO5の値は0にならないのですか。 いいえ、その数式をN5セルにコピー&ペーストすると循環参照になるためです。 つまり、N5の数式は「=IF(N5="●",P5-SUM(O4:O$5),"")」になるためSUM関数でO4:O$5を参照しておりO5の値を計算するとき自分自身が計算対象となり無限に減算を繰り返すことになります。それを防ぐためエラーで計算を強制的に中断します。 >L5に求める値の関数が分かりません。 条件分岐のIF関数を入れ子構造にして5行目の計算を特例化してください。 =IF(K5="●",IF(ROWS(L$5:L5)>1,M5-SUM(L4:L$5),M5),"") 尚、M、P、S、Vの各列はCOUNTIF関数で5行目から現在行までの"●"以外を計数しているのでしょうか? 情報が不足しているので合理的な数式の組み立て方をアドバイスできません。 論理的な説明が必要でしたら補足またはお礼で要請してください。

midorichopi
質問者

お礼

ありがとうございます。解決しました。

midorichopi
質問者

補足

M5には「=COUNTIF(K$5:K5,"")の式が入っていてM,P,S列は計数しています。この式で合ってますか?上記の関数をL5に入力してO5にコピペしたら循環参照になって0が表示されません。特例化するのですか。しかも下にオートフィルしたら●横右の数値が消えて表示されなくなりました。困りました。どうしたらいいですか。すいません。

関連するQ&A

  • COUNTIF関数がうまく行かないとき

    Excel 2013です。 37385行14列の表で、二つの列のデータが重複している行を抽出したいとなりました。 二つの列のデータは分類番号のようなもので、ゼロから始まるものもあるので文字列として入力された数字です。 そこで、その二列をCONCATENATE関数で繋いだ数字の並び(N列に配置)をCOUNTIF関数で調べる(O列)ことにしました。 すると、N列の値が異なるセルを同じとみなしてカウントしたようなO列の値がいくつか見られました。 そこで、N列のセルにNUMBERVALUE関数を追加し数値にしたところ、一見うまくいっているようにみえます。 これはなぜ起きたのでしょうか? また、臨んだ結果が得られていると確認する方法がありますでしょうか? N列は文字列のときは文字列長0~18までありました。 よろしくお願いします。

  • エクセルで、表のタイトル数を数える関数?

    表の中にある、数値を計算するのではなく。 表の中にある、空白でない文字列。 つまり表の中にある、縦軸のタイトル点数を数えたい。 例えば表にタテにタイトルが並んでて。そのタイトルの横に価格とか数字が並んでる表です。 どの関数を使えばよいのですか? たしかカウント関数とブランク関数とイフ関数を混ぜて数えるんだったかな?忘れてしまいました。 すんません。教えてください。

  • ExcelのVLOOKUP関数でわからないことが・・・

    N   ┃O       ┃P     ・・・   X   ┃    Y┃ Z 車番 ┃乗務員コード┃運転手 ・・・乗務員CD┃運転手┃車番 上記のような構成の表を作ってあります。 O列に数字を入力した時点で、N列・P列の両方がいっぺんに出るような関数を入れたいと言うのが目標です。隣のX列~Z列はその参照する表です。P列に =IF(O3="","",IF(O3=VLOOKUP(O3,$X$1:$X$202,1),VLOOKUP(O3,$X$1:$Y$203,2),#REF!)) と言う関数により片方はできました。Oに数字を入力した時点でP列には運転手の名前がちゃんと出ます。問題は隣の車番でして、同じようにO列の乗務員CDを参照させてVLOOKUP関数を設定したのですが、値を返してくれないどころか、Enterを押すと数式がそのままセルに表示された状態になってしまいます。ちなみにN列に打った関数は =IF(O3="","",IF(O3=VLOOKUP(O3,$X$1:$Y$202,2),VLOOKUP(O3,$X$1:$Z$203,3),#REF!)) です。しかももっとわからないことに、他にも同じ作業をさせているセルがいくつかあるのですが、唯一ココだけができないと言うことです。これはどうすれば良いのでしょうか? 下手な質問で申し訳ありませんが、これでわかる方がいましたら、是非、是非力を貸してください! よろしくお願いします。

  • ホームページビルダー表の高さが調節できません

    3列の表を作っています。 2列、3列めは行を一つに連結しています。 3列めのセルに長く文章を入力すると、1列め、2列の高さが変わってしまいます。空白だらけ になり高さが直せません。 表全体の属性で高さを見るとピクセルと%が選べます。 ピクセルを消したり、数値入れたり、100%、50%にしても変わりません。 各セルの属性の高さはピクセルのみです。 それぞれ消したり数値入れてみても何も変わりません。 最初のうちは変わっていた気がするのですが、作業を進めるうちに表が複雑になってしまった からでしょうか?

  • エクセルの表作成で困っています。

    条件:その行の左から1番目の値 < その列の上から1番目  真の場合:その行の左から2番目の値  偽の場合:その行の左から3番目の値 という表を作成したいのですが、関数の式の作り方がわかりません。 IF関数を使えばよいのでしょうか。 それとも他にもっと良い方法があるでしょうか。           201001 201002 201003 201004 201005・・・ 200903 あ い    い   い   い   い   い・・・ 201003 か き    か   か   か   き   き・・・ 201112 さ し    さ   さ   さ   さ   さ・・・ ・ ・ ・ というような表を作成したいのです。 宜しくお願いいたします!

  • エクセルマクロ:空白行を除いてコピー

    マクロで次の作業を処理したいのですが、どのようなコードを書けばよいのでしょうか?教えてください。よろしくお願いします。 ○sheet1 ☆左側 列B~Hをワンセットとしたものが、計51行ある。先頭はタイトル行で9行目である。 D列には固定の文字列が与えられており、E列はブランクで、D・Eともに非表示にしておきたい。 B10~B59には、固定で1~50の数字が順番に与えられている。 C10~C59、G10~G59、H10~H59には数値が、F10~F59には文字列が入力される。 空白の場合もあり、どの行に入力されるかは不明。 ☆右側 列J~Pをワンセットとしたものが、計51行ある。先頭はタイトル行で9行目である。 J10~J59には、固定で51~100の数字が順番に与えられている。 K10~K59、M10~M59、O10~O59、P10~P59には数値が、L10~L59、N10~N59には文字列が入力される。 空白の場合もあり、どの行に入力されるかは不明。 ○sheet2 sheet1のボタンをクリックし、sheet2を表示させ、 sheet1の値を次のようにsheet2に貼付けたい。 sheet2のB8~H107の範囲内で上から、sheet1の左側B10~H59と右側J10~P59の空白を含む行を除いた セット(列B~H、列J~P)のみをコピーし、左側と右側を連続して、値のみ貼付けたい。 ※C列とK列の空白を判定すれば良い ※並べ替えなどのために別シートを置きたくない ※非表示列の扱い方

  • エクセル97です。表中の空白セルに0を入力する関数を教えてください。

    数値が入った表があります。 ところどころに数値の入っていない空白セルがあります。 そのセルに0を入力する関数を教えてください。 入力後、その表からグラフを作成したいので、文字列ではなく数値でないとダメですよねぇ?

  • エクセル 空白セルの直前の数字の個数を抽出したい

    エクセルでA1~A27に下のような値と空白のセルが入っています。 空白セルの直前の数字だけ個数を関数を用いて自動でカウントしたいのです。下の表でいうと、 「3」・・・1個 「5」・・・2個 「7」・・・1個 という風に数えたいのですが、どのような関数を用いたらよいのでしょうか。エクセル関数初心者です。よろしくお願いします。 【例表】 空白セル 空白セル 7 6 5 4 3 2 1 空白セル 5 4 3 2 1 空白セル 空白セル 空白セル 3 2 1 空白セル 5 4 3 2 1

  • 表を参照して値を入れていくマクロ

    こんにちは。丸投げの質問はだめでしょうか。 お願いできたら大変助かります。 [送り先]シートのF、L、Rの列に[料金表]の記号を参照して 入れていくというものです。 送信しようとすると、行と列の表示がぐちゃぐちゃになるので 表現できないかもしれないので心配です。。 [料金表] N O P Q 37 記号 上 中 並 38   A 100 80 60 39 B 90 70 50 40 C 80 60 40 ※見出しは37行目 [送り先] E F L R 5 記号 上 中 並    6 B 90 70 50 7 A 100 80 60 8 C 80 60 40 ※見出しは5行目 ※ちなみにF L R列の上・中・並のカテゴリーはF4、L4、R4をセル番地としてセルの結合しています。 [料金表]シートには記号、上・中・並などのカテゴリーがあります。 これらは[送り先]シートの記号・カテゴリーと常に同じです。 [送り先]シートにはあらかじめ記号と上・中・並などのカテゴリーは入って います。値が空白になっているので、記号に対応する値を、それぞれのカテゴリー 別に入れていきたいのです。 記号は例のようにABCのように昇順であるとは限りません。 どうぞよろしくお願いします。

  • エクセルCOUNT関数について

    こんばんは、COUNT関数についてお伺いします。 たとえばA列に関数(SUMなど)の数式が入っています。そのA列を範囲指定してCOUNT関数をしたところ、数値が現れているセルのみをカウントしたいのですが、空白の数式が入っているセルもカウントしてしまいます。数値を示しているセルのみをカウントしたいのですが、うまく行きません。 どうすれば解決できますか、教えていただけないでしょうか。

専門家に質問してみよう