Quelles sont.NumberFormat Options dans Excel VBA?

pouvez-vous s'il vous plaît me faire savoir ce qui sont les .NumberFormat options de format dans Excel VBA? Comme vous le savez, Excel 2010 prend en charge les types suivants:

enter image description here

je sais que l'on peut définir par exemple le type de Texte:

.NumberFormat ="@"

ou de numéro de:

.NumberFormat = "0.00000"

pouvez-vous s'il vous plaît me faire savoir quelles sont les autres options pour les types en VBA?

40
demandé sur ZygD 2013-12-18 05:36:18

4 réponses

notez que cela a été fait sur Excel pour Mac 2011 mais devrait être le même pour Windows

Macro:

Sub numberformats()
  Dim rng As Range
  Set rng = Range("A24:A35")
  For Each c In rng
    Debug.Print c.NumberFormat
  Next c
End Sub

Résultat:

General     General
Number      0
Currency    $#,##0.00;[Red]$#,##0.00
Accounting  _($* #,##0.00_);_($* (#,##0.00);_($* "-"??_);_(@_)
Date        m/d/yy
Time        [$-F400]h:mm:ss am/pm
Percentage  0.00%
Fraction    # ?/?
Scientific  0.00E+00
Text        @
Special     ;;
Custom      #,##0_);[Red](#,##0)

(je viens de choisir une entrée aléatoire pour custom)

59
répondu doovers 2013-12-18 01:58:04

grâce à cette question (et ses réponses), j'ai découvert un moyen facile d'obtenir la chaîne de caractères NumberFormat exacte pour pratiquement n'importe quel format que Excel A à offrir.


Comment obtenir la chaîne NumberFormat pour tout format de nombre Excel


Etape 1: Dans l'interface utilisateur, définissez une cellule à l'NumberFormat vous souhaitez utiliser.

I manually formatted a cell to Chinese (PRC) currency

dans mon exemple, j'ai sélectionné la devise chinoise (PRC) des options contenues dans la boîte bascule" format des numéros de Compte".

Etape 2: élargissez la liste déroulante des formats de nombres et sélectionnez " Plus de Formats de nombres...".

Open the Number Format dropdown

Etape 3: Dans l'onglet Nombre, dans la Catégorie, cliquez sur "personnaliser".

Click Custom

la section" exemple " montre le formatage de devise Chinois (PRC) que j'ai appliqué.

la boîte de saisie" Type " contient NumberFormat chaîne que vous pouvez utiliser programmatically.

ainsi, dans cet exemple, le numéro de ma cellule monnaie chinoise (PRC) est le suivant:

_ [$¥-804]* #,##0.00_ ;_ [$¥-804]* -#,##0.00_ ;_ [$¥-804]* "-"??_ ;_ @_ 

si vous faites ces pas pour chaque numéro que vous désirez, alors le monde est à vous.

j'espère que cette aide.

15
répondu Kevin Lee Garner 2014-06-18 19:47:07

Dans Excel, vous pouvez définir un Range.NumberFormat à n'importe quelle chaîne de caractères que vous trouverez dans la sélection de format "personnalisé". Essentiellement, vous avez deux choix:

  1. Général pour aucun format particulier.
  2. personnalisé chaîne formatée, comme "$#,##0", pour spécifier exactement le format que vous utilisez.
3
répondu DougM 2014-05-14 15:45:25

dovers nous donne sa grande réponse et basé sur ce que vous pouvez essayer de l'utiliser comme

public static class CellDataFormat
{
        public static string General { get { return "General"; } }
        public static string Number { get { return "0"; } }

        // Your custom format 
        public static string NumberDotTwoDigits { get { return "0.00"; } }

        public static string Currency { get { return "$#,##0.00;[Red]$#,##0.00"; } }
        public static string Accounting { get { return "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)"; } }
        public static string Date { get { return "m/d/yy"; } }
        public static string Time { get { return "[$-F400] h:mm:ss am/pm"; } }
        public static string Percentage { get { return "0.00%"; } }
        public static string Fraction { get { return "# ?/?"; } }
        public static string Scientific { get { return "0.00E+00"; } }
        public static string Text { get { return "@"; } }
        public static string Special { get { return ";;"; } }
        public static string Custom { get { return "#,##0_);[Red](#,##0)"; } }
}
2
répondu Academy of Programmer 2018-04-03 04:12:48