
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
> CSV形式で保存する際に空白行を削除して上に詰めて保存したいです。
無条件にExcelの1行をCSVレコードとして取り出す方法がわかっているのであれば、そのレコードの文字列長が0文字ならCSVファイルへの書き出しをせずに次の行の抽出に進めばよいだけのことです。
ちなみに1行の全列のデータを抽出して1個もデータが無かったのに「,」とか「",」とかだけのレコードが出来ていたら、それはデータ抽出ロジックのバグです。(^^;
以下余談ですが。。。
CSVファイルの取り扱いはプラットフォーム(=OS)やCSVファイルを扱うソフトウェアによって仕様が異なります。
例えば改行コードのみのいわゆる空行。これを「全カラムがデータ無しの行」と扱うものと、無視して読み飛ばすものとがあります。
ですので、空行を取り去ってしまうとデータの意味が変わってしまう実装もあるので、ExcelファイルのデータをCVSファイルに落とす場合は、出来たCSVファイルはどのように使われるのかを確認あるいは仕様決めをして掛かる必要があります。
あと、各データを""で囲う囲わないとか、改行コードはLFかCR+LFかとった話もあります。
改行コードに関してはRFC 4180ではCR+LFと決まってはいますが、LFだけの実装も少なくないのが実情です。パソコン・・・特にWindowsパソコンだとCR+LFで決まりですが、それ以外の環境ではLFだけが普通だったりとか。
加えて区切り子が「,」ではなく「;」の実装もあり。。。(^^;
とまあいろいろ方言があるCSV形式ですが、フォントサイズとか、下線とか、文字色とかが一切無い文字コードだけで出来ているというところがメーカー独自の文書アプリに依存しないデータ保存形式という意味で重要なものとなっています。
参考まで。
No.3
- 回答日時:
初心者なら、全部手作業で行いましょう。
横着したいのであれば、それなりに学んで初心者を脱してからです。
(´・ω・`) ゴメンね。
まずは基本操作を完全にマスターして、マクロにするまでもないってくらいになりましょう。
基本操作をマスターすれば数回の操作でできるような事ですからね。
・・・
空白行の削除はフィルターを使えば一括処理できる
No.2
- 回答日時:
こんにちは
1行ずつ判断しながら順に出力すれば可能です。
でも、エクセルならシートのCSV出力機能を利用したほうが簡単ですね。
以下の手順で可能と思います。
1)出力したいシートをコピー
2)コピーシートの空白行を削除
3)コピーシートをCSV出力
4)コピーシートを削除
>どのようにコードを書いたらいいでしょうか?
構文がわからなければ、マクロの記録をとってみれば大体わかると思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
CSV形式にすると出てくる空白を消したいです。
その他(Microsoft Office)
-
Excelマクロ 空白セルを無視してCSV出力
Excel(エクセル)
-
【Excel】 csvの作成時、空白セルにもカンマ
Excel(エクセル)
-
-
4
エクセルでCSVを編集するとき、空白(NULL?)はどう入れますか
Excel(エクセル)
-
5
CSVファイルの特定行の削除
Visual Basic(VBA)
-
6
EXCELでCSVファイル保存するとデータが無いところにカンマ
その他(ソフトウェア)
-
7
CSVで1列目を空白にする方法は?
PowerPoint(パワーポイント)
-
8
VBAでCSVをExcelに取り込む時に、途中の改行を取り除くには
Visual Basic(VBA)
-
9
Excel:任意の列だけCSV形式で出力したい。
Excel(エクセル)
-
10
SUMIF関数で、「ブランク以外を合計」を指定したい
その他(Microsoft Office)
-
11
VBA:Openステートメントで開いたCSVファイルの特定行を削除する方法
その他(プログラミング・Web制作)
-
12
エクセルで日付が逆に登録されています
Excel(エクセル)
-
13
数式による空白を無視して最終行を取得するマクロ
Excel(エクセル)
-
14
【Excel VBA】CSV取込時、数字の先頭の0を消えないようにするには?
Excel(エクセル)
-
15
【ExcelVBA】各セルをダブルクォーテーションで括ってCSV保存したい
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルの選択範囲以外を削除...
-
Excel 関数を使ってデータと一...
-
Excelの行をコピーして貼り付け...
-
エクセルのユーザーフォームを...
-
ExcelVBAで、ユーザーフォーム...
-
エクセルのシートコピーした際...
-
VBA 先頭文字の0(ゼロ)...
-
ページの設定を別シートにコピ...
-
EXCELのVBAでシートコピーをし...
-
EXCELで別のブックから式をコピ...
-
EXCELで作成した表(横)を表(...
-
【エクセル】プルダウン設定の...
-
CSVファイルについて質問です。
-
EXCEL2007でシートをコピーする...
-
Excelシートを何も変えず他のBo...
-
エクセルのページをシートごと...
-
EXCEL VBA シートをコピーする...
-
Excel シートのコピーの際、ペ...
-
EXCELのファイル容量について
-
Excel VBA 複数シートを別ファ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルの選択範囲以外を削除...
-
Excel 関数を使ってデータと一...
-
EXCELのVBAでシートコピーをし...
-
Excelの行をコピーして貼り付け...
-
EXCELで別のブックから式をコピ...
-
エクセルでシートを「移動また...
-
【エクセル】プルダウン設定の...
-
エクセルの1シートの内容を複...
-
EXCEL2007でシートをコピーする...
-
Excel シートのコピーの際、ペ...
-
ページの設定を別シートにコピ...
-
CSVファイルについて質問です。
-
エクセルのワークシートをUSBメ...
-
PDFファイルをコピーしてエクセ...
-
エクセルシートを別のエクセル...
-
Excel 数式の保護をしたセルを...
-
ExcelVBAで、ユーザーフォーム...
-
【VBA】コピー&複数個所のペー...
-
エクセルのシートコピーした際...
-
VBA シートをコピー後、ボタン...
おすすめ情報