- ベストアンサー
エクセルの関数で質問です
エクセルで、下記の様に同じ文字やセルを移動する関数はありますでしょうか。 (1)をF列の (1)に (2)を (2)に (3)を (3)に の様な感じで規則的に何十段も続けたいのですが。 A B C D E F G H 1 2(1) (1) 3(2) 4(3) 5(4) (2) 6(5) 7(6) 8(7) (3) 9(8) ・ ・ ・ よろしくお願い致します。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
もう回答が出ていますが、小学校か中学校の級数のことをおもいだして考えればでき。 F列 --A列 2行目ーー2行目 5行目ー 3行目 8行目ー 4行目 11行目ー5行目 ↑ ↑ 1行おき 3行おき ーーー 関係する関数は式を入れるセルの自分自身の行はROW()関数 割った余りはMOD関数 割った商はINT関数 A列の何番目かを取る関数はINDEX関数 この関係を数式にするには F-2を考える。第2行目から始まっているため。 (F-2)/3の商とあまりを考える 其れでF2に =IF(MOD(ROW()-2,3)=0,INDEX($A$1:$A$100,INT((ROW()-2)/3)+2),"") 例データA列とF列 1 1 2 3 4 2 5 6 3 ーーー ただしF列の 第3行目、4行目に何か既にデータがあって、それを壊してはいけない場合は、VBAで処理しないとならない。 または人間がコピー貼り付けを5,8,11行・・にしないとダメ(手間がかかる) CTRLキーを押しつつマウスクリックしてセルを選択して置いて、CTRL+V。
その他の回答 (4)
- KURUMITO
- ベストアンサー率42% (1835/4283)
F1セルには次の式を入力して下方にオートフィルドラッグします。 =IF(ROW(A1)>COUNTA(A:A)*3,"",IF(MOD(ROW(A1),3)=2,INDEX(A:A,ROUNDUP(ROW(A1)/3,0)+1),""))
お礼
いろいろなご回答があって、どれも出来てビックリです。
- mshr1962
- ベストアンサー率39% (7417/18945)
F2=IF(MOD(ROW(),3)=2,INDEX(A:A,(ROW()+1)/3+1),"") または F2=IF(MOD(ROW(),3)=2,INDIRECT("A"&(ROW()+1)/3+1),"") で下方にコピー
お礼
へ~って感じです。 ちゃんと勉強したくなりました。
- silverfd
- ベストアンサー率57% (204/356)
F2にこの式を入力、 =IF(MOD(ROW(),3)=2,INDIRECT("A"&INT(ROW()/3)+2),"") それを下にドラッグしたら同じようになりましたよ。
お礼
これでも出来ました。 いろいろやり方があるんですね。
- keithin
- ベストアンサー率66% (5278/7941)
F2のセルに =INDEX(A:A,ROW(A6)/3) と記入し,F2:F4の3つのセルを選んでおいて下向けにえいやっとオートフィルドラッグします。
お礼
ご回答いただきありがとうございます。 できました! 嬉しいです。
お礼
丁寧なご説明。 どの方も、ありがたいアドバイスで助かります。 ご丁寧にアドバイスいただきましてありがとうございます。 これから、関数の事も少し学びたいと思います。