Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1784to1788
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Schreiben in txt-Datei Zugriff verweiger

Schreiben in txt-Datei Zugriff verweiger
13.10.2020 14:52:11
Nina
Hallo an alle,
zunächst wollte ich allen 'Antwortschreibern' hier mal Danke sagen! In meiner Arbeit habe ich viel mit der Erstellung von Makros zu tun und bin immer wieder begeistert, dass in diesem Forum wirklich jede Frage unglaublich kompetent und nett beantwortet wird!
Nun zu meinem Problem :)
Ich habe eine Mappe mit vielen Tabellenblättern und möchte nun eine .txt-Datei erstellen und dort nach einem bestimmten Muster die Daten aus den verschiedenen Tabellenblättern zusammenführen und speichern.
Leider scheitere ich gerade bereits beim Öffnen meiner erstellten .txt-Datei, da immer der Fehler "Laufzeitfehler 70 - Zugriff verweigert" erscheint.
Die Datei wird problemlos erstellt, allerdings kann ich sie selbst hinterher anscheinend nicht öffnen. Sie ist nicht schreibgeschützt.
Anbei mein Code und schonmal vielen Dank für eure Mühe!
Private Sub DateiErstellen()
'** Dieses Modul erstellt die TXT-Datei ev_rules, in welcher die Bewertungen der EF aufgelistet  _
werden
Dim Pfad As String
Dim Zeilenanzahl As Integer
Dim myDatei As String
Dim PfadDatei As String
Pfad = ThisWorkbook.Sheets("Einstellungen").Range("F" & 4).Value '* Pfad zur Erstellung der  _
Datei
myDatei = "ev_rules_test"
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.CreateTextfile(Pfad & myDatei & ".txt")
PfadDatei = Pfad & myDatei & ".txt" '* Pfad der Datei
Dim array_(), varItem As Variant
Dim worksheet_ As Worksheet
Dim path_ As String
Dim file_ As Long
path_ = PfadDatei
Set worksheet_ = ThisWorkbook.Sheets("EF")
array_ = ValueArray(worksheet_)
file_ = FreeFile
Open PfadDatei For Output As #file_
For Each varItem In array_
Print #file_, varItem
Next varItem
Close #file_
End Sub

Private Function ValueArray(ByVal ws As Worksheet) As Variant
Dim array_() As Variant
Dim i As Long
Dim Zeilenanzahl As Integer
Zeilenanzahl = Worksheets("EF").Cells(Rows.Count, 4).End(xlUp).Row '* Nur fehler mit  _
Ereignistext unter "D"
ReDim array_(489)
With ws
For i = 2 To Zeilenanzahl
array_(i - 2) = .Cells(i, 1).text & ";" & _
.Cells(i, 4).text
Next i
End With
ValueArray = array_
Erase array_
End Function

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
doppelt owT
13.10.2020 14:57:07
Rudi
AW: doppelt owT
13.10.2020 17:48:26
Nina
Hallo,
danke erstmal, aber was genau bedeutet "doppelte owt"?
AW: doppelt owT
13.10.2020 17:58:46
Werner
Hallo,
na ja, doppelt heißt halt doppelt. Du hast den gleichen Beitrag hier zweimal eingestellt.
Und owt = ohne weiteren Text
In deinem ersten Beitrag hast du Antworten - darauf reagiert hast du aber nicht.
Gruß Werner
AW: doppelt owT
13.10.2020 18:04:55
Nina
Oh man, das tut mir leid.
Das ist erst mein zweiter Beitrag und ich komme mit der Oberfläche des Forums noch nicht so klar :-)
Dann schau ich mal, wo ich den andere Beitrag jetzt hochgeladen habe.
Viele Grüße
Nina
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige