• 締切済み

excel  複数行をまとめる 一括変換

データ整理で困っております。 皆様のお知恵を拝借したくお願いいたします。 EXCELシートで次のようなデータがあります。   A B C D E F G H I J K 1 1 あ い 2  う え 3  お か 4  き く 5  け こ 列はA,B,Cのみにデータがあります。 行は1~5にあります。 A1は連番で数字があります。 この5行のデータが400近くあります。(約2,000行) このシートが10ほど存在します。 これらのシートを次のように1行に変換したいのです。   A B C D E F G H I J K 1 1 あ い う え お か き く け こ 2  3  4  5  行2~5はブランクのままでもかまいません。 何卒よろしくお願いいたします。

みんなの回答

  • turuzou
  • ベストアンサー率33% (15/45)
回答No.3

No.1です 下記の様に変更すれば、良いですよ。 D1へ =OFFSET(Sheet1!$A$2,(ROW(A1)-1)*5+INT(COLUMN(B1)/2)-1,MOD(COLUMN(B1),2)) ↓ D1へ =OFFSET(Sheet1!$B$2,(ROW(A1)-1)*5+INT(COLUMN(B1)/2)-1,MOD(COLUMN(B1),2)) Excelのヘルプで、それぞれの関数を確認してみて下さい。 (A、B、C列の数式はNo.1のままでOKです)

crvkiss
質問者

お礼

大変参考になりました。 誠にありがとうございました。

回答No.2

すべてのシートの分を1行にしたいのか、シートごとにやりたいのか等やりたいことがまだピンときてませんが、 Excel2003以前のExcelの場合、1行あたり256列しかないと思いますが大丈夫ですか?

crvkiss
質問者

お礼

早速のご回答ありがとうございます。仕事で帰宅が今になり、お礼遅くなりまことに申し訳ありません。 Excelのヴァージョンですが自宅が2003、職場が2000です。 今回の場合5行単位で意見のデータが各セルに2列ずつ存在しています。ですので今回はA列からK列までおさまりそうです。 ご指摘のように行が増えればこのような場合も考えなければならないのですね。参考になりました。ありがとうございました。

  • turuzou
  • ベストアンサー率33% (15/45)
回答No.1

こんなのは如何でしょうか? 別Sheetに表示させるとして、例えば元データがSheet1にあるとして 表示させたいSheetのA1(表示させたい範囲の左上のセル)へ =OFFSET(Sheet1!$A$1,(ROW(A1)-1)*5,COLUMN(A1)-1) を、オートフィルで C1 まで D1へ =OFFSET(Sheet1!$A$2,(ROW(A1)-1)*5+INT(COLUMN(B1)/2)-1,MOD(COLUMN(B1),2)) を、オートフィルで、K1 まで、 A1:K1を選択して、オートフィルで必要分下へ 以上で、空白行がない状態で表示されます。

crvkiss
質問者

お礼

早速のご回答ありがとうございます。仕事で帰宅が今になり、お礼遅くなりまことに申し訳ありません。 なるほどこのようなやり方があったのですね。勉強になりました。 ありがとうございました。

crvkiss
質問者

補足

今日仕事場でその場しのぎですが解決方法を思いついたので報告しておきます。質問ではわかりにくくなってしまっていますが、A列は1行のみ連番があり、B列、C列は1行から5行目までデータが入っています。 この条件下でといくことでご容赦ください。 (1)まずB,C列の内容をすべてコピーしD,E列にコピーした内容を挿入  します。 (2)D,E列の1行目のみ削除しその後上に詰めさせます。 (3)同じようにB,C列の内容をコピーしF,G列、H,I列、J,K列にコピー  します。 (4)F,G列の1から2行目、H,I列の1から3行目、J,K列の1から4行目  をそれぞれ削除した後上に詰めます。 (5)連番が入っている行はB,C列の内容が1行づつずれていますので  目的のデータができています。 (6)全体をデータの並べ替えでA列の内容を昇順に並べ替ます。 (7)A列にデータがないもをすべて削除します。 これで400行のデータが取れました。 以上力技ですが何とかなるものでした。 こんなんで解決する問題であったのに皆様にご迷惑をおかけしました。  

関連するQ&A