エクセルのオートフィルについての質問です。

Sheet1にあるデータをSheet2に並び替える作業をしています。

Sheet2のA1-A2に、

=Sheet1!A12
=Sheet1!A17

このように入力して、オートフィルでコピーします。
すると、

=Sheet1!A12
=Sheet1!A17
=Sheet1!A14
=Sheet1!A19

となります。

望むべき結果は、5個飛びでのコピーで、

=Sheet1!A12
=Sheet1!A17
=Sheet1!A22
=Sheet1!A27

こうです。

正しいやり方、参考になるWEBページをどなたか教えてもらえると助かります。

回答の条件
  • 1人5回まで
  • 登録:2007/12/10 22:52:10
  • 終了:2007/12/17 21:50:02

回答(2件)

id:kaiton No.1

kaiton回答回数260ベストアンサー獲得回数342007/12/10 23:22:11

ポイント60pt

Sheet2のA1 =INDIRECT("Sheet1!A"&(ROW()*5+7))

でどうでしょうか?


indirect関数は

http://pc.nikkeibp.co.jp/pc21/tech/excel36/27/index.shtml

を見てください。

id:airplant No.2

airplant回答回数220ベストアンサー獲得回数492007/12/11 23:35:19

ポイント10pt

セル参照の場合は、相対位置でのコピーになりますので、オートフィルは意図した通りにならないことがあります。答えを入れる場所が2行下がったことを考慮してしまうのです。

うまくいっていないようでも、Excelプログラムでは「うまくいった」とみなして動いています(「それは仕様です」笑)。

そこがまだ人間とは離れている部分ですねぇ。

→ 「ツール→オプション→全般タブ→R1C1参照を使用する」をチェックすれば、Excelがどうしてこうやったかが見られます。

=Sheet1!R[11]C

=Sheet1!R[15]C

=Sheet1!R[11]C

=Sheet1!R[15]C

うまく行くケースと、人には理解できない振る舞いをするケースを挙げてみました。

例は横方向に記載していますが、実際は縦方向と思ってください(横でもオートフィルが効きますけど)。

●うまく行くケース

数値2個

 数値

 数値

 例. 12, 17

文字+数値の2個

 文字+数値

 文字+数値

 例. abc12, abc17


●うまく行かないケース

数値3個以上(不連続な数値。比例時はうまく行く)

 数値

 数値

 数値

  :

 例. 12, 17, 12

 例. 12, 17, 12, 17

 詳細は、下記を参照ください。

http://q.hatena.ne.jp/1145512253


シート参照

 シート参照

 シート参照

 例. Sheet1!A12, Sheet1!A17

 例. A12, A17


今回のように代入場所と元のセルの間に関連がない場合、前の方の回答のようにindirectを利用するのがいいと思います。

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません