8
votes

Comment formater la colonne au format numérique dans une feuille Excel?

ci-dessous est le code VBA. La feuille2 contient toutes les valeurs du format général. Après avoir exécuté le code, les valeurs de la colonne «C» de la feuille3 contiennent des valeurs exponentielles pour les nombres de 13 chiffres ou plus.

Que doit être fait de sorte que la colonne 'C' de la feuille3 ne contient pas de valeurs exponentielles? xxx


4 commentaires

S'il vous plaît expliquer un peu plus. Vous voulez juste formater des chiffres dans certaines colonnes ou quoi?


Oui Vous voulez formater la colonne requise uniquement


Je ne vois pas cela à 13 ans mais plutôt au 15ème chiffre. Voulez-vous le résultat pour afficher ou faire des mathématiques? enregistre une chaîne de texte et convertir une valeur pour l'utiliser possible?


OpenOffice peut ne pas avoir la limitation de 15 chiffres


4 Réponses :


27
votes

Ceci formatera la colonne A comme texte, B en tant que général, C en tant que numéro.

Sub formatColumns()
 Columns(1).NumberFormat = "@"
 Columns(2).NumberFormat = "General"
 Columns(3).NumberFormat = "0"
End Sub


1 commentaires

J'essaie de le faire pour une feuille particulière dans un classeur spécifique par classeur ("b.xlsm"). ActiveHeet.Columns ("1"). NumberFormat = "0" & Ceci ne semble pas faire pour moi. Des idées?



1
votes

Si votre "numéro" de 13 chiffres est vraiment du texte, vous n'avez pas l'intention de faire de mathématiques dessus, vous pouvez la précéder avec une apostrophe xxx pré>

mais je ne fais pas t Voir comment un numéro de 13 chiffres aurait jamais dépassé la déclaration IF car elle serait toujours supérieure à 1000. Voici une version alternative P>

Sub CommandClick()

    Dim rCell As Range
    Dim rNext As Range

    For Each rCell In Sheet2.Range("C1:C30000").Cells
        If rCell.Value >= 100 And rCell.Value < 1000 Then
            Set rNext = Sheet3.Cells(Sheet3.Rows.Count, 1).End(xlUp).Offset(1, 0)
            rNext.Resize(1, 3).Value = rCell.Offset(0, -2).Resize(1, 3).Value
        End If
    Next rCell

End Sub


0 commentaires

0
votes

Désolé de cogner une ancienne question, mais la réponse est de compter la longueur du personnage de la cellule et non de sa valeur. XXX

espère que cela aide. Acclamations


0 commentaires

0
votes

activeworkbook.worksheets ("non SMTF"). Colonnes ("C: C"). NumberFormat = "@" Utilisez ce fonctionnement approprié


0 commentaires