Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Fehlermeldung bei Daten extern speichern

Forumthread: Fehlermeldung bei Daten extern speichern

Fehlermeldung bei Daten extern speichern
25.11.2006 19:19:40
Harald
hallo,
ich habe in diesem Forum zum externen Abspeichern bestimmter Daten folgenden Code bekommen:

Sub DatenExternSpeichern(Wks As Worksheet)
Dim vntTmp, R As Long, strTmp As String, iCols As Integer
iCols = Wks.Cells(3, 255).End(xlToLeft).Column
Open ThisWorkbook.Path & "\" & Wks.Name & ".txt" For Output As #1
With Wks
For R = 3 To .Cells(65536, 1).End(xlUp).Row
strTmp = ""
vntTmp = .Range(.Cells(R, 1), .Cells(R, iCols))
strTmp = Join(vntTmp, "|")
Print #1, strTmp
Next R
End With
Close #1
End Sub

Nun bekomme ich immer den Fehler "ungültiger Prozeduraufruf oder ungültiges Argument", wobei die Zeile mit der Join-Anweisung markiert wird.
Was ist hier falsch?
m.f.g.
Harald
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Fehlermeldung bei Daten extern speichern
25.11.2006 20:16:30
Kurt
Hi,
vntTmp muss ein eindimensionaler Array sein!
mfg Kurt
AW: Fehlermeldung bei Daten extern speichern
26.11.2006 09:33:26
Harald
Hallo Kurt,
vielen Dank für den Tip.
m.f.g.
Harald
AW: Fehlermeldung bei Daten extern speichern
25.11.2006 20:16:40
Erich
Hallo Harald,
Join erwartet ein eindimensionales Datenfeld als ersten Parameter, vntTemp ist aber zweidimensional
(kannst du dir im Überwachungsfenster ansehen).
So läuft es jedenfalls: (Das Trennzeichen kann man dann natürlich auch gleich in der Schelife anhängen.)
Sub DatenExternSpeichern1(Wks As Worksheet)
Dim strRng() As String, R As Long, strOut As String, iCols As Integer, ii As Integer
With Wks
iCols = .Cells(3, 255).End(xlToLeft).Column
ReDim strRng(iCols - 1)
Open ThisWorkbook.Path & "\" & .Name & ".txt" For Output As #1
For R = 3 To .Cells(65536, 1).End(xlUp).Row
strOut = ""
For ii = 1 To iCols
strRng(ii - 1) = .Cells(R, ii)
Next ii
strOut = Join(strRng, "|")
Print #1, strOut
Next R
Close #1
End With
End Sub
'oder so:
Sub DatenExternSpeichern2(Wks As Worksheet)
Dim vntRng, strRng() As String, R As Long, strOut As String, iCols As Integer, ii As Integer
With Wks
iCols = .Cells(3, 255).End(xlToLeft).Column
ReDim strRng(iCols - 1)
Open ThisWorkbook.Path & "\" & .Name & ".txt" For Output As #1
For R = 3 To .Cells(65536, 1).End(xlUp).Row
strOut = ""
vntRng = .Range(.Cells(R, 1), .Cells(R, iCols))
For ii = 1 To iCols
strRng(ii - 1) = vntRng(1, ii)
Next ii
strOut = Join(strRng, "|")
Print #1, strOut
Next R
Close #1
End With
End Sub
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: Fehlermeldung bei Daten extern speichern
26.11.2006 09:35:29
Harald
Hallo Erich,
vielen Dank für den Hinweis und den neuen Code. Ich werde ihn heute mittag ausprobieren.
m.f.g.
Harald
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige