• 締切済み

【エクセル】区切り文字が含まれるデータを縦に展開する方法

エクセルで、区切り文字の含まれているデータを分ける時、「データ>区切り位置」で、横(行方向)へ展開することは出来ますが、縦(列方向)に展開させる方法があったら、教えてください。

みんなの回答

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

昨日の他の同様質問に対し答えたものですが、VBAでのコードを作ってみたので挙げておきます。 Sub test01() Open "C:\Documents and Settings\xxxx\My Documents\testcsv.csv" For Input As #1 j = 1 While Not EOF(1) Line Input #1, a s = Split(a, ",") For i = 0 To UBound(s) Cells(i + 1, j) = s(i) Next i j = j + 1 Wend Close #1 End Sub ーーー Openの後のファイル名はパスも含めて質問者のケースのものに書き換えるkと。 標準モジュールに貼り付けて、実行。 例データ CSV ファイル "aaabbb","ss",1 "aa","d",2 "dd","f",3 "ff","g",4 "gh","hh",5 "jjk","jj",6 "sd","k",1 "ss","a",2 結果 エクセルのシート "aaabbb" "aa" "dd" "ff" "gh" "jjk" "sd" "ss" "ss" "d" "f" "g" "hh" "jj" "k" "a" 1 2 3 4 5 6 1 2

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

「データ」→「区切り位置」でいったん横方向に展開した後で、コピーし「編集」→「形式を選択して貼り付け」→「行と列を入れ替える」で縦方向に貼り付けることは可能です。ただし貼り付ける場所は元データと別にする必要があります。 そうではなく横方向に展開したら256列の制限にひっかかり、展開できないというのであれば、「マクロで縦方向に読み込みたい」という質問が昨日もありました。そのまま利用できるかわかりませんが、ご参考まで。 http://oshiete1.goo.ne.jp/qa3482545.html

ubalumni
質問者

お礼

だいぶ光が見えてきました。どうも有難うございました。

関連するQ&A

専門家に質問してみよう