Numberformat et tableau

Bonjour,

Petite question pour les pros

Je souhaiterai savoir si il est possible de faire un numberformat sur un tableau en mémoire, sa ne semble pas fonctionner, ou dois-je passer par un for each ?

Merci pour vos lumière

Sub FormatRoster()

    Dim Dl As Long, sht As Variant, i As Long

    Dl = Sheet8.Cells(Rows.CountLarge, 1).End(xlUp).Row

'    Range("A2:A" & Dl).NumberFormat = "0000000"

    sht = Sheet8.Range("A2:A" & Dl)

    For i = LBound(sht, 1) To UBound(sht, 1)
        If Len(sht(i, 1)) = 5 Then sht(i, 1) = sht(i, 1).NumberFormat = "000000"
        If Len(sht(i, 1)) = 6 Then sht(i, 1) = sht(i, 1).NumberFormat = "0000000"

        Debug.Print sht(i, 1)
    Next i

    Sheet8.Range("A2:A" & Dl) = sht

End Sub

bonjour,

NumberFormat est purement visuel et ne change pas la value de la cellule.

Si tu veux afficher la valeur affichée il faut écrire :

?ActiveCell.Text

Mais dans ce cas il faudrait charger ton Array avec un For each car il n'est pas possible de charger un Array de la manière suivante :

Dim Arr
Arr = Selection.Text 'Ne produit pas d'erreur mais ne renvoit pas un array mais Null

A+

Bonjour,

Ok, je vois mieux, je vais changé de façon de faire alors

Merci à toi

Rechercher des sujets similaires à "numberformat tableau"