Você está na página 1de 1

Sub WriteCsvForEachSheet()

Dim wbook As String


Dim csvname As String
Dim Fullcsvname As String
Dim ext As String
Dim curDate As String

On Error Resume Next


'Pega nome completo do arquivo
wbook = ActiveWorkbook.Path & "\" & ActiveWorkbook.Name
'Para montar o nome do novo arquivo
curDate = Str(DatePart("yyyy", Now())) + "_" + Str(DatePart("m", Now())) + "_"
+ Str(DatePart("d", Now())) + "_" + Str(DatePart("h", Now())) + "_" +
Str(DatePart("n", Now()))
FName = ActiveWorkbook.Name
'Retirando a extens�o
If Right(FName, 4) = ".xls" Then
FName = Mid(FName, 1, Len(FName) - 4)
ElseIf Right(FName, 5) = ".xlsx" Then
FName = Mid(FName, 1, Len(FName) - 5)
End If
'Nome e path final do novo arquivo
Fullcsvname = ActiveWorkbook.Path & "\" & curDate & "." & FName & ".csv"
'Inclui coluna que receber� o conte�do do .csv
Columns(1).Insert Shift:=xlToRight
'Monta o texto do .csv
For i = 1 To 200 'Range("B65000").End(xlUp).Row
TempString = ""
For j = 2 To 20 'Range("HA1").End(xlToLeft).Column
If j <> Range("HA1").End(xlToLeft).Column Then
TempString = TempString & _
Cells(i, j).Value & "|" ' Delimitador do .csv
Else
TempString = TempString & _
Cells(i, j).Value
End If
Next
Cells(i, 1).Value = TempString
Next
'Seleciona o conte�do quer ir� para o .csv e cola em um novo arquivo que ser�
salvo como .csv
Columns(1).Select
Selection.Copy
Workbooks.Add
Range("A1").Select
ActiveSheet.Paste
Application.CutCopyMode = True

ActiveWorkbook.SaveAs Filename:=Fullcsvname, FileFormat:=xlCSV,


CreateBackup:=False, Local:=ActiveWorkbook.Path
ActiveWorkbook.Close (False)
Workbooks.Open wbook
End Sub

Você também pode gostar