Hallo liebes VBA Forum,
ich habe bei einem Makro zwei Probleme mit der Hoffnung, dass mir hier geholfen werden kann.
1. Ich erzeuge aus einem Makro heraus eine Txt-Datei, diese trägt bereits den richtigen Namen und hat bereits den richtigen Namen. Leider steht in der Datei aber nichts drin. Nach meinem Verständnis müsste er doch zumindest "Delete(Y1234)(ReelIdFolder)" reinschreiben, im Falle, dass er die Variable "dateiname" nicht auslesen kann.
2. Kann bisher nur eine Datei erzeugt werden, ohne, dass Excel geschlossen und wieder geöffnet werden muss.
Ich bin über jede Hilfe sehr dankbar.
Mit freundlichen Grüßen 
Lukas
Folgender Code wird verwendet:
Sub Datei_suchen_laden()
Sheets("Start").Range("H2").Value = Time
Dim i As Integer
Dim carrier As String
Dim anzahlzeilen As Integer, mengeunsauber As Integer, posMengeklar As Integer
Dim Dateiname As String, text As String, textline As String, posMenge As Integer
Dim strDateiname As String
Dim strPath As String
'Dim i As Long
Dim lngZeile As Long
Application.ScreenUpdating = False
If DBAktuell = 0 Then Call DateinamenAuflisten
anzahlzeilen = Sheets("DB").UsedRange.Rows.Count
carrier = Right(Sheets("Start").Cells(1, 2).Value, 6) 'carrier=Carrier-ID ohne R
Dateiname = "" 'Dateiname resetten
For i = 1 To anzahlzeilen
    If Sheets("DB").Cells(i, 2) = carrier Then Dateiname = Sheets("DB").Cells(i, 1)
Next
If Dateiname = "" Then
    Sheets("Start").Select
    Range("B1").Select
    MsgBox ("Kein Feeder gefunden! - ID prüfen")
    DBAktuell = 0
    Application.ScreenUpdating = True
    Exit Sub
Else
    Dateiname = "Z:/" & Dateiname
    Open Dateiname For Input As #1
    Do Until EOF(1)
        Line Input #1, textline
        text = text & textline
    Loop
    Close #1
    
    posMenge = InStr(text, ",,,") + 3
    mengeflasch = Mid(text, posMenge, 6)
    posMengeklar = InStr(mengeflasch, ",")
    menge = Left(mengeflasch, posMengeklar - 1)
    Sheets("Start").Cells(2, 2).Value = menge
    Sheets("Start").Select
    Range("B1").Select
    
    strPath = "Y:\" 'Speicherpfad eintragen
    strDateiname = "DeleteTest_" & Sheets("Start").Cells(1, 11).Value & Sheets("Start").Cells(1, 10).Value & Sheets("Start").Cells(1, 9).Value & Sheets("Start").Cells(2, 9).Value & Sheets("Start").Cells(2, 10).Value & "0000" & ".sts" 'Dateinamen mit Dateiendung eintragen
    lngZeile = Range("A" & Rows.Count).End(xlUp).Row
    
    Open strPath & strDateiname For Output As #1
    
    Print #1, "Delete(Y1234)(ReelIdFolder)" & Dateiname
    
    Kill Dateiname
    
End If
   
Application.ScreenUpdating = True
End Sub
  
     |