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

VBA: 2 gleiche Formeln => 2 verschiedene Ergebniss

Forumthread: VBA: 2 gleiche Formeln => 2 verschiedene Ergebniss

VBA: 2 gleiche Formeln => 2 verschiedene Ergebniss
22.02.2006 14:56:36
Ina
Hallo Exceler,
ich bin auf ein Problem gestoßen und habe es zu folgendem vereinfacht:
(Inhalt der Datei "C:\Textdatei.txt" ist "AZxxx")

Private Sub CommandButton1_Click()
Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.OpenTextFile("C:\Textdatei.txt", 1, False, TristateFalse)
Cells(1, 1) = Asc(f.read(1))
Cells(1, 2) = Asc(f.read(1))
f.Close
Set f = Nothing
Set f = fs.OpenTextFile("C:\Textdatei.txt", 1, False, TristateFalse)
Cells(1, 3) = (Asc(f.read(1)) * 2) + (Asc(f.read(1)) * 3)
f.Close
Set f = Nothing
Set f = fs.OpenTextFile("C:\Textdatei.txt", 1, False, TristateFalse)
Cells(1, 4) = (Asc(f.read(1)) * 2 ^ 1) + (Asc(f.read(1)) * 3 ^ 1)
f.Close
Set f = Nothing
Set fs = Nothing
End Sub

Ausgegeben werden 65, 90, 400 und 375.
65 = Asc("A") => richtig
90 = Asc("Z") => richtig
400 = 65 * 2 + 90 * 3 => richtig
375 = 65 * 2 ^ 1 + 90 * 3 ^ 1 => falsch (400 wäre richtig, weil 2 ^ 1 = 2 und 3 ^ 1 = 1)
Auf 375 kommt man wenn man 65 und 90 vertauscht. Das hieße aber es würde falsch herum aus der Datei gelesen werden. Das ist aber nicht generell so, da ja zumindest die Zellen A1, B1 und auch C1 die richtigen Werte enthalten. Auch "(Asc(f.read(1)) & (Asc(f.read(1))" würde richtigerweise "6590" liefern.
Wenn ich bei der zweiten Berechnung eines der beiden "Asc(f.read(1))" durch die entsprechende Konstante (65 bzw. 90) ersetze dann kommt das richtige Ergebnis 400.
Wenn ich alle "Asc(f.read(1))" durch "Asc("A")" bzw. "Asc("Z")" ersetze dann kommt ebenfalls das richtige Ergebnis 400.
Wenn ich VBS und MsgBox anstatt VBA und Zellen benutze, dann funktioniert das Script so wie es ist.
Handelt es sich hier nun um eine Bug von Excel oder um einen Denkfehler meinerseits?
Gruß und Danke
Ina
Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA: 2 gleiche Formeln => 2 verschiedene Ergebniss
22.02.2006 16:10:53
Luschi
Hallo Ina,
ich würde folgende Schritte ausführen:
- Öffnen der Textdatei
- jeden Lesevorgang in 1 Variable schreiben
- Schließen der Textdatei
- Weiterrechnen mit den Variablen
Gruß von Luschi
aus klein-Paris
Anzeige
;

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