NumberFormatting (Objekt)

<< Click to Display Table of Contents >>

NumberFormatting (Objekt)

Zugriffspfade:

Application à Workbooks à Item à Sheets à Item à Range à NumberFormatting

Application à Workbooks à ActiveSheet à Range à NumberFormatting

Application à ActiveWorkbook à ActiveSheet à Range à NumberFormatting

Application à ActiveSheet à Range à NumberFormatting

Statt "Range" können Sie auch alle anderen Objekte und Eigenschaften angeben, die ein Range-Objekt zurückgeben: ActiveCell, Selection, Rows(n), Columns(n) und Cells(x, y). Beispiele für diese Zugriffspfade finden Sie beim Range-Objekt.

 1  Beschreibung

Mit dem NumberFormatting-Objekt können Sie das Zahlenformat eines Bereichs auslesen und ändern (entsprechend den Optionen auf der Karteikarte Zahlenformat im Dialogfenster für die Zelleneigenschaften).

 2  Zugriff auf das Objekt

NumberFormatting ist ein Tochterobjekt des Range-Objekts – zu jedem Range-Objekt existiert genau ein NumberFormatting-Objekt.

 3  Eigenschaften, Objekte, Sammlungen und Methoden

Eigenschaften:

Type (Defaulteigenschaft)

DateFormat

CustomFormat

Currency

Accounting

Digits

NegativeRed

SuppressMinus

SuppressZeros

ThousandsSeparator

 

Objekte:

Application Application

Parent Range

Type (Eigenschaft)

Datentyp: Long (PmNumberFormatting)

Liest oder setzt das Zahlenformat der Zellen des Bereichs. Mögliche Werte:

pmNumberGeneral      = 0 ' Standard

pmNumberDecimal      = 1 ' Zahl

pmNumberScientific   = 2 ' Wissenschaftlich

pmNumberFraction     = 3 ' Bruch (für den Nenner siehe Digits-Eigenschaft)

pmNumberDate         = 4 ' Datum/Uhrzeit (siehe Hinweis)

pmNumberPercentage   = 5 ' Prozent

pmNumberCurrency     = 6 ' Währung (siehe Hinweis)

pmNumberBoolean      = 7 ' Wahrheitswert

pmNumberCustom       = 8 ' Benutzerdefiniert (siehe Hinweis)

pmNumberText         = 9 ' Text

pmNumberAccounting   = 10 ' Buchhaltung (siehe Hinweis)

Hinweis: Die Formate pmNumberDate, pmNumberCurrency, pmNumberAccounting und pmNumberCustom dürfen Sie nur auslesen, nicht aber setzen. Zum Setzen verwenden Sie die Eigenschaften DateFormat, Currency, Accounting und CustomFormat (siehe unten).

DateFormat (Eigenschaft)

Datentyp: String

Liest oder setzt das Datums-/Zeitformat der Zellen des Bereichs.

Beispiel:

' Zelle A1 als Datum formatieren

pm.ActiveSheet.Range("A1").NumberFormatting.DateFormat = "TT.MM.JJJJ"

Informationen zu den verfügbaren Formatcodes finden Sie in der Online-Hilfe von PlanMaker, Stichwort "Benutzerdefinierte Zahlenformate".

Hinweis: Die Buchstabenkennungen für die Bestandteile eines Datumsformats sind sprachspezifisch. Läuft PlanMaker mit deutscher Benutzeroberfläche, ist TT.MM.JJJJ ein gültiges Datumsformat. Bei englischer Benutzeroberfläche müssten Sie stattdessen DD.MM.YYYY angeben, bei französischer Oberfläche JJ.MM.AAAA etc.

Wenn Sie den in einer Zelle verwendeten Datumsstring auslesen möchten, müssen Sie zuerst prüfen, ob eine Zelle überhaupt als Datum formatiert ist – ansonsten schlägt die Eigenschaft fehl:

' Den Datumsstring in Zelle A1 anzeigen

With pm.ActiveSheet.Range("A1")

 If .NumberFormatting.Type = pmNumberDate Then

                 MsgBox .NumberFormatting.DateFormat

 Else

                 MsgBox "Zelle A1 ist nicht als Datum formatiert."

 End If

End With

CustomFormat (Eigenschaft)

Datentyp: String

Liest oder setzt die benutzerdefinierte Formatierung der Zellen des Bereichs.

Beispiel:

' Zelle A1 in einem benutzerdefinierten Format formatieren

pm.ActiveSheet.Range("A1").NumberFormatting.CustomFormat = "000000"

Currency (Eigenschaft)

Datentyp: String

Liest oder setzt das Währungsformat der Zellen des Bereichs.

Sie übergeben der Eigenschaft den ISO-Kenner der gewünschten Währung. Beim Auslesen erhalten Sie analog den ISO-Kenner zurück. Einige gebräuchliche ISO-Kenner:

EUR   Euro

USD   US Dollar

CAD   Kanadische Dollar

AUD   Australische Dollar

JPY   Japanische Yen

RUB   Russische Rubel

CHF   Schweizer Franken

Eine Liste aller ISO-Kenner (von denen PlanMaker viele, jedoch nicht alle unterstützt) finden Sie in folgendem Wikipedia-Artikel: http://en.wikipedia.org/wiki/ISO_4217.

Beispiel:

' Zelle A1 in der Währung "Euro" formatieren

pm.ActiveSheet.Range("A1").NumberFormatting.Currency = "EUR"

Wenn Sie den in einer Zelle verwendeten Währungsstring auslesen möchten, müssen Sie zuerst prüfen, ob eine Zelle überhaupt als Währung formatiert ist – ansonsten schlägt die Eigenschaft fehl:

' Den Währungsstring in Zelle A1 anzeigen

With pm.ActiveSheet.Range("A1")

 If .NumberFormatting.Type = pmNumberCurrency Then

                 MsgBox .NumberFormatting.Currency

 Else

                 MsgBox "Zelle A1 ist nicht als Währung formatiert."

 End If

End With

Accounting (Eigenschaft)

Datentyp: String

Liest oder setzt das Buchhaltungsformat für die Zellen des Bereichs.

Genau wie bei der Eigenschaft Currency (siehe dort) übergeben Sie der Eigenschaft den ISO-Kenner der gewünschten Währung. Beim Auslesen erhalten Sie analog den ISO-Kenner zurück.

Beispiel:

' Zelle A1 im Buchhaltungsformat mit der Währung "Euro" formatieren

pm.ActiveSheet.Range("A1").NumberFormatting.Accounting = "EUR"

Wenn Sie den in einer Zelle verwendeten Buchhaltungsstring auslesen möchten, müssen Sie zuerst prüfen, ob eine Zelle überhaupt im Buchhaltungsformat formatiert ist – ansonsten schlägt die Eigenschaft fehl:

' Den Währungsstring in Zelle A1 anzeigen (Format: Buchhaltung)

With pm.ActiveSheet.Range("A1")

 If .NumberFormatting.Type = pmNumberAccounting Then

                 MsgBox .NumberFormatting.Accounting

 Else

                 MsgBox "Zelle A1 ist nicht im Format Buchhaltung formatiert."

 End If

End With

 

Digits (Eigenschaft)

Datentyp: Long

Liest oder setzt in den Zellen des Bereichs die Zahl der anzuzeigenden Nachkommastellen.

Diese Eigenschaft kann bei folgenden Zahlenformaten eingesetzt werden:

Zahl (pmNumberDecimal)

Wissenschaftlich (pmNumberScientific)

Prozent (pmNumberPercentage)

Währung (pmNumberCurrency)

Buchhaltung (pmNumberAccounting)

Beispiel:

' Zelle A1 mit 4 Nachkommastellen formatieren

pm.ActiveSheet.Range("A1").NumberFormatting.Digits = 4

Auch beim Zahlenformat "Bruch" (pmNumberFraction) können Sie die Eigenschaft einsetzen, hier legt sie aber den Nenner des Bruchs fest:

' Zelle A1 als Bruch mit Nenner 8 formatieren

With pm.ActiveSheet.Range("A1")

 .NumberFormatting.Type = pmNumberFraction

 .NumberFormatting.Digits = 8

End With

Beim Zahlenformat "Bruch" darf Digits zwischen 0 und 1000 liegen, bei allen anderen Zahlenformaten zwischen 0 und 15.

NegativeRed (Eigenschaft)

Datentyp: Boolean

Liest oder setzt in den Zellen des Bereichs die Einstellung "Negative Werte in Rot", entsprechend der gleichnamigen Option auf der Karteikarte Zahlenformat im Dialogfenster für die Zelleneigenschaften.

SuppressMinus (Eigenschaft)

Datentyp: Boolean

Liest oder setzt in den Zellen des Bereichs die Einstellung "Minuszeichen unterdrücken", entsprechend der gleichnamigen Option auf der Karteikarte Zahlenformat im Dialogfenster für die Zelleneigenschaften.

SuppressZeros (Eigenschaft)

Datentyp: Boolean

Liest oder setzt in den Zellen des Bereichs die Einstellung "Null nicht anzeigen", entsprechend der gleichnamigen Option auf der Karteikarte Zahlenformat im Dialogfenster für die Zelleneigenschaften.

ThousandsSeparator (Eigenschaft)

Datentyp: Boolean

Liest oder setzt in den Zellen des Bereichs die Einstellung "Tausendertrennzeichen", entsprechend der gleichnamigen Option auf der Karteikarte Zahlenformat im Dialogfenster für die Zelleneigenschaften.

Application (Zeiger auf Objekt)

Liefert das Application-Objekt.

Parent (Zeiger auf Objekt)

Liefert das übergeordnete Objekt, also ein Objekt vom Typ Range.

Beispiel für das NumberFormatting-Objekt

Im nachfolgenden Beispiel wird der Bereich A1 bis C3 als Prozentwerte mit 2 Nachkommastellen formatiert.

Sub Main

 Dim pm as Object

 

 Set pm = CreateObject("PlanMaker.Application")

 pm.Visible = True

 

 With pm.ActiveSheet.Range("A1:C3")

                 .NumberFormatting.Type = pmNumberPercentage

                 .NumberFormatting.Digits = 2

 End With

 

 Set pm = Nothing

End Sub