Format personnalisé monétaire avec une étoile

Résolu
fabiendag - 12 juin 2013 à 17:00
 fabiendag - 13 juin 2013 à 12:03
Bonjour a tous,
j'ai un soucis avec mon code VBA sur excel. En fait, j'ai écrit ce code pour pouvoir affiché une valeur entière si la cellule contient un nombre entier et une valeur à deux décimales si la cellule ne contient pas un nombre entier. Le problème est que j'ai certaines de mes cellules contiennent une * à la fin.
J'arrive bien à faire quand même à mettre le sigle "euro", mais l'étoile ne veut pas se mettre.
Si quelqu'un a une idée.
For ligne =  19 To 22
    For colonne = 2 To 12
        If IsNumeric(Cells(ligne, colonne)) = True Then
            If Cells(ligne, colonne) = Int(Cells(ligne, colonne)) Then
                Cells(ligne, colonne).NumberFormat = "# ### €"
            Else
                Cells(ligne, colonne).NumberFormat = "# ###.00 €"
            End If
        Else
            Cells(ligne, colonne) = Left(Cells(ligne, colonne), Len(Cells(ligne, colonne)) - 1)
            If Left(Cells(ligne, colonne), Len(Cells(ligne, colonne)) - 1) = Int(Left(Cells(ligne, colonne), Len(Cells(ligne, colonne)) - 1)) Then
                 Cells(ligne, colonne).NumberFormat = "#\ ###\ \€ " & "" * "" 
            Else
                Cells(ligne, colonne).Format  = "#\ ###\.00 \€ " & "" * ""
            End If
        End If
    Next colonne
Next ligne


En fait le problème se situe sur les deux lignes en gras, il me met bien la valeur de la cellule en format monétaire avec le sigle €, mais ne m'ajoute pas l'étoile à la fin

Fabien

8 réponses

cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
12 juin 2013 à 18:27
Peut-être que tu pourrais essayer avec Chr(42)
Cells(ligne, colonne).Format = "#\ ###\.00 \€ " & Chr(42)

MPi²
Pour ceux qui programment sous Office, n'oubliez pas qu'il existe un forum dédié à ces applications VBA....... ICI
3
Rejoignez-nous