Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
888to892
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
888to892
888to892
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Falscher Dateimodus

Falscher Dateimodus
20.07.2007 19:16:32
SteffenS
Hallo zusammen,
beim erstellen einer Textdatei bekomm ich mit

Sub AnlegenExportDatei(bStatus As Boolean, sZielDatei As String)
Dim sPrintString As String
On Error GoTo FehlerBeiDateiAnlegen
Open sZielDatei For Output As #55
sPrintString = "KERPLAN;FILIALE;MARKE;KOST;KOTRP;KOTRHE;KOTRHD;PERIODE;VWEG;EVWEG; _
WAEHRUNG;WERT"
Print #55, sPrintString
Close #55
bStatus = True
Exit Sub
FehlerBeiDateiAnlegen:
bStatus = False
End Sub


die Meldung: "falscher Dateimodus"
Unter excel 2000 gehts einwandfrei
Woran liegt dies und wie kann ich es beheben?
Danke im Voraus
MFG
Steffen Schmerler

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Falscher Dateimodus
20.07.2007 19:51:55
Ramses
Hallo
Hab das gerade unter 2003 getestet und funktioniert einwandfrei.
Ist die Datei von einem vorherigen Prozess eventuell noch offen ?
Kannst du mir bitte sagen wozu in
Sub AnlegenExportDatei(bStatus As Boolean, sZielDatei As String)
das "bStatus as Boolean" gut sein soll ?
Gruss Rainer

AW: Falscher Dateimodus
20.07.2007 20:12:00
SteffenS
Danke für die ANtwort
das Makro läuft auch unter Office 2003 SP1 aber unter SP3 nicht mehr
Den Wert benötige ich für die weitere Verwendung des Makros wenn ein Fehler auftritt.
Vielleicht habt Ihr ja noch eine andere Idee?
Danke im Voraus
MFG
Steffen Schmerler

Anzeige
AW: Falscher Dateimodus
20.07.2007 20:23:34
Ramses
Hallo
"...Den Wert benötige ich für die weitere Verwendung des Makros wenn ein Fehler auftritt...."
Das ist doch Quark :-)
Die Variable ist doch nur gültig innerhalb des Makros und kann nach Ablauf des Makros nicht mehr verwendet werden, ausserdem vergibst du innerhalb des Makros des Status TRUE oder FALSE.
Den kannst du nacher allerdings nicht mehr abfragen, was auch zu beweisen ist
Starte mal das Makro "Test"
Sub test()
    Dim x
    Testmakro True
    MsgBox bStatus
End Sub

Sub Testmakro(bStatus As Boolean)
    bStatus = False
End Sub

Wozu also den Status TRUE oder FALSE als Übergabe- bzw. Startparameter
By the way, das läuft sowohl im deutschen wie auch im englischen EXCEL mit SP3
Gruss Rainer

Anzeige
AW: Falscher Dateimodus
20.07.2007 20:28:00
Matthias
Hallo Rainer,
da hast du aber nicht recht:

Sub test()
Dim x
Dim bstatus As Boolean
bstatus = True
MsgBox bstatus
Testmakro bstatus
MsgBox bstatus
End Sub
Sub Testmakro(bstatus As Boolean)
bstatus = False
End Sub


zur Verdeutlichung kann man schreiben:


Sub Testmakro(ByRef bstatus As Boolean)


im Gegensatz zu


Sub Testmakro(ByVal bstatus As Boolean)


Bei letzterem hat die Änderung von bstatus in Testmakro für das Makro Test tatsächlich keinen Effekt.
Gruß Matthias

Anzeige
AW: Falscher Dateimodus
20.07.2007 20:54:54
Ramses
Hallo Matthias
Unter diesem Gesichtspunkt ziehe ich meine Einsprache teilweise zurück :-)
Allerdings ist das programmiertechnisch zweifelhaft, wenn ich die gleiche Variable in zwei Makros verwende, dann schon lieber eine Funktion,... da weiss man was man hat :-)
Sub test()
    MsgBox AnlegenExportDatei("C:\Export.txt")
End Sub

Function AnlegenExportDatei(sZielDatei As String) As Boolean
    Dim sPrintString As String
    On Error GoTo FehlerBeiDateiAnlegen
    Open sZielDatei For Output As #55
    sPrintString = "KERPLAN;FILIALE;MARKE;KOST;KOTRP;KOTRHE;KOTRHD;PERIODE;VWEG;EVWEG;WAEHRUNG;WERT"
    Print #55, sPrintString
    Close #55
    AnlegenExportDatei = True
    Exit Function
    
    FehlerBeiDateiAnlegen:
    AnlegenExportDatei = False
End Function

Gruss Rainer

Anzeige
AW: Falscher Dateimodus
20.07.2007 20:38:32
Matthias
Hallo Steffen,
versuch mal, die Vergabe der Dateinummer Excel zu überlassen:

Sub AnlegenExportDatei(bStatus As Boolean, sZielDatei As String)
Dim ff As Integer
Dim sPrintString As String
On Error GoTo FehlerBeiDateiAnlegen
ff = FreeFile()
Open sZielDatei For Output As #ff
sPrintString = "KERPLAN;FILIALE;MARKE;KOST;KOTRP;KOTRHE;KOTRHD;PERIODE;VWEG;EVWEG;  _
_
WAEHRUNG;WERT"
Print #ff, sPrintString
Close #ff
bStatus = True
Exit Sub
FehlerBeiDateiAnlegen:
bStatus = False
End Sub


Gruß Matthias

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige