質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%

Q&A

解決済

3回答

17250閲覧

EXCELで二行文のセルをオートフィルしたい

ryo_se

総合スコア68

0グッド

0クリップ

投稿2015/07/24 02:39

お世話になっております。

EXCELのオートフィルで下記のような動きを実現させたいです。
1,2行目が元になるセルで、3行目以降がオートフィルしたセルです。

1行目 =A1
2行目 =D1
3行目 =A2
4行目 =D2
5行目 =A3
6行目 =D3

1行目と2行目を選択してオートフィルしただけでは、
参照セルの数値が2ずつ増加してしまいます。

解決方法のご教授お願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

文字列で参照式をフィルしてからINDIRECT関数使うってのはあかんですかね?

投稿2015/07/24 05:18

murat-to

総合スコア32

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

1行目 =indirect("A"&ROUND(row()/2))
2行目 =indirect("D"&ROUND(row()/2))

オートフィル効果は得られなくても、結果が得られれば良いなら、1,2行目には上記のように書いてみてはどうでしょうか?
1行目はExcel上の奇数行かつA列のデータの1つめと同じ行にある必要があります。
※行数を2で割って結果を切り上げているので、開始が奇数行で無い場合は修正が必要です

投稿2015/07/24 05:17

編集2015/07/24 05:21
hirohiro

総合スコア2068

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

こんにちは

A1セル="A1"
A2セル="D1"

をそれぞれ入力して、オートフィルさせてみたらこうなりました

イメージ説明

Excel 2007 と 2013 で試しましたが同じ結果でした

こういうことではなくて?

[追記]
これがうまくいかないので困ってる、ということでしたら、ひとつの解決方法として
A3セル  ="A" & INT(ROW()/2)+1
A4セル  ="D" & INT(ROW()/2)
という式を入れて、A3とA4を選択してオートフィル(コピー)させると、同じような結果が得られます

投稿2015/07/24 02:55

編集2015/07/24 03:08
takito

総合スコア3111

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ryo_se

2015/07/24 03:01

説明不足でした こちらは普通の文字列で行っておりますが、私が行っているのは数式におけるセルの参照の場合です。 例 =$A1 =$C1
takito

2015/07/24 03:10

あ、なるほどです それだと追記した別回答もだめですね 失礼しました
takito

2015/07/24 03:31 編集

B1 と C1 を先頭に、それぞれ列方向にデータが入っていて A1セルはB1を参照 A2セルはC1を参照 以降、2行ごとのセットでB列とC列のデータを順次参照した1次元のリストをつくりたい ということでしたら A1セル "=OFFSET($B$1,ROW()/2,0)" A2セル "=OFFSET($C$1,ROW()/2-1,0) 以上の式を入れA1とA2を選択して下方向へオートフィルすれば、結果的に A1 =B1 A2 =C1 A3 =B2 A4 =C2 A5 =B3 A6 =C3 とうい参照の結果が得られます ・・・ということでいかがでしょうか?
ryo_se

2015/07/24 04:28

認識としてはそれであっています。 ですが提示していただいた式を入力しても、データが飛び飛びになってしまいます。 ちなみに関数を入力するシートと、データを参照するシートは別シートです。 ROW関数に行を指定したりもしてみましたがだめでした。 例:dataシートの3行目から参照 =OFFSET(data!B3,ROW(data!B3)/2,0) =OFFSET(data!C3,ROW(data!C3)/2-1,0)
takito

2015/07/24 05:08 編集

OFFSET関数は、指定したセルを基準にどれくらい移動したセルを参照するか、という仕組みなので、基準となるセルは変化させないようにします B3 と C3 の参照を $B$3 と $C$3 と書き換えたらいかがでしょうか? =OFFSET(data!$B$3,ROW()/2,0) =OFFSET(data!$C$3,ROW()/2-1,0)
ryo_se

2015/07/24 05:10

上記を試しましたがだめでした。 $が全ての参照についているので、同じ参照が繰り返されるようです。 下記全て試しましたがいずれも望む結果は得られませんでした。 ① =OFFSET(data!$B$3,ROW(data!$B$3)/2,0) =OFFSET(data!$C$3,ROW(data!$C$3)/2-1,0) ② =OFFSET(data!$B3,ROW(data!$B3)/2,0) =OFFSET(data!$C3,ROW(data!$C3)/2-1,0) ③ =OFFSET(data!$B3,ROW(data!$B$3)/2,0) =OFFSET(data!$C3,ROW(data!$C$3)/2-1,0) ④ =OFFSET(data!$B$3,ROW(data!$B3)/2,0) =OFFSET(data!$C$3,ROW(data!$C3)/2-1,0)
takito

2015/07/24 05:25

ごめんなさい、気づいてすぐ訂正したのですが =OFFSET(data!$B$3,ROW(data!$B$3)/2,0) =OFFSET(data!$C$3,ROW(data!$C$3)/2-1,0) row 関数の中身を消してください 行数取得が固定になるので、OFFSET関数の効果が得られませんので
ryo_se

2015/07/24 05:52

できました! 正確にはB列とC列で参照行をずらす必要があるようです =OFFSET(data!$B$3,ROW()/2,0) =OFFSET(data!$C$4,ROW()/2-1,0) 丁寧に教えていただきありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問