Excelでセルのグループ化して数値で返す方法

このQ&Aのポイント
  • Excelでセルのグループ化し、グループごとに数値を順に返す方法を知りたいです。
  • データ総数が約9000列のExcelで、同じ数値を共有するセルをグループ化し、グループを順に数値で区分したいです。
  • Excelで集計機能を使用せずに、セルのグループ化と数値の順次返却を実現する方法を教えてください。
回答を見る
  • ベストアンサー

Excelでグループ化し、グループ名を数値で返すには?

Excelで次の解を求める時、いいアイディアはないでしょうか。 1) セルをグループ化します。 2) 次にグループ化したまとまりごとに、 左列に数値を順に返します。 つまり以下のようなセルがあるとき : A B 1 : 空白 442565 2 : 空白 442565 3 : 空白 332211 4 : 空白 332211 5 : 空白 332211 ↓ : A B 1 : 1 442565 2 : 1 442565 3 : 2 332211 4 : 2 332211 5 : 2 332211 つまりBが同じ数値である セル同士をワングループとして、 そのグループを順列に数値でA列に 区分したいのです。 A列が何セルでグループ化されるかは ランダムです。B列において2つのセルが 同じ数値を共有している場合もありますし、 100のセルが同じ数値を共有しているもあります。 データ総数はおよそ9000列ほどになります。 集計機能を用いた方がよいでしょうか。 関数の他にアイディアがあれば、教えて 頂けるととても助かります。 宜しくお願い致します。

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

  • ベストアンサー
  • mshr1962
  • ベストアンサー率39% (7418/18948)
回答No.1

1行目から始まってるとして A1=1 A2=IF(COUNTIF($B$1:$B2,$B2)=1,MAX($A$1:$A1)+1,INDEX($A$1:$A1,MATCH($B2,$B$1:$B1,0),0)) でA2を下方にコピーでどうでしょうか?

関連するQ&A

  • excel 数値と空白がランダムに並んだセルの移動平均

    エクセル2003でA列に適当な数値と空白セルが、上からの順番でランダムに並んでいて、それをもとにB列の各行それぞれに移動平均を出したいと思っています。 移動平均は数値が入力されたセルのみを対象にして空白のセルをとばし、さらに直近の異なる数値をさかのぼって4つ探し、計算対象としたいのですがどのようにしたらよいでしょうか? 宜しくお願い致します。

  • Excelで特定の数値が入った行の別列の数値を集計

    ExcelのA列にそれぞれ空白 or 1、2、3いずれかの値が入っています。 B列には行ごとに異なる数値(1、2、3、4)が入っています。 A列とB列の行数は同じです。 それぞれの数値を下記の通りにまとめたいと考えています。 ・A列に「1」が入っている行のB列の数値を集計し、その数をA100に入れる ・A列に「2」が入っている行のB列の数値を集計し、その数に1.5を掛けた値をA101に入れる ・A列に「3」が入っている行のB列の数値を集計し、その数に2を掛けた値をA102に入れる 上記はどのような計算式で実現できるでしょうか? よろしくお願いします。

  • エクセル2003の集計で

    エクセル2003の集計で セルA列にコンマ区切りで数値が入っているのですが これをセルB列でで集計することってできますか? A列の数値の数はバラバラです このような感じです↓ A1 1,2,3 B1 6 A2 2,3 B2 5 A3 9,1,7 B3 17 よろしくお願いします

  • 【エクセル 関数 マクロ】連番のグループ割当

    グループをランダムに決めるため、 添付画像のように B列に名前をずらーっと入れます。 ※実際は1000人くらいいます これに対して、A列にて 1~10 個単位で 1~∞ までの連番を組みたいと思ってます。 つまり、 1 1 1 1 2 2 3 3 3 3 3 4 4 4 5 5 5 5 5 5 6 7 7 ・ ・ ・ みたいに、1~10個ずつランダムにグループ分けされた連番を入れたいのです。 グループ数は予め固定しておらず、 1グループ辺りの人数も1~10でランダムにしたいので、 別のセルでグループを設定して・・・という方法ではなく、 添付画像のようにB列に氏名を並べたままやりたいと思っています。 ただし、B列に1,000人ならA列も1,000行目まででばっちり 合わせなくてもいいです。 1,001行目から下は無視すればよいので・・・ なお、他のセルで違う計算をしてから A列に反映させる、というやり方なら大歓迎です。 ですから、他のセルで randbetween(1,10)を作って、それを活用するやり方でもOKです。 マクロでも難しいでしょうか? 宜しくお願い致します。

  • Excelで同数値の数を数える

    次のような数値があるとします。  A   B   C   D  201   1   205   2           201   2   205   1   203   1  行A、Cには201、202などの値がランダムに 表示されています。(関数で表示された値です) 行Bには、例えばB1にはA1:A3の範囲中にA1セルで表示されて いる値と同じ値がいくつあるかをカウントしてあるのですが、 このカウントに関数を使いたいのです。 行Dには、A1:C3の範囲で同じようにカウントした結果を表示 させたいと思います。 同じ行に同じ値が表示されていることはありません。 AとCのセルが空白の場合はBとDも空白にしたいため、 IF(A1="","",COUNTIF($A$1:$A$3,A1)) と入力してみたのですが、空白セルに関数があるせいか、 空白セルまでカウントされてしまいます。 行Aの関数を消すとうまくいくのですが、 消さずに、空白セルをカウントしない ようにする方法はあるでしょうか。 お返事お待ちしています。  

  • EXCELで数値の検索

    excel2000です。 あるセル範囲の中から、数値の入っているセルを探し出し、 「計」の字のあるセルの前までその数値を繰り返す・・・という表を 作りたいのですが、どうしたらいいのかわかりません。 例) A3に「1」、B6に「計」が入っています。 A1からA5の範囲から数値の入っているセル(=A3)を探し出し、 C1:C5に「1」を並べる。 続いてA8に「2」、B11に「計」が入っていて、 C7:C10まで「2」を並べる。 という感じです。 A列の範囲は毎回変わり、B列の「計」の次の行から、 次の「計」の手前までの範囲です。 数値が入っている場所(A3やA8)も毎回変わります。 本当に困っています。 お力を貸してください。よろしくお願いします。

  • エクセルの空白を求めたいのですが。

    エクセルの空白を求めたいのですが。 例えば、 ・・A B C D E 1 4 2 3 8 4 5 6 4 7 8 9 2 10 A列の数字入力があるセルから、次のセルの入力値まで の空白の個数を関数で出来ますでしょうか? A9~A6 は空白が2個となります。 A6~A3 は空白が3個となります。 A列の 各行 には他のセルで計算された値を出しているので、 各行に現れる数値は、その時によって違います。(現れる数値は整数です) わかる方いましたら、宜しくお願いします。

  • Excel 数値比較について

    A列に基準値、B列に結果の数値、C列にその差異の数値を表示したい場合は、どんな数式?関数?を利用すればいいですか。 例えば, セルA1に10、B1に8の場合、C1に2という数値を表したい。 セルA1に5、B1に10の場合、C1に-5という数値を表したい。 お願いします。

  • Excelのカウント

    セルA列に入力されている数値を参照し、セルB列のように出力したいです。 セルA2に0と入力されていれば、BセルB2、B3、B4、B5に0になるようコピーしたいのですが、数が膨大なためどなたかよい対処法をどなたか教えて頂けないでしょうか。 ちなみに、A列に入力されている数値は0と1のみになり、A列の数値はランダムに入力されています。

  • SUMIF関数で複数のブックを参照する方法

    A列に1~20の数値がランダムに入っていて、B列~Z列はそれぞれ1~20に対する数値が入っています。 それを数値1項目のB~Zの各々の集計、同2のB~Z、と20までB~Zそれぞれの集計を出すブックを作成しています。 その関数自体はSUMIFでできるをことを教えていただいたのですが、 その集計は複数のブックにまたがっており、その全てからA列の数値を参照しなければならなくなりました。 ブック001のセル01、ブック002のセル01・・・ブック012のセル01、 同様にブック001のセル02、ブック002のセル02・・・ブック012のセル02、といった具合です。 関数で処理することはできるのでしょうか? よろしくお願いいたします。

専門家に質問してみよう