|
こんにちは。
また分からなくなってしまいました。
下のように、同じフォルダー内のcsvファイルを一つのxlsファイルにまとめようとしたのですが。。。
なぜかfile_nameを変えると成功したりしなかったりします。
A1に今日の日付を入れて、「にゃー2007/06/11.xls」で保存したいのですが。
日付を諦めて「にゃー.xls」ならなぜかうまくいきます。
date_1がなにか邪魔してるんでしょうか?
原因を教えていただけないでしょうか。
よろしくお願いします。
Sub Nya-()
Application.ScreenUpdating = True チカチカする
flg = True
file_path = ActiveWorkbook.Path 'このファイルのあるフォルダー
csv_name = Dir(file_path & "\*.csv", vbNormal)
date_1 = ActiveWorkbook.ActiveSheet.Range("A1") 'A1の日付
file_name = "にゃー" & date_1
'csvファイルを開いてコピーをくりかえす
Do While csv_name <> ""
'csvを開く
Workbooks.OpenText _
Filename:=file_path & "\" & csv_name, _
DataType:=xlDelimited, Comma:=True
'flgで一回だけ新規ブックを作る
If flg = True Then
Workbooks(csv_name).Worksheets(1).Copy
now_file = ActiveWorkbook.name
Workbooks(csv_name).Close
flg = False
'2回目からはそのブックにコピーしていく
Else
Workbooks(csv_name).Worksheets(1).Copy _
after:=Workbooks(now_file).ActiveSheet
Workbooks(csv_name).Close
End If
csv_name = Dir()
Loop
If file_name = "" Then
MsgBox "フォルダ内にcsvファイルが無いです(>_<)"
Else
Workbooks(now_file).saveas Filename:=file_path & "\" & file_name
Application.Windows.Arrange _
Arrangestyle:=xlArrangeStyleCascade
End If
End Sub
|
|