Forum Discussion
Excel
Jan 02, 2022Iron Contributor
Import text file in VBA
Hello Everyone, I have written the code, after run the code it works well. But it always start from A1 I want to show start from D1. So, what should i add in VBA code? Please help...
- Jan 02, 2022
Public Sub ImportTextFile() Dim CurFile As Workbook Dim NewSheet As Worksheet Dim TextFile As Workbook Dim OpenFiles() As Variant Dim i As Integer Set CurFile = ActiveWorkbook OpenFiles = GetFiles() Application.ScreenUpdating = False For i = 1 To UBound(OpenFiles) Set NewSheet = CurFile.Worksheets.Add Set TextFile = Workbooks.Open(OpenFiles(i)) TextFile.Sheets(1).Range("A1").CurrentRegion.Copy Destination:=NewSheet.Range("D1") NewSheet.Name = TextFile.Name Application.CutCopyMode = False TextFile.Close Next i Application.ScreenUpdating = True End Sub Public Function GetFiles() As Variant GetFiles = Application.GetOpenFilename(Title:="Select File(s) to Import", MultiSelect:=True) End Function
HansVogelaar
Jan 02, 2022MVP
Public Sub ImportTextFile()
Dim CurFile As Workbook
Dim NewSheet As Worksheet
Dim TextFile As Workbook
Dim OpenFiles() As Variant
Dim i As Integer
Set CurFile = ActiveWorkbook
OpenFiles = GetFiles()
Application.ScreenUpdating = False
For i = 1 To UBound(OpenFiles)
Set NewSheet = CurFile.Worksheets.Add
Set TextFile = Workbooks.Open(OpenFiles(i))
TextFile.Sheets(1).Range("A1").CurrentRegion.Copy Destination:=NewSheet.Range("D1")
NewSheet.Name = TextFile.Name
Application.CutCopyMode = False
TextFile.Close
Next i
Application.ScreenUpdating = True
End Sub
Public Function GetFiles() As Variant
GetFiles = Application.GetOpenFilename(Title:="Select File(s) to Import", MultiSelect:=True)
End Function