• ベストアンサー

オートフィルタで抽出した行にだけ連番を振りたい

500件程度の製品データに対して、製品1、製品2、製品3でフィルタ抽出後、製品1に該当する行にだけ、1~連番を振りたいのですが・・・普通に連番コピーしますと、隠れている製品2・3のセルを含めた状態で、連番が振られてしまいます。 これを回避する操作法はないのでしょうか? 例えば、ツールメニューや書式設定メニューから、「可視セルにのみ連番コピーする」などと、指定しておく事は出来ないのでしょうか?

  • sinjou
  • お礼率62% (803/1283)

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

  • ベストアンサー
  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.6

#2 の回答の補足に対して。 こんにちは。 関数不可というところで、これを付け足すのはやぶへびかもしれませんが、Excel2003 のヘルプより引用しておきます。 # SUBTOTAL 関数では、集計方法の値にかかわらず、フィルタの結果に含まれていない行はすべて無視されます。 これは、旧バージョンでも、同じ仕様です。 # 集計方法として 101 111 の定数を指定すると、[書式] メニューの [行] の [表示しない] コマンドで非表示にされている行は無視されます。リストで表示されている行だけを集計する場合は、これらの定数を使用します。 バージョンによって引数が変わることはありません。定数を、100番台で行うか、通常の1桁で行うか、こういう話は、問題外かもしれませんが、何か初歩的な思い込みによる問題であれば、これで解決するはずです。しかし、もしもExcelのバグのようなものが存在するなら、#3で解決するはずです。マクロの解決もやぶさかではないのですが、それは、逆に物事が複雑になるだけだと思います。

sinjou
質問者

お礼

製品毎に担当者が違うため、マクロや新規シート作成が出来ない状態です。自分の場合、ヘルプやネットで調べる時間があったら、手入力&目視の方が早く済むタイプです。 1万件超えた際は、関数を使わなきゃいけないんでしょうね・・・ 関数を使いこなす方って、どんな業界で新卒時代を過ごされたんでしょうか?私の場合、ここのレスを読むだけで眼がちかちかします。訳解らん状態です。

その他の回答 (5)

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

A列に連番、B列に製品1なら EXCEL2000以前なら A2=SUBTOTAL(3,$B$2:$B2) EXCEL2002以降なら A2=SUBTOTAL(103,$B$2:$B2) 上記以外だと、検索条件のセルを用意して A2=SUMPRODUCT(($B$2:$B2=製品1)*($C$2:$C2=製品2)*($D$2:$D2=製品3)) ※製品1、2、3はセル参照

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.4

訂正します ×>定数のインリメンタト(定数が増加する) ○定数のインクリメント(定数で増加する)

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.3

こんばんは。 >オートフィルタを解除すると、いくらでも連番コピーが実行出来るため 繰り返しますが、連番コピーというのはどういう意味なのか良く分かりません。連続の数字を振るという意味なのでしょうかね。Excelでは、連続データといっていますが。 >関数が使わない方法を希望しています。 関数でなかったら、マクロで作るという意味なのでしょうか? ただ、500個程度でしたら、手作業で、数分以内で終わると思います。実際、あれこれ考えているよりも、私だった手作業でしたほうが速いです。それは、昔、ある方かから、仕事の場合はそのほうがよいと教わりました。 >不可視セルも含めて連番されるため、正しく件数の連番コピーが実行できない状態です。 連番コピーが、連続の数字を振るという意味なら、そんなはずはないと思います。SUBTOTAL関数は、見えているセルしか数を振りません。 オートフィルタでフィルタリングされたものの範囲をコピーして、別のフィルタリングされてないシートやセルに、形式を選択-値-貼り付けで移せば、それで、出来るはずです。 ここで、どなたかの質問が出ていましたが、不可視セルまでコピーされてしまう不具合がExcelにあるなら、最初に列を選択しておいて、編集-ジャンプ-セル選択-可視セルで、コピーし、それをどこかに、値-貼り付ければよいと思います。 自動で連続数字(1,2,3,……)をつけるテクニックという点では、フィルタリングされた状態では、オートフィルで、定数のインリメンタト(定数が増加する)ことが出来るわけではありませんので、不可能であるのは、お分かりになっていと思いますが。

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.2

こんばんは。 >昔は出来た気がするんですがエクセル、XPになってから、不便になってませんか? ?昔とは、Excel2000のことなのでしょうか?ここらは変わっていないはずですが。 それよりも、私は、 >普通に連番コピーしますと、隠れている製品2・3のセルを含めた状態で、連番が振られてしまいます。 その連番コピーとは何を意味するのか良く分かりませんが、 例えば、A1 を項目行としているので、次から文字列の数を勘定をしていくなら、 =SUBTOTAL(3,$A$2:A2) を、すべてのものを開いている状態で、空いた列に、フィルドラッグ・コピーすればよいのではありませんか? それで、オートフィルタで、それぞれを選んだら、それぞれに対して、数が連番で出てくるように思います。もちろん、その上に、降順で並べ替えても、昇順で並べ替えても数字は変わりません。(ただし、Excel2002のオートフィルタにソート機能がなかったように思いますが)

sinjou
質問者

補足

関数が使わない方法を希望しています。 不可視セルも含めて連番されるため、正しく件数の連番コピーが実行できない状態です。 多分、エクセルの仕様なんでしょう。 (オートフィルタを解除すると、いくらでも連番コピーが実行出来るため)

  • kaduno
  • ベストアンサー率21% (130/592)
回答No.1

オートフィルタを使用せずに、以下の方法ではダメでしょうか。 ※等角フォントで見てください。 1.以下のデータがあったとします。 +---+------+------+------+------+-- | | A | B | C | D | +---+------+------+------+------+-- | 1 |製品1|データ|データ| | +---+------+------+------+------+-- | 2 |製品2|データ|データ| | +---+------+------+------+------+-- | 3 |製品2|データ|データ| | +---+------+------+------+------+-- | 4 |製品1|データ|データ| | +---+------+------+------+------+-- | 5 |製品3|データ|データ| | +---+------+------+------+------+-- 2.右側のデータが無い部分(Dより右)に1から連番をふります +---+------+------+------+------+-- | | A | B | C | D | +---+------+------+------+------+-- | 1 |製品1|データ|データ| 1 | +---+------+------+------+------+-- | 2 |製品2|データ|データ| 2 | +---+------+------+------+------+-- | 3 |製品2|データ|データ| 3 | +---+------+------+------+------+-- | 4 |製品1|データ|データ| 4 | +---+------+------+------+------+-- | 5 |製品3|データ|データ| 5 | +---+------+------+------+------+-- 3.A列でソートします +---+------+------+------+------+-- | | A | B | C | D | +---+------+------+------+------+-- | 1 |製品1|データ|データ| 1 | +---+------+------+------+------+-- | 2 |製品1|データ|データ| 4 | +---+------+------+------+------+-- | 3 |製品2|データ|データ| 2 | +---+------+------+------+------+-- | 4 |製品2|データ|データ| 3 | +---+------+------+------+------+-- | 5 |製品3|データ|データ| 5 | +---+------+------+------+------+-- 4.A列の左側に1列追加し、製品1にだけ連番をふります +---+------+------+------+------+------+-- | | A | B | C | D | E | +---+------+------+------+------+------+-- | 1 | 1 |製品1|データ|データ| 1 | +---+------+------+------+------+------+-- | 2 | 2 |製品1|データ|データ| 4 | +---+------+------+------+------+------+-- | 3 | |製品2|データ|データ| 2 | +---+------+------+------+------+------+-- | 4 | |製品2|データ|データ| 3 | +---+------+------+------+------+------+-- | 5 | |製品3|データ|データ| 5 | +---+------+------+------+------+------+-- 5.(2.)で連番をふったD列(現在はE列)でソートして元に戻してあげます +---+------+------+------+------+------+-- | | A | B | C | D | E | +---+------+------+------+------+------+-- | 1 | 1 |製品1|データ|データ| 1 | +---+------+------+------+------+------+-- | 2 | |製品2|データ|データ| 2 | +---+------+------+------+------+------+-- | 3 | |製品2|データ|データ| 3 | +---+------+------+------+------+------+-- | 4 | 2 |製品1|データ|データ| 4 | +---+------+------+------+------+------+-- | 5 | |製品3|データ|データ| 5 | +---+------+------+------+------+------+-- 6.最後にE列を消して完了。製品1の箇所だけに連番がふられることになります。

sinjou
質問者

お礼

回答下さった皆様、ありがとうございました!! 夜遅くに迅速にレス頂けたので、本当に助かりました・・・感涙

sinjou
質問者

補足

1列しか使用せず、 製品1だけソートした際に、1~連番 製品2だけソートした際にも、1~連番 製品3だけソートした際にも、1~連番 なんて夢なんでしょうか・・・ 今、自分の家計簿でも挑戦してるんですが・・・汗 出来ません!! 昔は出来た気がするんですがエクセル、XPになってから、不便になってませんか? 回答ありがとうございました。

関連するQ&A

  • Excelでフィルタをかけた状態でオートフィルタで連番を振りたい

    Excelでオートフィルタを設定し、抽出したデータがあります。(ですので表示範囲があります)その抽出したデータのある列に連番を振りたいのですが、非表示ににゅうりょくされてしまうためうまくできません。 またオートフィルタで抽出した範囲の可視セルをコピーすることはできても、再度貼り付けることもうまくできません。 何か方法はないでしょうか。

  • オートフィルタ抽出データに連番をつけるマクロ

    オートフィルタで抽出したデータに連番をふりたいと思っています。このサイトで調べた結果、オートフィルタをかけてのオートフィルでの連番入力はできないと知りました。 現在しようとしているのは   A  B  C 1 クラス NO 氏名   2 1    ○△ 3 2    □× 4 1    ★♪ というデータがあり、項目にオートフィルタをかけている状態です。クラスを抽出した場合にそのクラスでの通し番号(連番)を付けたいのです。SUBTOTAL関数だと、連番が表示されるのはオートフィルタで抽出している間だけです。SUBTOTALでつけられた連番を、オートフィルタを解除しても残しておくにはどうしたらよいでしょうか。やはりコピー&ペーストしかないのでしょうか?似たような質問が多々ありますが、コピー&ペースト以外の方法をご存知の方、どうか教えて下さい。

  • エクセルでオートフィルターで抽出した文字列に連番

    エクセルで、オートフィルターで抽出した文字列に連番をつけたく思っております。 通常、 apple1 apple2 apple3 ・ ・ と連番をふりたいときには、apple1とapple2を入力し、その2つのセルを選択状態にして、 セルの右下を下方にのばすかダブルクリックして連番を作成しています。 今回は apple pine apple apple apple green apple ・ ・ と言った具合に、既に入力された行が5000ほどあります。 このうち、「apple」だけが入力されたセルを「apple1」「apple2」・・・というように 変更したいと考えています。つまり、こんな感じが求める最終型です。 apple1 pine apple apple2 apple3 green apple ・ ・ 検索・置換だと、「pine apple」のappleや、「green apple」のappleも置き換わってしまうので、使えません。 フィルターでappleのみの行を表示させ、一番上に書いた時のようにapple1、apple2をて入力して セルの右下を引っ張ると、フィルターで見えなくなっているセルまでapple1、apple2、apple3と 連番になってしまいます。 なんとか、フィルターで抽出した「apple」だけのセルに対して連番を付加できないでしょうか?

  • エクセルでフィルターで抽出した複数行をコピーする

    エクセルで空白セル以外をフィルターで抽出した複数行をコピーして隣の列に貼り付けようとしています。2007では貼り付けると先頭行が変わり(見えてない所に張り付いている)、もとに戻す矢印ボタンで戻すと選択の破線が全体に変わるのでもう一度貼り付けると出来ます。しかし、2010で同じことをしたらできませんでした。ジャンプで可視セルにすると、そのコマンドは複数の選択範囲に対して実行できませんと言われてしまいます。何かいい方法はないでしょうか?

  • Openofficeのオートフィルタ使い方について

    Openoffice3.2を使っています。 ■質問 オートフィルタを掛けて条件で 抽出した行の値をフィルハンドルドラッグでデータをコピーしたところ フィルタをすべてに戻したところ フィルタ抽出されていないはずの(表示されていなかった)行にまで データがコピーされてしまいます。 急ぎの処理が入りうまく使えず困っています。 どうかご存知の方ご教授お願いします。 ■関係あるかどうか解りませんが、フィルタを使う前にした操作です。 フィルタを使おうとしたところ1行使えなかったので データ→範囲の指定から、データの範囲をデータのある全列を指定した。

  • エクセル2002 オートフィルタで抽出が上手くいきません。とても困ってます

    エクセルを使い、日記をつけたり読書ノートをつけたりと簡単なデータベースとして使っています。 何か検索したいときはオートフィルタを使い「~を含む」で単語検索すれば十分機能しています。 しかし、最近、抽出されるべき行(該当する単語があるセル)が抽出されていないことがあるに気づきました。 傾向としては セルの中に該当する単語(抽出したい単語)があっても、それが長文の後半にあるとヒットしません。 長文といっても、セルの中に500~800字程度です。さらに250字程度以降の単語は抽出しない傾向にあります。←これはいろいろな作業を繰り返した結果から割り出しました。 何か設定上の制限でもかかっているのでしょうか。大変困っています。 ひとつのセル内の文章前半は抽出して後半は抽出しないなんてことはありますか? 解決方法を教えて下さい。お願いします。

  • フィルタオプション 抽出結果のコピー

    フィルタオプションで、抽出後、抽出結果をコピーし、他のセルに貼り付けていくことができますが、データ集計で、+を押し、階層化したものをコピーしようとすると全てのデータがコピーされてしまいます。 データ集計で、階層化されたものは、「可視セル」で、選択し、コピーしなくては、いけないのに対してフィルタオプションの抽出がそのままコピーできる理由をどなたか教えていただけないでしょうか。 初歩的な質問かと思いますが、よろしくお願いします。

  • エクセルのオートフィルターの使い方

    エクセル2010で1000行程度の表からオートフィルターで必要な情報を抽出しているのですが、該当する条件を▼セルで探すのも面倒なので、所定のセルに条件を入力したらオートフィルターで抽出できる方法があれば教えてください。

  • オートフィルタで抽出されたデータをうまく印刷したい

    Excel2003で作ったA1:AU1666にデータが入っている表があります。 オートフィルタで、ある項目が○のものだけを抽出し、その部分だけ印刷したいのですが、 印刷しようとすると細かく改ページがされてしまします。 青い線を動かそうとしても動かせません。 そこで、可視セルだけをコピーして他のシートにでも貼り付けようとしたのですが、 「結合されたセルの一部を変更することが出来ません」となりコピーできません。 結合を解除しようとも思ったのですが、結合されている部分とされていない部分がたくさんあり、一気に解除ができません。 オートフィルタを使った表の見えている部分だけをうまくページに収めることは出来ないのでしょうか?

  • オートフィルターで一つずつ抽出したものを....

    Bの行にオートフィルターをかけ、列の11で一つずつ抽出したものをコピーし、新規シートに貼り付けたいのですがどうやれば良いですか? 見出し『商品』として抽出されるもの全て新規シートにそれぞれコピーしたいです。 VBAの場合、初心者ですのでわかりやすくお願いします。 わかる方には面倒な事ばかりで申し訳ありませんが宜しくお願いします。 エクセル2010です。

専門家に質問してみよう