• ベストアンサー

excelで連続出現数の頻度の算出

お知恵をお貸しください。 シート1にデータがA列は01~09が文字列、10は数値 B列は10~15,C列 は16~20…というふうに入っています。 たとえば、01が下の行に2回連続して入ったら2回連続が1カウント、 離れた行にまた2回連続で入ったらまた1カウントで、合計2回連続ということで 違うシートには2回 2 という風に連続した回数が何回あったかを 出したいのです。 なにかいい方法はありませんか。 お示ししたのは画像ファイルですので、関数の式またはマクロの構文をお知らせいただけると助かります。 よろしくお願いいたします。

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

  • ベストアンサー
  • msMike
  • ベストアンサー率20% (363/1775)
回答No.1

貴方が「出したい」数式を考えるので、検証するために正解値を(それが表示されるセルも分かるように)すべて示してください。

その他の回答 (2)

回答No.3

【アイデアだけ】  頭の体操がてらに、質問の課題に挑んでみた。添付図を見ると、その要領は2段構え。 ステップ1:A列のデータを連続、非連続に応じて連結して取得。 ステップ2:そのデータから連続データの出現回数を求める。  質問者は、こういうことをやりたいのかな?

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

大幅な補足要求します。 >A列は01~09が文字列 画像では、数字が入っている、のでは。 >10は数値 とは ーー 質問の意味がわからない。文章表現を、ガラリと変えて表現してみて。 例示画像には、結果の回数も入れなければ推測もできない。 ーー 回数を数える原データは、数字(2桁?)ですよね。 その回数を数える(セル)範囲を明記する(分かってもらう)必要があるのでは。 しっかり、質問文章を書いてほしい。 関数を用いてでは、むつかしそうなんだが、VBAは経験はあるのか。 プログラム経験があると思えない。

関連するQ&A

  • エクセルで連続回数などを調べたいです。

    エクセルで連続回数などを調べたいです。 なるべく簡単に出来る方法があればぜひ宜しくお願いします。 例えば      A列   B列 1行目   い    64 2行目   い   100 3行目   あ    30 4行目   あ    40 5行目   あ    20 6行目   い   -77 7行目   い -60 8行目   あ   -80 9行目   あ   -50 10行目   あ -100 ・    ・ ・    ・ ・ 800行目 というように数字が入っているとして、 1.A列が「あ」で、B列に「正」が連続で出てきた回数の最も多い回数を調べたい。  (A列が「い」の場合や、「正」では無く「負」の場合も) 2.さらに、1の結果それぞれの数字を合計したい。 というときはどんな式になりますでしょうか? 上の、1行目~10行目で言えば、 「あ」の場合の「正」の最大連続回数は「3」 「い」の場合の「正」の最大連続回数は「2」 「あ」の場合の「負」の最大連続回数は「3」 「い」の場合の「負」の最大連続回数は「2」 それぞれの合計数は 「あ」の「正」の最大連続回数「3」の合計数が「90」 ・・・・ のように出したいのです。 それぞれの答えを入力するセルは違います。 こちら、関数もよく分からない状態です・・・。 マクロなどは、「マクロ」という言葉しか分からない状態です。(すいません・・・) 大変お手数をおかけ致しますが、お詳しい方がいらっしゃれば、どうぞ宜しくお願いします。

  • EXCELで連続した同じ値をグループと見なして数を数えるには?

    EXCELで連続した同じ値を1グループと見なしてグループ数を数える方法を探しています。つまり以下のようなデータがある時、A列中に何グループあるのかを関数で算出したいのです。 行   A 1   ○ 2   ○ 3   × 4 5   ○ 6   ○ 7   ○ 8   × 9   × 10   ○ 11   ○ 12   ○ 13   ○ 例中のA1~A13の範囲内では、A1~A2、A5~A7、A10~A13 を○のグループと見なして、グループ数は「3」ということになります。 このカウントをする関数式を1つのセルの中に作成して計算させたいのです。 ・ 列内には他に、×と空白があります。 ・ ○は必ず2つ以上連続しています。 ・ ○がいくつ連続してグループを作るかはわかりません。 ・ グループとグループの間に入る×と空白の数は不規則です。 これは職場で使っている管理表です。 当初、他列の各行にA列の前後の値から判断する式を入れて合計して求めていたのですが、パソコンスキルの低い不特定多数の人が使用するため、関連するセルに削除挿入されたりしてエラーが頻出し、集計している別シートの方にも影響を出しています。そのため、各行に計算式を入れる方法は避けたいのです。 お知恵をお貸しください。 よろしくお願いいたします。

  • エクセルで連続セルの出現回数を出したいです。

    例えば、A列に、0と1だけのデータが(数万行)あります。 A列 0 0 0 →a 1 →c 1 0 0 0 →a 0 →b 0 1 0 1 1 1 1 0 このデータから、 a:0が3連続した回数 b:0が3連続した次のデータが0だった回数 c:0が3連続した次のデータが1だった回数 (4連続は含まず) こういったデータを出したいのですが、エクセルでどのような方法がありますでしょうか? (上記の例では、a2回、b1回、c1回) よろしくお願い致します。

  • エクセルで重複するセルの出現回数を数えたい

    エクセル2003である列で重複するセルの出現回数を別の列にカウントするマクロの書き方を教えて下さい. 具体的には以下の通りです. A列が実データで,B列に出現回数をカウントする例. A列   B列 12345   33456 12345 99999 12345 ・ ・ ・ に対してマクロ実行すると, A列   B列 12345  1   33456 1 12345 2 99999 1 12345 3 ・ ・ ・ 大体1000行ほどのデータがあります. よい方法があれば教えていただけると大変ありがたいです.

  • マクロで別シートに数値を移したいのですが・・・

    タイトルにありますとおり、マクロを駆使し、数値を別シートに移したいのですが なにぶんマクロに関してほとんど経験、知識はありません。 毎回手動でコピーを繰り返しているのですが、なんとかマクロで自動コピーできればありがたいです^^; 方法としては、フォームのボタンにマクロを埋め込むような形にしたいと思っております。 以下のようなシートがあったとします。 シート1 (抽出内容”平均”)    A   B   C   D   E   F   G 1  回数 25 2  2   3   4   6   3   2   9   3 1行目に、回数とあります。今回は25回目のデータとします。 2行目に、同一シートの別表から抽出された数値が並びます。 この数値は別表でオートフィルで抽出された数字ですので、毎回変更されるものとします。 今回は仮に”平均”という内容で抽出したデータだとします。 シート1 (抽出内容”合計”)    A   B   C   D   E   F   G 1  回数 25 2  10 10  20  11  15  16  8   3 同じく、25回目、抽出内容”合計”として、オートフィルで抽出した数値です。 シート2     A   B   C   D   E   F   G   H 100 回数 平均(1) 2  3  4  6  3  2  9  101 25  平均(2) 102     平均(3)  103     合計(1)10 10 20 11 15 16 8 104     合計(2) 105     合計(3) 106 107 108 回数 平均(1) 109 26  平均(2) シート2は、シート1で抽出された数値をコピーした表です。 A列は今回の回数、25となっております。この数値はこれより上に24回分の表があり、今回が25回目という意味です。 107行目以降も26、27、28と回数は続いていますが、現状では25が最新とし、108行以降は数値はなく、空白とします。 それぞれ平均、合計共に、シート1で3回抽出し、それぞれ別の数値が入るものとします。 これまでは、シート1で抽出後、手動でコピーし、シート2の該当セルに貼り付ける、という作業でした。 シート1  →   シート2  のコピーにマクロを使用したいのですが 回数が25の場合、シート2でA列を検索し、さらに抽出内容が”平均”1回目だった場合 平均(1)にコピーし、2回目だった場合平均(2)にコピーする、といった具合です。 イメージとしては、シート1に、(1)、(2)、(3) と、それぞれ入ったリストボックスなどがあり [平均][合計] のそれぞれボタンがあり、(1)を選び、平均を押すと100行目の平均(1)に入り 合計を押すと、103行目の合計(1)に数値が入る。と、いうような感じです。 この説明で私の意図するところが伝わるか不安ではありますが、このような場合に使えるマクロの式がございましたら ご教示いただけませんでしょうか^^; 実際の表とは若干ちがいますが、大まかなイメージとしては上に書いてある通りです。

  • EXCEL連続した回数のカウント

    エクセル初心者です。 連続した数字の回数のカウントの仕方が分からず困っております。 A列に0と1が50個並んでいます。 50個の0と1はその並び順が変化します。 1が先頭から5個以上、連続して並んだ時に、その1が連続した回数を特定のセル(例えばB1)に表示するようにしたいのです。 下の例1ではA3から1が8個連続していますので、B1のセルに8が入るようにしたいのです。 並びが変わりますので、先頭のA3が0の例2や、1が5個以上連続しない例3の場合は、B1のセルは空白のままになるようにしたいのです。 1が先頭のA3から5個以上連続した時だけ、その先頭から連続した回数(個数)を数えるようにしたいのです。 どうぞよろしくお願いします。 (例1)   A列   B列   C列・・ 1行 2行  3行 1 4行 1 5行 1 6行 1 7行 1 8行 1 9行 1 10行 1 11行 0 12行 0 ・ (例2)   A列   B列   C列・・ 1行 2行  3行 0 4行 1 5行 1 6行 1 7行 1 8行 1 9行 1 ・ (例3)   A列   B列   C列・・ 1行 2行  3行 1 4行 1 5行 1 6行 1 7行 0 8行 0 ・

  • Excelで連続数字をカウント

    1~3までの数字がA列にランダムに入力されています。 例) A -- 3 2 2 1 2 1 3 2 2 別のシートに、「1」「2」「3」と縦にそれぞれ行を分け、横列にはそれぞれの連続回数(1,2,3,4,5,6,7,8・・・) を入力させたいです。 「1」の1回が⚪︎⚪︎回、2連続が⚪︎⚪︎回、3連続が⚪︎⚪︎回・・・ 「2」の1回が⚪︎⚪︎回、2連続が⚪︎⚪︎回、3連続が⚪︎⚪︎回・・・ 「3」の1回が⚪︎⚪︎回、2連続が⚪︎⚪︎回、3連続が⚪︎⚪︎回・・・

  • エクセルで直近の連続回数を求める

    ある条件の結果、合格を1、不合格を0として記録し、直近で連続合格した回数を求めたいのですが、どのような関数を使うと良いでしょうか。 図では7回目まで終了していて、 【条件A】の場合、直近の結果が0なので連続回数は「0」。(返す値は0か空白) 【条件B】の場合、直近の結果が空白なので連続回数は「0」。(返す値は0か空白) 【条件C】の場合、連続回数は「2」。 各条件の結果には空白のセルも混在し、回数が上がると列を増やす予定で、その右端に連続回数を求める仕様です。出来れば、マクロを使わず関数で求めたいと思っています。 よろしくお願いします。

  • エクセルの関数について教えてください。

    例えば、ルーレットのデータを取るとします。 1000回まわして、A列のシートに黒、赤、緑(ハズレ)のどれが出たのかを記載します。 黒か赤が連続で続いた回数をそれぞれパーセントで表すにはどのように関数を使えば良いですか? 黒or赤が連続で出た回数・・0回 48パーセント                  1回 25パーセント                  2回 10パーセント                  3回 7パーセント                        ・     ・                   ・     ・                   ・     ・ と言う風に・・・

  • エクセルで連続した数値と0が何回出たかをカウントする

    エクセルで連続した数値と0が何回出たかをカウントする エクセルで連続した数値と0が何回出たかをカウントする エクセルでONとOFFを時系列で数値(ON)と0(OFF)で表しており、 ONになった回数を数えたいと思っています。 例)下記の数字がA1~A20に入っている   0 0 0 5 0 0 7 1 8 0 0 2 7 0 0 0 3 5 7 0  数値がON、0がOFFなので、ONになった回数は4回 このような処理をエクセルで行うには どのような方法がありますでしょうか? ご教示いただきたく、よろしくお願いいたします。

専門家に質問してみよう