• ベストアンサー

EXELで複数行を1行にまとめたい

EXELで100行x200列にデータが詰まっています。 これをどのような順番でもいいのですが、 1行(20000セル)にまとめることができますか? よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.3

>A列に縦に並べたいということです。 ⇒一例です。 仮にsheet1!A1:CV100範囲とします。 ■A1→B1→C1・・CV1→A2の行方向順に並び替え  sheet2のB1に=OFFSET(sheet1!$A$1,INT((ROW(A1)-1)/200),MOD(ROW(A1)-1,200))を設定、下方向にコピー ■A1→A100→B1→B100の列方向順に並び替え  sheet2のB1に=OFFSET(Sheet1!$A$1,MOD(ROW(A1)-1,100),INT((ROW(A1)-1)/100))を設定、下方向にコピー B列を選択→コピー→A列選択→形式を選択して貼り付け→値を選択→OK

yoshinobu_09
質問者

お礼

できました! ありがとうございます。

その他の回答 (4)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.5

VBAでやれば下記のように簡単。 セル的にデータが長方形的に集っていると仮定して (質問例では、下記でdは100,rは200となる) 下記テスト例では3行x4列。 下記では列数+2の列に結果を出した。 標準モジュールに Sub test01() d = Range("A65536").End(xlUp).Row r = Range("iv1").End(xlToLeft).Column MsgBox r k = 1 For i = 1 To d For j = 1 To r Cells(k, r + 2) = Cells(i, j) k = k + 1 Next j Next i End Sub 100=>3、200->4の例で A  B   C  D  E  F(結果) 1 2 3 x 4 5 6 y 7 8 9 z 1 2 3 x 4 5 6 y 7 8 9 z --- 関数では持ってくるセルにどのセルから持ってくるか、規則性があるので、計算できて、計算問題にしか過ぎない。 関数を入れるセルの自分の列数を4で割る商と余りに分解すればしまい。ただし行数に対しー1して4で割ったりして、結果に+1するのがコツですが。 =INDEX($A$1:$D$100,INT((ROW()-1)/4)+1,MOD((ROW()-1),4)+1)

  • mitarashi
  • ベストアンサー率59% (574/965)
回答No.4

お勉強のために、実験してみました。 元データは最初のシートの、a1から存在するとします。 Sub test() Dim targetRange As Range, myCell As Range, element As Variant Dim buf() As Variant Dim buf2 As Variant Dim i As Long Set targetRange = Sheets(1).Range("a1").CurrentRegion ReDim buf(1 To targetRange.Cells.Count) i = 1 For Each myCell In targetRange.Cells buf(i) = myCell.Value i = i + 1 Next Sheets(2).Range("a1:a" & targetRange.Cells.Count) = Application.WorksheetFunction.Transpose(buf) buf2 = targetRange i = 1 For Each element In buf2 buf(i) = element i = i + 1 Next Sheets(3).Range("a1:a" & targetRange.Cells.Count) = Application.WorksheetFunction.Transpose(buf) End Sub

  • xls88
  • ベストアンサー率56% (669/1189)
回答No.2

出来ません。 Excel2007で列数が最大16384です。 何故、そうされたいのですか?

  • goo39
  • ベストアンサー率36% (13/36)
回答No.1

列の最大数は256なので無理だと思います。

yoshinobu_09
質問者

補足

1行というのは間違いでした、 A列に縦に並べたいということです。

関連するQ&A