ここから本文です

エクセル VBA CSV分割出力 2万行あるデータを100行づつ分割してCSV出力したいで...

vac********さん

2016/5/918:54:40

エクセル VBA CSV分割出力

2万行あるデータを100行づつ分割してCSV出力したいです。

1行面はタイトルです。

分割したCSVデータの1行目には全部同じタイトルが入っていてほしいです。

出力先は実行したブックと同じところで、ファイル名は実行したブック001~

といった具合にしたいです。

お願いいたします。

閲覧数:
633
回答数:
1
お礼:
100枚

違反報告

ベストアンサーに選ばれた回答

プロフィール画像

カテゴリマスター

tra********さん

2016/5/919:38:35

アクティブなシートから、CSVファイルを作成します。

Sub 一例です()
Dim FSO, sh As Worksheet, i As Long, ii As Long, xPath As String
Const cCpyNum As Long = 100
Set FSO = CreateObject("Scripting.FileSystemObject")
Application.ScreenUpdating = False
With ActiveWorkbook
xPath = .Path & "\" & FSO.GetBaseName(.Name)
.Worksheets.Add.Move
Set sh = ActiveSheet
With .ActiveSheet
.Rows(1).Copy
sh.Rows(1).PasteSpecial xlPasteValues
For i = 2 To .Cells(Rows.Count, 1).End(xlUp).Row Step cCpyNum
.Rows(i).Resize(cCpyNum).Copy sh.Rows(2)
ii = ii + 1
ActiveWorkbook.SaveAs Filename:=xPath & Format(ii, "000"), FileFormat:=xlCSV
Next i
End With
End With
Set FSO = Nothing
ActiveWorkbook.Close savechanges:=False
Application.ScreenUpdating = True
End Sub

質問した人からのコメント

2016/5/13 14:12:22

完璧な回答誠にありがとうございました!

あわせて知りたい

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる