Bonjour,
J'aimerais ajouter un 0 devant les chiffres 0 à 9 dans les colonnes A à B, voir fichier Excel avec une petite Macro.
Pouvez vous m'aider , me corriger et m'expliquer .
Merci d'avance pour votre aide.
Cdlt.
Version imprimable
Bonjour,
J'aimerais ajouter un 0 devant les chiffres 0 à 9 dans les colonnes A à B, voir fichier Excel avec une petite Macro.
Pouvez vous m'aider , me corriger et m'expliquer .
Merci d'avance pour votre aide.
Cdlt.
Bonjour,
Nul besoin de classeur pour répondre. La publication du code suffit amplement avec éventuellement l'illustration partielle des données
Il existe une solution sans VBA en allant dans le format personnalisé et écrire "00" mais la valeur contenue dans la cellule restera celle encodée.
Bonjour monsieur Tulliez,
Considérant les chiffres 0 à 9 , comme texte , l'ecriture "00" dans le format personnalisé fonctionne seulement quand j'écris ces chiffres dans la cellule.
Désolé, j'ai une liste existante de chiffres 0 à 9 en format texte que j'aimerai ajouter le zéro avant.Merci d'avance pour une explication.Cdlt
Bonjour,
Une fonction peut-être?
A appeler comme ceci :Code:
1
2
3 Function DeuxChiffres(strNombre As String) As String DeuxChiffres = Right("00" & strNombre, 2) End Function
Code:
1
2
3
4
5
6 Dim strResult As String strResult = DeuxChiffres(Range("A1").Value) 'ou : strResult = DeuxChiffres("12") 'ou : strResult = DeuxChiffres("9")
Bonjour monsieur Pijaku,
Etant novice en VBA, dites moi comment dois je transcrire vos codes après avoir ouvert Microsoft Visual pour applications [Module1].
Votre aide me sera d'un grand secours pour ajouter un zéro devant des chiffres dans une colonne.
Cordialement
Bonjour,
1- la méthode décrite par Philippe Tulliez reste la meilleure...
2- Voici un exemple de boucle sur les cellules non vides de la colonne D (à copier/coller dans Module1) (pour le lancer : Alt+F8...)
Adapter' le nom de la feuille concernée et la lettre de la colonne
Précision, ce code n'est pas le meilleur, le mieux optimisé, le plus rapide, mais il va fonctionner et il est relativement facile à comprendre.Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 Sub BoucleColonneD() Dim i As Long, DL As Long With Sheets("Feuil1") '******************* A ADAPTER nom de la feuille DL = derlig_reelle(.Columns(4)) '******************* A ADAPTER Columns(4) = colonne D For i = 2 To DL '******************* A ADAPTER commence en D2 et fini en Dxxxxx .Range("D" & i).Value = DeuxChiffres( .Range("D" & i).Value) '******************* A ADAPTER D = colonne D Next End With End Sub Private Function DeuxChiffres(strNombre As String) As String DeuxChiffres = Right("00" & strNombre, 2) End Function Private Function derlig_reelle(Plage As Range) As Long If WorksheetFunction.CountA(Plage) = 0 Then derlig_reelle = Plage.Cells(1, 1).Row: Exit Function derlig_reelle = Plage.Find("*", , , , , xlPrevious).Row End Function
En supposant que tes données sont en colonne A et que la colonne B est vide.
Tu mets en B1 la formule ="0"&A1.
Tu copies B1 vers le bas autant que nécessaire.
Tu sélectionnes la colonne B > Ctrl+C
Tu sélectionnes la colonne A > Clic droit > Coller valeur
Tu supprimes la colonne B
Pas besoin d'une macro pour remplacer une opération qui dure 30 s.
Bonjour monsieur Pijaku,
Merci bcp, je vais apprendre et essayer de comprendre chaque ligne de Code de ce programme.
Je ferme le dossier le considérant comme Résolu.
Cordialement.
Bonjour monsieur Menhir,
Merci de votre réponse, le vais le tester sur mes colonnes de mon tableau .
Cordialement,