アプリ版:「スタンプのみでお礼する」機能のリリースについて

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

A 回答 (6件)

#2 の回答の補足に対して。


こんにちは。

関数不可というところで、これを付け足すのはやぶへびかもしれませんが、Excel2003 のヘルプより引用しておきます。

# SUBTOTAL 関数では、集計方法の値にかかわらず、フィルタの結果に含まれていない行はすべて無視されます。

これは、旧バージョンでも、同じ仕様です。

# 集計方法として 101 111 の定数を指定すると、[書式] メニューの [行] の [表示しない] コマンドで非表示にされている行は無視されます。リストで表示されている行だけを集計する場合は、これらの定数を使用します。

バージョンによって引数が変わることはありません。定数を、100番台で行うか、通常の1桁で行うか、こういう話は、問題外かもしれませんが、何か初歩的な思い込みによる問題であれば、これで解決するはずです。しかし、もしもExcelのバグのようなものが存在するなら、#3で解決するはずです。マクロの解決もやぶさかではないのですが、それは、逆に物事が複雑になるだけだと思います。
    • good
    • 0
この回答へのお礼

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

お礼日時:2006/09/27 21:28

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はセル参照
    • good
    • 0

訂正します


×>定数のインリメンタト(定数が増加する)

○定数のインクリメント(定数で増加する)
    • good
    • 0

こんばんは。



>オートフィルタを解除すると、いくらでも連番コピーが実行出来るため

繰り返しますが、連番コピーというのはどういう意味なのか良く分かりません。連続の数字を振るという意味なのでしょうかね。Excelでは、連続データといっていますが。

>関数が使わない方法を希望しています。

関数でなかったら、マクロで作るという意味なのでしょうか?

ただ、500個程度でしたら、手作業で、数分以内で終わると思います。実際、あれこれ考えているよりも、私だった手作業でしたほうが速いです。それは、昔、ある方かから、仕事の場合はそのほうがよいと教わりました。

>不可視セルも含めて連番されるため、正しく件数の連番コピーが実行できない状態です。

連番コピーが、連続の数字を振るという意味なら、そんなはずはないと思います。SUBTOTAL関数は、見えているセルしか数を振りません。

オートフィルタでフィルタリングされたものの範囲をコピーして、別のフィルタリングされてないシートやセルに、形式を選択-値-貼り付けで移せば、それで、出来るはずです。

ここで、どなたかの質問が出ていましたが、不可視セルまでコピーされてしまう不具合がExcelにあるなら、最初に列を選択しておいて、編集-ジャンプ-セル選択-可視セルで、コピーし、それをどこかに、値-貼り付ければよいと思います。

自動で連続数字(1,2,3,……)をつけるテクニックという点では、フィルタリングされた状態では、オートフィルで、定数のインリメンタト(定数が増加する)ことが出来るわけではありませんので、不可能であるのは、お分かりになっていと思いますが。
    • good
    • 0

こんばんは。



>昔は出来た気がするんですがエクセル、XPになってから、不便になってませんか?

?昔とは、Excel2000のことなのでしょうか?ここらは変わっていないはずですが。

それよりも、私は、

>普通に連番コピーしますと、隠れている製品2・3のセルを含めた状態で、連番が振られてしまいます。

その連番コピーとは何を意味するのか良く分かりませんが、

例えば、A1 を項目行としているので、次から文字列の数を勘定をしていくなら、

=SUBTOTAL(3,$A$2:A2)

を、すべてのものを開いている状態で、空いた列に、フィルドラッグ・コピーすればよいのではありませんか?

それで、オートフィルタで、それぞれを選んだら、それぞれに対して、数が連番で出てくるように思います。もちろん、その上に、降順で並べ替えても、昇順で並べ替えても数字は変わりません。(ただし、Excel2002のオートフィルタにソート機能がなかったように思いますが)

この回答への補足

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

補足日時:2006/09/27 00:28
    • good
    • 0

オートフィルタを使用せずに、以下の方法ではダメでしょうか。



※等角フォントで見てください。

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の箇所だけに連番がふられることになります。

この回答への補足

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

補足日時:2006/09/26 22:12
    • good
    • 0
この回答へのお礼

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

お礼日時:2006/09/27 21:31

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!