標題:
[發問]
excel vba 批次將某個sheet另存csv檔
[打印本頁]
作者:
joey0415
時間:
2013-8-1 00:56
標題:
excel vba 批次將某個sheet另存csv檔
本帖最後由 joey0415 於 2013-8-1 00:59 編輯
小弟有參考
http://forum.twbts.com/thread-6347-1-1.html
,可以指定sheet,將其存成csv檔
問題是這樣
小弟將網頁上的資料放進sheet2中,指定sheet2存成csv檔,單一個沒有問題
若是將A網頁下載後,放至SHEET2中,存檔成功,之後若將SHEET2.CELLS.CLEAR後
再將B網頁下載,放進SHEET2,再存檔時會發生問題,問題如圖
不過若將SHEET2.CELLS.CLEAR這句話註解後,程式可以跑完沒有問題,但是檔案的內容越來越來,資料有重覆
不之是哪方面的問題,請高手指點一下
以下是錯誤語句
[attach]15659[/attach]
以下是檔案寫入是空值
[attach]15660[/attach]
將SHEET2.CELLS.CLEAR後,可以run但是資料是錯誤的
[attach]15661[/attach]
sheet2中資料表的內容如下
[attach]15662[/attach]
部份代碼如下:
Dim myTxtFile As String, myFNo As Integer
Dim myLastRow As Long
Worksheets(2).Activate
CSVText = ThisWorkbook.Path & "\" & Format(Date, "yyyymmdd") & "_" & Sheet1.Cells(j, 1) & ".csv"
ar = Sheet2.Range("A1").CurrentRegion.Value
Open CSVText For Output As #1
For i = 1 To UBound(ar, 1)
mystr = Join(Application.Index(ar, i), ",")
Print #1, mystr
Next
Close #1
' Sheet2.Cells.Clear
Next
複製代碼
作者:
GBKEE
時間:
2013-8-1 15:56
回復
1#
joey0415
上傳檔案 看看
作者:
joey0415
時間:
2013-8-1 16:48
批次將sheets存成csv檔的語句
網上爬文並錯誤嘗試後,找到可以用的句子
例如:我activate的是
Worksheets(2).Activate
這個工作表
我就將Worksheets(2)工作表存在C中的Marthinus.csv
ActiveWorkbook.SaveAs "C:\Marthinus.csv", fileformat:=6
若是下面這句
'------------------------------ 將sheet2中的資料以指定格式存成csv檔--------------
ActiveWorkbook.SaveAs ThisWorkbook.Path & "\" & Format(Date, "yyyymmdd") & "_" & Sheet1.Cells(j, 1) & ".csv", FileFormat:=6
如果是重覆回圈下載輸出CSV的話,
請記得要將您的指定的Worksheets(2)內容清除Sheet2.Cells.Clear
這樣SHEET2中的資料才會是你想要存的內容
作者:
joey0415
時間:
2013-8-1 16:49
回復
2#
GBKEE
謝謝GBKEE大
我已找到方法,貼在下面,若再有問題,一定會再請益
感謝
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)