ich bin ein ziemlicher VBA-Neuling und möchte Text aus einem Excel-Sheet in einer Textdatei speichern. Dazu habe ich einen Code im Internet gefunden und leicht für meine Bedürfnisse abgeändert (unten angehängt).
Dies hat bei mir und einigen Kollegen auch einwandfrei funktioniert, jedoch bekommt ein Kollege beim Ausführen des Codes immer wieder (jedoch nicht jedes Mal) die Fehlermeldung: Laufzeitfehler 2147221040 in der Zeile: "oClipBoard.GetFromClipboard".
Nun habe ich bereits im Internet recherchiert, das bereits andere scheinbar zufällig
auftretende Probleme bei ähnlichem Code hatten, ich habe aber bisher keine Lösung für das Problem finden können.
Hat jemand eine Idee, woher das Problem kommen könnte und wie man es lösen kann?
Alternativ wäre ich auch sehr dankbar für andere Vorgehensweisen, wie man den Text in eine Textdatei bekommt ohne die Zwischenablage zu nutzen.
Viele Grüße,
Alexandra
[Code]
Sub SaveText()
Dim fso As Object, oStream As Object, oClipBoard As Object
Dim FileName As String
FileName = Sheets(1).Range("I6").Value + "xxx.txt"
' Textdatei erstellen
Set fso = CreateObject("Scripting.FileSystemObject")
Set oStream = fso.CreateTextFile(FileName, True)
oStream.Close
'Temp Textdatei mit Daten aus Zwischenablage versorgen
Set oStream = fso.OpenTextFile(FileName, 2)
Set oClipBoard = CreateObject("new:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}")
Sheets("x").Select
ClearClipboard = True
Sheets("x").UsedRange.Copy
'Daten in Zwischenablage kopieren
oClipBoard.GetFromClipboard
'Daten von Zwischenablage in Txt Datei einfügen
oStream.WriteLine oClipBoard.GetText
Application.CutCopyMode = False
oStream.Close
Set oStream = Nothing
Set oClipBoard = Nothing
Set fso = Nothing
End
Sub