I have several txt files in a specific folder and I want to convert these files to excel by doing txt to columns. Then, I want to save the excel files individually in the same folder by deleting the txt files and keeping the excel file only.
I need the VBA Code which can do this and also by filtering the blanks in column A and deleting all the blanks.
Thanks for your help
try this *** REMEMBER TO CHANGE THE FOLDER NAME (spath)!****:
Sub getTextFiles() Dim spath As Variant Dim sfile As Variant Dim lc As Variant Dim txtBook As Workbook Dim x As Variant Dim saveName As String Application.DisplayAlerts = False 'IMPORTANT!!!!! 'Set path to folder where you keep the text files spath = "C:\test\" 'Loop through all text files in the folder sfile = Dir(spath & "*.txt") Do While sfile <> "" 'Open the text file Set txtBook = Workbooks.Open(spath & sfile) 'Text to Columns - comma separated txtBook.Sheets(1).Columns(1).TextToColumns Destination:=txtBook.Sheets(1).Cells(1, 1), DataType:=xlDelimited, _ Tab:=False, Semicolon:=False, Comma:=True, Space:=False, Other:=False 'Find last row with data lc = txtBook.Sheets(1).Cells(txtBook.Sheets(1).Rows.Count, "a").End(xlUp).Row 'Loop through all rows in column "A" and delete the row if cell is blank For x = lc To 1 Step -1 If txtBook.Sheets(1).Cells(x, 1) = "" Then txtBook.Sheets(1).Cells(x, 1).EntireRow.Delete Next x 'Save file as xlsx and close it 'File name without the ".txt" part saveName = Left(sfile, Len(sfile) - 4) txtBook.SaveAs Filename:=spath & saveName, FileFormat:=51, CreateBackup:=False txtBook.Close Set txtBook = Nothing 'Delete old text file Kill spath & sfile 'Get another file sfile = Dir() Loop Application.DisplayAlerts = True End Sub