Funktionsreferenz

_ExcelNumberFormat

Wendet das festgelegte Format den Zellen in dem festgelegten R1C1 Bereich an.

#Include <Excel.au3>
_ExcelNumberFormat($oExcel, $sFormat, $sRangeOrRowStart [, $iColStart = 1 [, $iRowEnd = 1 [, $iColEnd = 1]]])

 

Parameter

$oExcel Ein Excel Objekt welches durch einen vorherigen Aufruf von _ExcelBookOpen() oder _ExcelBookNew() geöffnet wurde
$sFormat Der Formatstring der auf den festgelegten Bereich angewendet werden soll (siehe Bemerkungen unten)
$sRangeOrRowStart Entweder ein A1 Bereich oder eine Integer Zeilennummer um es im Format R1C1 zu lesen
$iColStart [optional] Die erste Spalte für das Nummernformat (links)
$iRowEnd [optional] Die letzte Zeile für das Nummernformat (unten)
$iColEnd [optional] Die letzte Spalte für das Nummernformat (rechts)

 

Rückgabewert

Erfolg: 1
Fehler: 0 und setzt @error
@error: 0 - Kein Fehler
1 - festgelegtes Objekt existiert nicht
2 - Die erste Zeile oder Spalte ist ungültig
3 - Die letzte Zeile oder Spalte ist ungültig
@extended: 0 - Zeile ungültig
1 - Spalte ungültig

 

Bemerkungen

Für mehr Informationen über mögliche Formatstrings die mit dieser Funktion verwendet werden können, kann dieses Buch zur Hilfe genommen werden:
"Programming Excel With VBA and .NET," von Steven Saunders und Jeff Webb, ISBN: 978-0-59-600766-9

 

Verwandte Funktionen

 

Beispiel


; ***************************************************************
; Beispiel 1 – Schreibt mit einer Schleife in eine Zelle
; Nach dem Öffnen einer Arbeitsmappe und Rückgabe des Objekt-Identifizierers: Formatiere die Zahlen, speichere die Datei und dann schließe die Datei
; *****************************************************************
#include <Excel.au3>

Local $oExcel = _ExcelBookNew() ; Erstellt eine neue Arbeitsmappe und macht sie sichtbar

; Wir füllen die Zellen in einer einfachen Schleife mit Zufallszahlen
For $y = 1 To 10
    For $x = 1 To 10
        _ExcelWriteCell($oExcel, Random(1000, 10000), $x, $y) ; Viele Zufallszahlen für die Datei
    Next
Next

$sFormat = "#.##0,00 €" ; Formatiert die Zellen als String _ExcelNumberFormat, um sie als €-Währung anzuzeigen
_ExcelNumberFormat($oExcel, $sFormat, 1, 1, 5, 5) ; Start in Zeile 1, Spalte 1, Ende in Zeile 5, Spalte 5

MsgBox(0, "Verlassen", "Drücke OK, um die Datei zu speichern und das Programm zu verlassen")
_ExcelBookSaveAs($oExcel, @TempDir & "\Temp.xls", "xls", 0, 1) ; Nun speichern wir die Datei in ein temporäres Verzeichnis. Möglicherweise werden existierende Dateien dabei überschrieben!
_ExcelBookClose($oExcel) ; Zum Abschluss verlassen wir das Programm

; ***************************************************************
; Beispiel 2 - Schreibt mit einer Schleife in eine Zelle
; Nach dem Öffnen einer Arbeitsmappe und Rückgabe des Objekt-Identifizierers: Formatiere die Zahlen, speichere die Datei und dann schließe die Datei
; *****************************************************************
#include <Excel.au3>

Local $oExcel = _ExcelBookNew() ; Erstellt eine neue Arbeitsmappe und macht sie sichtbar
Local $aFormatExamples[5] = ["Format-Beispiele:", "Standard", "hh:mm:ss", "#.##0,00 €", "[Rot](#.##0,00 €)"] ; Array für die Überschriften und die Format-Strings

For $i = 0 To UBound($aFormatExamples) - 1 ; Verwende eine Schleife, um die Überschriften zu schreiben
    _ExcelWriteCell($oExcel, $aFormatExamples[$i], 1, $i + 1) ; $i+1, damit der 0-basierende Index und die Spaltennummer übereinstimmen
Next

; Wir füllen die Zellen in einer einfachen Schleife mit Zufallszahlen
For $y = 2 To 5 ; Start in Spalte 2
    For $x = 2 To 10
        _ExcelWriteCell($oExcel, Random(1000, 10000), $x, $y) ; Viele Zufallszahlen für die Datei
    Next
Next

ToolTip("Formatiere die Spalten...")
Sleep(3500) ; Pause, damit der Benutzer das Ergebnis betrachten kann

; Wir verwenden eine einfache Schleife zum Formatieren
; Jede Spalte erhält ein anderes Format
For $i = 1 To UBound($aFormatExamples) - 1
    _ExcelNumberFormat($oExcel, $aFormatExamples[$i], 2, $i + 1, 11, $i + 1)
Next

$oExcel.Columns.AutoFit ; Anpassen der Spalten, um das Format besser zu sehen
$oExcel.Rows.AutoFit ; Anpassen der Zeilen, um das Format besser zu sehen
ToolTip("Fertig!")

MsgBox(0, "Verlassen", "Drücke OK, um die Datei zu speichern und das Programm zu verlassen")
_ExcelBookSaveAs($oExcel, @TempDir & "\Temp.xls", "xls", 0, 1) ; Nun speichern wir die Datei in ein temporäres Verzeichnis. Möglicherweise werden existierende Dateien dabei überschrieben!
_ExcelBookClose($oExcel) ; Zum Abschluss verlassen wir das Programm