VBA 2002: Format( ... NumberFormat) erzeugt falsche Ausgabe

25/01/2008 - 17:44 von Peter Schleif | Report spam
Hallo NG.

Die VBA-Funktion Format() erzeugt bei mir eine komische Ausgabe, wenn
ich ihr als Format die Eigenschaft .NumberFormat der Zelle übergebe.
Allerdings nur, wenn in der Zelle eine ganze Zahl und das Format auf
Standard (General) steht.

++++
| 2 | Ge0eral | 2 |
++++

Ist das bei Euch (2003/2007) auch so? Woran liegt das?

Wenn ich im Code "General" durch "@" ersetze geht es.

Peter


Sub test()

[A1] = 2

nf1 = [A1].NumberFormat
nf2 = IIf([A1].NumberFormat = "General", "@", [A1].NumberFormat)

[B1] = Format([A1], nf1)
[C1] = Format([A1], nf2)

End Sub
 

Lesen sie die antworten

#1 Dr. Eckehard Pfeifer
25/01/2008 - 18:47 | Warnen spam
Hallo, komisch ist das wohl nicht, da die Patterns für die
Format-Funktion integriert (benannt) oder benutzerdefiniert sind. Bei
den integrierten kommt "General" nicht vor (deswegen das n für die
Minuten, die aber eben nicht vorkommen muessen. Nimm "General Number"
und manches sollte besser gehen.

MfG EP
Entwicklung - Beratung - Training (www.dr-e-pfeifer.net)
XL-Funktionsverzeichnis (ISBN: 3860636898)
MS Office 2003 - Das Entwicklerbuch (ISBN 3-86063-688-X)

Ähnliche fragen