Ich habe ein Makro um Textdateien in meine Tabelle zu laden.
Mein Problem ist, das wenn in der Textdatei keine Daten stehen kommt es zu einer
Fehlermeldung.
Ich habe im Code einmal makiert wo der Code gelb makiert wird.
Gibt es eine möglichkeit vorher abzufragen ob die Textdatei überhaupt Text enthält und dann das Makro zu verlassen ?
Ich hoffe mir kann jemand helfen.
Gruß Heino
Hier mein Makro:
Sub Textdatei_laden_SB_andere()
' Textdatei_laden Makro
'Textdatei mit Userdaten wird zurückgeschrieben.
Application.ScreenUpdating = False
Sheets("AndereDaten").Visible = True
Dim rng As String
Dim rng1 As String
If Sheets("AndereDaten").Range("a2") = "" Then GoTo 10
rng = "a2"
Sheets("AndereDaten").Activate '
Cells(Rows.Count, 14).End(xlUp).Select
rng1 = ActiveCell.Address
Range(rng & ":" & rng1).clear
10
UserForm4.Show
Dim Pfad As String
Pfad = Dateiname 'wird über Userform ausgewählt
Sheets("AndereDaten").Activate
Range("A2").Select
'ab hier werden die Daten aus der Textdatei geholt
With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;" & Pfad & "SB_Daten.txt", _
Destination:=Range("A2"))
.name = "SB_Daten_1"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = xlWindows
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = True
.TextFileSemicolonDelimiter = True
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1)
.Refresh BackgroundQuery:=False ' hier kommt die Fehlermeldung wenn in der Textdatei keine Daten sind.
End With
Call AndereDaten_Format
Application.ScreenUpdating = True
End Sub