XL 2010 ajouter un caractère a une position précise

chemanow

XLDnaute Nouveau
salut
jé une colonne de 2000 ligne sur excel 2007
je souhaite ajouter le nombre "1" a la 20eme position de chaque case de ma colonne
par exemple
la A1 ="boutique" elle deviens "boutique+11espaces+1"
B1 ="yos" elle deviens "yos+16espaces+1"
merci
 

jmfmarques

XLDnaute Accro
Bonjour
Je ne voulais à la base pas traiter une question aussi simple.
J'ai changé d'avis, mais dans ce cas en m'amusant à ce que je ne ferais pas pour moi-même --->>
VB:
TOTO = Range("A1").Value
ch = String(19, " ")
LSet ch = "banane"
Range("A1").Value = ch & "1"
Je te laisse aller à du beaucoup plus simple en utilisant simplement la fonction Len et la concaténation.
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour le fil,
Un essai en VBA :
VB:
Sub Test()
Chaine = ActiveCell.Value
Taille = Len(Chaine)
If Taille < 20 Then
    ActiveCell.Value = Mid(Chaine, 1, 20) & String(20 - Taille, " ") & "1"
Else
    ActiveCell.Value = Mid(Chaine, 1, 20) & "1"
End If
End Sub
ou en formule, si A1 contient le texte :
Code:
=STXT(A1;1;20)&REPT(" ";20-NBCAR(A1))&"1"
( à noter qu'avec la formule, le texte est tronqué à 20 caractères )
 

JHA

XLDnaute Barbatruc
Bonjour à tous,
Bonjour Sylvanu ;)

Effectivement, mais la question est:
je souhaite ajouter le nombre "1" a la 20eme position de chaque case de ma colonne

On peut donc supposer que les données en colonne "A" ne dépassent pas 19 caractères autrement, pour éviter l'erreur et mettre un "1" après les données supérieures à 20 caractères.
VB:
=$A1&REPT(" ";MAX(0;19-NBCAR($A1)))&1

Edit: Bonjour Mapomme :), mettre le "1" en plein milieu des données supérieures à 20 caractères, pas génial mais c'est ce que demande chemanow.

JHA
 

Discussions similaires

Réponses
4
Affichages
314

Statistiques des forums

Discussions
312 171
Messages
2 085 931
Membres
103 049
dernier inscrit
plt