• ベストアンサー

横列データを縦列データで入力

スペースで区切られた500個ほどの横列データがあるのですが、これを縦列データで入力したいんです。 横列を縦列に置換するために、横列のデータを「区切り位置」でスペースごとに区切り、セルごとに分割しようとすると、範囲を超えているため表示できませんと警告されてしまいます。 解決策があれば教えてください。

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

  • ベストアンサー
  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.4

500個分のテキストの空白は全て区切り文字と見なして良いですか? そうであれば元のファイルをエディタで読み込んで「空白」を「改行コード」に置換してファイルに書き出し、それをエクセルに読み込めば良いのではないでしょうか。 テキストエディタでなくてもワードでもできます ワードで元のファイルを開き、Ctrl+Hで「検索と置換」を開きます。 「検索する文字列」に「空白」を入れ、「置換後の文字列」には ^l を入力します(改行を表す特殊文字) 「全て置換」で各成分値が行単位に分解できますから、「ファイル」→「名前をつけて保存」で「ファイルの種類」を「*.txt(書式なしテキスト)」で保存します

yuta1410
質問者

お礼

当初、考えていた方法に近いです! なるほど、ありがとうございました!!

その他の回答 (5)

noname#204879
noname#204879
回答No.6

[ANo.2この回答への補足]に対するコメント、 半角スペース1個で区切られた500個ほどの横列データ(当該スペースを含んで最長32,767文字)が Sheet1 のセル A1 にあると仮定します。 1.Sheet2 の1行目は空白行のままとする。 2.セル A2、B2 にそれぞれ次式を入力   A2: =FIND(" ",Sheet1!A$1,A1+1)   B2: =MID(Sheet1!A$1,A1+1,A2-A1-1) 3.範囲 A2:B2 を選択して、[コピー]を実行 4.[名前ボックス]内に表示されている A2 を A550 と上書きした後、   Shiftキーを抑えたままで Enterキーをパシーッ 5.Ctrl+V を「エイヤッ!」と叩き付け

yuta1410
質問者

お礼

今、試してみました。 こんな方法があるんですね! 参考になりました!!

回答No.5

<ツールのやま>セル値の区切り文字で分割 http://www.vector.co.jp/soft/win95/business/se429091.html <ツールのやま>セル値の区切り文字数で分割 http://www.vector.co.jp/soft/win95/business/se430091.html と言うソフトがあります。 書込み方向を→↓で指定が出来ますね。

yuta1410
質問者

補足

参考にさせていただきます。 ありがとうございました。

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

(1)周りにあれば、エクセル2007で、データー区切り位置を行って見る。 (2)後はVBAしかないように思う。 下記VBAを実行する。 Openの後の””の中のファイル名は自分の場合に合わせて変える。 ツールーマクローVBEでVBE画面になる。 メニューの挿入ー標準モジュールの画面にコピペする。 実行(F5キー) 他のデータでしかテストできてないので、不安ですが、エラーが 起こればあきらめてください。 Sub test01() On Error GoTo err1 Open "C:\Documents and Settings\XXX\My Documents\test02.txt" For Input As #1 k = 1 While Not EOF(1) Line Input #1, a 'MsgBox a 'MsgBox Len(a) s = 1 p01: p = InStr(s, a, " ") If p = 0 Then p = Len(a) + 1 x = Mid(a, s, p - s) Cells(k, 1) = x k = k + 1 s = p + 1 If p < Len(a) Then GoTo p01 Wend Close #1 MsgBox "END" Exit Sub err1: MsgBox s & "=" & p Close #1 End Sub

yuta1410
質問者

お礼

こういった方法もあるんですね。 私には少し難しくてうまく活用できませんでした…。 勉強しなおします。

noname#204879
noname#204879
回答No.2

「スペースで区切られた500個ほどの横列データ」のスペースは、半角スペース1個ですか?

yuta1410
質問者

補足

半角スペース一個ではありませんが、置換でスペースの個数を一個には変更可です。

  • STICKY2006
  • ベストアンサー率29% (1536/5269)
回答No.1

>>範囲を超えているため表示できませんと 横列が256列までしかない(はず)なので領域オーバーですよね。 テキストエディタとかにでも一度貼り付けて、250個×2回でやるのはダメなんでしょうか?

yuta1410
質問者

補足

一方法として、参考にさせていただきます。 ありがとうございました。

関連するQ&A

専門家に質問してみよう