![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
宜しくお願いします。
CSVデータをダウンロードしてエクセルデータに直して、必要な箇所を変換し、別のCSVデータに作りかえる作業をしています。
元のデータには改行が入っており、作り変えたいデータは改行がだめなので、置換でCtrl+J→全角スペースでやりましたが、見かけ上は改行はなくなっているのですが、変換先のフォーマットてCSVに変換すると改行が入ってしまいます。
このやり方では、そのようなことがおこるのでしょうか?
何が悪いのか分かりません。。。
どこを直せばいいのか、また、他に何かよい方法があれば教えてください。
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
こんにちは。
Wendy02です。当面、どこかのブックに、以下のようなコードを置いて、CSV ファイルから、問題のコードを削除してみてください。初歩的なコードですが、目的は果たせるような気がしています。
'<標準モジュールに貼り付けて、これもフォームのボタンにつけるとよいです。>
Sub CRLFCodeDeleting()
Dim c As Range
Dim buf As String
Dim bufeach As String
Dim i As Long
Application.ScreenUpdating = False
For Each c In ActiveSheet.Range("A1").CurrentRegion
If Not IsEmpty(c.Value) Then
buf = Application.Substitute(c.Value, vbCr, " ")
buf = Application.Substitute(buf, vbLf, "")
buf = Application.Substitute(buf, """", "")
'半角カタカナのみを全角にするオプション開始
If buf Like "*[" & Chr(166) & "-" & Chr(223) & "]*" Then
For i = 1 To Len(buf)
If Mid$(buf, i, 1) Like "[" & Chr(166) & "-" & Chr(223) & "]" Then
bufeach = bufeach & StrConv(Mid$(buf, i, 1), vbWide)
Else
bufeach = bufeach & Mid$(buf, i, 1)
End If
Next i
buf = bufeach
End If
bufeach = ""
'オプション終わり
c.Value = buf
buf = ""
End If
Next
Application.ScreenUpdating = True
End Sub
>エクセルにしてデータを保存する前に、CSVの時点で置換でctrlJをしないとだめですか?
その作業の後先については、当面関係ないと思っています。
>フォーマットにCSVになおすマクロのフォームボタンがあるのですが、それでCSVに変換したものをみると、改行があった あいうえお のあとで、次の行にいってしまっています。。。
ちょっと気になります。CSVになおすマクロって、もしかしたら、特殊なことをしている可能性がありますね。上のコードでダメな場合は、そのマクロを見させていただくようになるかと思います。
>JIS関数で全角になおして、それを値だけコピーしたものを、そのフォーマット(エクセル)にはりつけました。
そのインターネット用のプログラムは、このサイトでも、いくつか出来ていましたが、今回は、半角カタカナだけが対象にしました。
ありがとうございます。
あまりシステムのことは詳しくないので、
会社のシステム作った人に聞いてみました。
""が全ての項目に入っていないから・・・みたいな説明でした。
No.2
- 回答日時:
こんばんは。
自分で、Sampleデータを作ってみましたが、確信が持てません。
おそらく、元のデータは、
"abc
def",efg,hij
など、「" "」入りのはずです。できるだけ正確に、CSV のテキストのサンプルを提示していただけないでしょうか?
Excelにインポートした時に、「・」はついていますか?ついていませんか?
>Ctrl+J→全角スペースでやりましたが、見かけ上は改行はなくなっているのですが、
もしかしたら、Ctrl + J =Char(10) だけではないかもしれません。
例えば、このようにして、
=CODE(RIGHTB(A1,3))
戻り値が、「10」が出たとしたら、
=CODE(RIGHTB(A1,4))
にしたら、「13」が出てこないでしょうか?
こちらは、ワークシート上で試してみましたが、置換が出来ませんので、元から処理したほうがよいようです。
ご自分でされるなら、テキスト・エディタの正規表現やPerl を使えばよいし、こちらで解決されるのでしたら、VBAマクロコードを提供します。
この回答への補足
わかりにくくてすいません。
自社のCSVでの情報を、他のサイトにのせてもらうためのCSVに変換したいのです。
例えば、自分の会社が旅行会社とすると、旅行サイトに自分の会社のツアーの情報をのせてもらうために、自分の会社のCSVデータを、その旅行サイトのCSVのフォーマットに合うように変換しようとしています。
自社データでは、例えば
あいうえお
かきくけこ
さしすせそ
と、ひとつのセルに入っているものを、
置換でctrlJ→全角スペース として、
ひとつのセルに、
あいうえお かきくけこ さしすせそ
という表示になるようにしました。
で、半角の文字をいれるとエラーが出るので、JIS関数で全角になおして、それを値だけコピーしたものを、そのフォーマット(エクセル)にはりつけました。その状態では、フォーマットにはりつけた後も、見かけ上はひとつのセルに あいうえお かき・・・ とおさまっているのですが、フォーマットにCSVになおすマクロのフォームボタンがあるのですが、それでCSVに変換したものをみると、改行があった あいうえお のあとで、次の行にいってしまっています。。。
もしや、CSVにダウンロードした際に、エクセルにしてデータを保存する前に、CSVの時点で置換でctrlJをしないとだめですか?
それは関係ないですかね・・・
No.1
- 回答日時:
>変換先のフォーマットてCSVに変換すると改行が入ってしまいます。
「変換先のフォーマット」とCSVの関係がよくわかりませんが、たとえばWordを用いて開いたときに全角スペースに置き換わっていれば、正常であると判断されます。
行と行の間の区切り(つまりレコードの区切り)の意味であれば当然改行は残ります。「Ctrl+J→全角スペース」はセル内改行の置換です。
「変換先のフォーマット」がインポートするアプリケーションのフォーマットの意味であれば、スペース区切りでインポートすれば、改行があったときのようになるかも知れません(アプリケーションがわからないので不確かです)。
全角スペースはわかりにくいので(特にExcelではわかりにくい)、アンダースコア等(使用している場合には別の文字、もしくはいくつかの文字の組み合わせ)を使用すると置換の確認が容易になると思われます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) CSVファイルがカンマ区切りにならない。対処法を教えていただきたいです。 仕事でSMS一斉送信ができ 2 2022/07/01 21:24
- その他(ブラウザ) cvsファイルをダウンロードすると、自動で拡張子がExcelのものになる 5 2022/07/20 21:21
- HTML・CSS WEBサイトの構築。表示データとWEBデザインを分離する考え方を専門用語・業界用語では何と言うか? 8 2022/09/27 09:16
- Word(ワード) LibreOfficeで数年保存しているデータの変更作業 4 2022/07/08 17:15
- iPhone(アイフォーン) iphoneのicloud写真データ移動について 3 2022/11/28 18:11
- Excel(エクセル) 【VBA】指定フォルダに格納中のテキストファイルをエクセルで処理し結果のエクセルを新規フォルダに保存 1 2022/03/25 14:19
- その他(データベース) 20万行あるデータを動かしたい 2 2023/06/13 15:21
- Excel(エクセル) エクセルでのデータの統一に関して リストを作成する際、元データをコピペでリストに転記しており、元デー 2 2022/08/31 15:33
- HTML・CSS HTMLタグのあるCSVファイルを利用する方法 4 2023/03/19 14:41
- その他(Microsoft Office) VBA CSV出力について 3 2023/04/19 14:14
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ワードの改行について
-
行間があいているワード文書の...
-
テキストの半角文字を全部削除...
-
【有効数字について】 授業で、...
-
携帯電話の略語であるMBって英...
-
マトリックスサイズが512×512で...
-
Excel_VBAで改行コードの無いフ...
-
空メールのデータ量はどれくら...
-
文字の容量(サイズ)についての...
-
KとKB
-
実行計画の「COST」と「BYTE」...
-
VBAで時間の型と計算方法教えて...
-
1Mバイトって何バイト?
-
有効数字の計算
-
プログラム言語FortranとCの違...
-
KBとMB
-
K KB MB について詳し...
-
64ビット化による処理速度低下...
-
画像サイズのMBとKBについて
-
EXCELでの16進数取り出し、上...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ワードの改行について
-
テキストの半角文字を全部削除...
-
MS-Wordで改行を検索・置換する...
-
改行削除の便利な方法について
-
行間があいているワード文書の...
-
テキストファイルの改行した文...
-
秀丸の置換
-
エクセルの改行マーク(?)の置換...
-
フリーソフトYokkaGrepでの置換...
-
テキストファイルの改行について
-
改行を含む置換について
-
改行文頭に関して
-
正規表現による改行の置換
-
いまだに手打ちでwebサイトを作...
-
ワード文書の「スペース」の一...
-
Wordの「改行・1行分空ける」機...
-
エクセルのセル内で改行を削除...
-
VZ タグ付き正規表現の置換
-
PDFからワードへ→文字がくずれる
-
特定の文字が出てきたら改行し...
おすすめ情報