3行ごとに結合されたセルに、1行ごとのセルデータを関数で取り込む #エクセル

仕事でエクセルを使うことがよくある。
Aのシートには、1行ずつにデータが入っている。
ところが、新たに作成したBシートには、3行を結合したセルで表を組んでいる。列によっては結合せずに1行ずつに項目を入力している。
Aシートにあるたくさんの列のデータを、Bシートに貼り付けたい。ところがセルの形が違うので一度には貼り付けができない。
そこで、そのシートのセルを結合していない列を作業列として、まず張り付ける。その隣の列に次のような関数式を入力する。3行ずつ結合したところに関数を入れればいいが、ここでは結合していない状態でしか示せない。プラグインWT-Table Reloadedを十分に使いこなせていない。

=IF(OFFSET($AU$3,(ROW()-3)/3,0)=0,"",OFFSET($AU$3,(ROW()-3)/3,0))0
0
0
=IF(OFFSET($AU$3,(ROW()-3)/3,0)=0,"",OFFSET($AU$3,(ROW()-3)/3,0))さくら祭
昭和の日
0
=IF(OFFSET($AU$3,(ROW()-3)/3,0)=0,"",OFFSET($AU$3,(ROW()-3)/3,0))0
  

 
=IF(OFFSET($AU$3,(ROW()-3)/3,0)=0,"",OFFSET($AU$3,(ROW()-3)/3,0))0
0
0
=IF(OFFSET($AU$3,(ROW()-3)/3,0)=0,"",OFFSET($AU$3,(ROW()-3)/3,0))0
0
美作地区総体 

こうして、3行ごとに結合されたセルに表示される値が次のようになる。

0
0
0
さくら祭
昭和の日
0
0
  

 
さくら祭0
0
0
昭和の日0
0
美作地区総体 

上のテーブルは結合された状態ではないが、エクセルでは結合して行えばよい。結合されたセルに表示された値をコピーして、値の貼り付けを作成表にしていく。たくさんある列も同様にしていけば、作業が楽である。この表は別のシートから数式の値をコピーしたため、入力のないセルが「0」と表示されている。「0」の所は、「””」で何も表示しないことにしている。

VBAを作ればもっと楽なのだろうが、作成は7列の作成だったので、私はこれで、満足だった。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください