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

  A  B
1 a1
2 a2
3 a3
4 a4
5 a5
・・・・・
のような表において、
Bの列にB1=a1、B2=a3、B3=a5
のような2個飛ばしのデータを連続で抜き取る方法はありますでしょうか。
A列が3000行ほどあり手打ち入力がしんどいです。
OFFSET関数を使ってもうまく連続コピーされません。
どなたかご教授願います。

A 回答 (4件)

OFFSET関数利用でもよいが、INDEX関数のほうが普通かな。


=INDEX($A$1:$A$100,(ROW()-1)*2+1,1)
100はデータ数が多い場合はデータ行数に変える。
例データ A1:A5
a1
a2
a3
a4
a5
B1に上記。データ数の半数の行数を複写。
結果
a1
a3
a5
    • good
    • 14
この回答へのお礼

これもすごい!
またまたできました。
INDEX関数初めて使用しましたが便利ですね。
イメージし易い関数だと思いました。
ROW関数をからめた数式は今後も役に立つと思います。
ありがとうございました。

お礼日時:2009/07/30 13:20

追記。



(ROW()-1)*2
の部分を
(ROW()-1)*3
とか
(ROW()-1)*4
とかにすれば「2行飛ばし」「3行飛ばし」も可能。

A$1
の部分が「基準点」なので
  A B
1 (略)
  (略)
6 (略)
7 a1 a1
8 a2 a3
8 a3 a5
8 a4 a7
8 a5 a9
のように7行目から始めたいなら
A$1

A$7
に変えればよい。
    • good
    • 7
この回答へのお礼

これもすごい!
見事にできました。
行数に関数が入れられるとは。。。
私には到底思いつかない手法でした。
ありがとうございました。

お礼日時:2009/07/30 13:11

=OFFSET(A$1,(ROW()-1)*2,0,1,1)


をB1セルに入れて、B1セルを「セルのコピー」で下方向に1600行辺りまでコピー
    • good
    • 10
この回答へのお礼

返答遅れて申し訳ありません。
今まで気がつかすにいました。
ありがとうございました。

お礼日時:2011/02/22 16:03

B1に、#A1


B2に、#A3
B1とB2を選択
選択枠の右下角の■(フィルハンドル)を下方に必要行までドラッグ
セル範囲選択状態のまま、編集メニューの「置換」で
#

=
に「すべて置換」
    • good
    • 22
この回答へのお礼

すごい!
こんな発想があったなんて。
おかげで一発解決しました。
ありがとうございました。

お礼日時:2009/07/30 12:00

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

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A