MyNoteBook weblog

自作ソフトウェアや気になるものについて書いています

Excelで文字列を串刺し(?)にする(その2)

その1からのつづき。

なるべく汎用的に、できれは、マクロは使わずにやるには、どうしたらよいか。

いろいろ調べたら、INDIRECT関数とCELL関数が使えそうだということが分かった。

■INDIRECT関数とは
本来なら文字列として入力されているデータを、計算式の中で使える「セルのアドレス」に変換する。

■CELL関数とは
参照するセルの書式や位置、内容などを調べる

(1)それぞれのデータは次のようになっている。
シート名を校名と同じにしてあるところがポイント

シート名:□中
  A  B
1 校名 回答
2 □中 ほげほげ
3 △中
4 ○中

シート名:△中
  A  B
1 校名 回答
2 □中
3 △中 ごにょごにょ
4 ○中

シート名:○中
  A  B
1 校名 回答
2 □中
3 △中
4 ○中 やれやれ

(2)集計シートを作る。
シート名:集計
  A  B
1 校名 回答
2 □中
3 △中
4 ○中

(3)セルB2に次の式を入力する。
=INDIRECT(A2&"!"&CELL("address",B2))

(4)B2の数式を、B3、B4へコピーする。
B3:=INDIRECT(A3&"!"&CELL("address",B3))
B4:=INDIRECT(A4&"!"&CELL("address",B4))
となっているはず。

(5)無事に3つのシートのデータがまとまる。
シート名:集計
  A  B
1 校名 回答
2 □中 ほげほげ
3 △中 ごにょごにょ
4 ○中 やれやれ
ソフトウエア | - | trackbacks (0)

Trackbacks

■同一カテゴリー記事(最新5)
CATEGORIES
NEW ENTRIES
RECOMMEND
【いちばんやさしい教える技術】…
いちばんやさしい教える技術

Book (発売日:2012-04-16)
【いままでのA面、B面ですと!?(通常盤)】…
いままでのA面、B面ですと!?(通常盤)

Music (発売日:2009-11-25)
RECENT TRACKBACK
ARCHIVES
PROFILE
OTHER