Modification d'une chaine de caracteres - VBA

LeBakalite -  
LeBakalite Messages postés 3 Statut Membre -
Bonjour,

J'ai besoin d'aide pour un probleme Excel.

J'ai une colonne de nombres a 8 chiffres (Ex. 41004080) dont je me sert sous format nombre pour effectuer des VLOOKUP().

Je désire afficher cette colonne avec un espace au milieu et les 4 derniers chiffres en gras (Ex. 4100 4080)
A voir également:

1 réponse

LeBakalite Messages postés 3 Statut Membre 1
 
- Suite du message -

Si je transforme cette colonne de chiffre en texte avec la fonction TEXT() puis utilise la petite sub suivante:

Sub PartialBold()
Range("C:C").Characters(5, 4).Font.Bold = True
End Sub

J'arrive a un petit quelquechose. Cependant c'est fait a la main, c'est pénible quand il faut le répéter sur différent fichiers et sur des milliers de lignes.

J'aimerais automatiser tout cela dans une macro, c'est a dire:

- Passer la colonne de nombres en texte
- Insérer un espace au milieu
- Passer les 4 dernier chiffres en gras

C'est la que je me perds...

Merci pour votre aide,

Lebak
0
LeBakalite Messages postés 3 Statut Membre 1
 
Solution un peu batarde:

- On a donc la colonne J qui contient des nombres

- Créer une colonne K qui inclut un espace avec =CONCATENATE(LEFT(J5,4)," ",RIGHT(J5,4))

- Copier cette colonne en L et passer les 4 derniers caracteres en gras avec la macro suivante:

Sub PartialBold()
With Worksheets("DATA 2008_06")
.Range("K5:K500").Copy
.Range("L5:C500").PasteSpecial _
Paste:=xlPasteValues
.Range("L5:C500").Characters(6, 4).Font.Bold = True
End With
End Sub


Normalement ca devrait pas etre trop difficile d'inclure la premiere partie (Ajout d'un espace) dans la macro mais j'ai pas le courage et mes ambitions sont limitées.

Merci beaucoup Commentcamarche.com pour ton aide précieuse, tu dois surement avoir de l'avenir mais tu mériterais un bon coup de modération et une meilleure subdivision de tes forums.

Sur ce, bon vent

Lebakalite
0