nombre format spécial

  • Initiateur de la discussion Initiateur de la discussion matrix
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

matrix

XLDnaute Occasionnel
Bonjour à tous,

J'aurais encore besoin de votre aide s.v.p.

Dans mon fichier Excel, dans la colonne A, se trouve des chiffres. Je voudrais faire en sorte qu'en cliquant sur le bouton VBA dans ma feuille, qu'au lieu que le chiffre par exemple 59, devienne 00059. Il doit toujours avoir un maximum de 5 chiffres. Comme dans l'exemple 1059, il deviendrait 01059.

Par la suite, dans la colonne B, se trouve le local. Donc une fois que les numéros de la colonne A ont 5 chiffres de long, dans la colonne C, il va jumeler la valeur de la colonne A avec la valeur de la colonne B.

Exemple: colonne A = 00059 et dans la colonne B = C. Résultat de la colonne C de la même ligne:00059C.

Comment faire s.v.p?

Merci pour votre aide.
 

Pièces jointes

Re : nombre format spécial

Bonsoir matrix,

Sans macro et dans la colonne C, comme tu le demandes : =TEXTE(A5;"00000")&B5

Double clic sur le coin en bas à droite de la cellule et toute la plage est alimentée de la formule. Sinon, aussi, la tirer vers le bas.

Bonne soirée.

Jean-Pierre
 
Re : nombre format spécial

Je viens de trouver une façons de faire:
Code:
Private Sub CommandButton1_Click()
'Colonne A en 5 chiffres
    Columns("A:A").NumberFormat = "00000"
     
    Dim myRange As Range
Dim cell As Range
Set myRange = ActiveSheet.Range("A3:A200")
    For Each cell In myRange
If cell(1, 1) > 0 Then cell(1, 3) = cell(1, 1).Text & cell(1, 2).Value
Next cell
     
End Sub

Je cherche juste a ajouter
Code:
    Columns("A:A").NumberFormat = "00000"

dans cette partie là:
Code:
If cell(1, 1) > 0 Then cell(1, 3) = cell(1, 1).Text & cell(1, 2).Value
 
Re : nombre format spécial

Bonsoir,

Un formatage automatique à la saisie (à coller via bouton droit sur l'onglet/visualiser le code)

Code:
Private Sub Worksheet_SelectionChange(ByVal Cellule As Range)
   
 If Cellule.Column <> 1 Then Exit Sub

 Application.EnableEvents = False

 Cellule.NumberFormat = "@"
 Cellule = String(5 - Len(Cells(1, 1)), "0") & Cells(1, 1)
 ' ou plus simple CEllule=Format( Cells(ligne, colonne), "00000")
 
 Application.EnableEvents = True

End Sub

Si vous faite une macro spécifique, il faut que la cellule soit en format Texte

Code:
  Cells(ligne, colonne).NumberFormat = "@"
  Cells(ligne, colonne) = Format( Cells(ligne, colonne), "00000")
 
 Cellule = String(5 - Len(Cells(1, 1)), "0") & Cells(1, 1)


GIBI
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
10
Affichages
232
Réponses
5
Affichages
377
Réponses
8
Affichages
646
Retour