プロが教える店舗&オフィスのセキュリティ対策術

Excel データから別のシートに90以下の行を自動抽出したいのですがなかなかうまくいきません知ってる方いませんか?

A 回答 (4件)

作業列案です


C1セルに0
C2セルに =COUNTIF($B$1:B2,"<=90")
フィルハンドルダブルクリック

E2セル
=IF(MAX(C:C)<=ROW(E2)-2,"",ROW(E2)-1)
下へオートフィル

F2セル
=IF($E2="","",INDEX(A:A,MATCH($E2-1,$C:$C)+1))
右へ下へオートフィル

冗長なところはありますが、配列数式より計算速度は速いです
「Excel データから別のシートに90以」の回答画像4
    • good
    • 1
この回答へのお礼

ありがとう

ありがとうございます助かりました

お礼日時:2017/07/01 00:14

>簡単な関数のネスト方法ならわかります



ふむ。

例えばSheet1のA1からE30までデータがあるとして、1行目は項目名
C列のデータで90以下を抜出し。

そしてSheet2も同じ項目名があるとしてA2からデータを入れるとすると

Sheet2のA2に

=IF(COUNTIF(Sheet1!$C$2:$C$30,"<=90")<ROW(A1),"",INDEX(Sheet1!$A$2:$E$30,SMALL(IF(Sheet1!$C$2:$C$30<=90,ROW($1:$29)),ROW(A1)),COLUMN(A1)))

と入れ、Ctrl+Shift+Enterで確定。
後は範囲にコピー。

という感じになります。
    • good
    • 1
この回答へのお礼

やってみます

ありがとうございます

お礼日時:2017/07/01 00:15

>自動抽出



これがどの程度自動なのかによるんですが、
・マクロでやる
・式を入れる
だと、まぁ自動っちゃ自動ですね。マクロは私はさっぱりなので式でやるとすると、元の表のレイアウトなどがわからないと式はできません。
また、結構長い式になりますしあまりExcelにお詳しくないようなので、もらった式を理解するのも大変だと思います。

お勧めはフィルタオプションですね。
抽出のタイミングごとに少し手動が入りますが、何をやっているかがわかりやすいと思います。

https://kokodane.com/2013_waza_053.htm

また、ある程度なれたらその作業をマクロ記録で自動化することもできます。

それと、質問の際にはバージョンは書いてください。
    • good
    • 1
この回答へのお礼

コメントありがとうございます関数での自動表示ですExcel2010です シート1にデータが入っていてそこから90日以内のデータを含む行をシート2に抽出したいのですがなかなかで 簡単な関数のネスト方法ならわかります

お礼日時:2017/06/29 14:51

>自動抽出


抽出=通常は必要なデーターを検索して・・・・。
自動=データーが追加されてもその都度自動的に・・・。
抽出でなく、単なる転写なら、転写したいセルをポイントして、=・・・そのまま転写するセルクリック。
改めてそのセルを連続コピーすれば、相対参照で全行のデーターの転写可能です。
=だけでなく、90以下の行を範囲指定したうえで、抽出関数を入力、以下セルの連続コピー、ただし範囲は相対参照ではなく絶対参照($)をつける必要があります、(シートB、$A$1...$E$90).
    • good
    • 1

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