Macro à optimiser avec len et espace
Résolu/Fermé
Dp5
-
11 mars 2011 à 18:12
lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 - 14 mars 2011 à 11:58
lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 - 14 mars 2011 à 11:58
A voir également:
- Macro à optimiser avec len et espace
- Espace insécable word - Guide
- Optimiser son pc - Accueil - Utilitaires
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Optimiser windows 10 - Guide
- Libérer espace gmail - Guide
3 réponses
ccm81
Messages postés
10903
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
19 novembre 2024
2 428
Modifié par ccm81 le 11/03/2011 à 18:57
Modifié par ccm81 le 11/03/2011 à 18:57
bonjour
une fonction qui peut faire l'affaire (à mettre dans un module
- s est la chaine a traiter
- n est le nombre de caracteres entre deux espaces
l'appel se fait par exemple
A2 = Insere_espace(Range("A1").Value,4)
bonne suite
RQ. j'ai supposé que la chaine a traiter ne contient pas d'espace, si ce n'est pas le cas, il faut la nettoyer avant de l'envoyer à Insere_espace
une fonction qui peut faire l'affaire (à mettre dans un module
- s est la chaine a traiter
- n est le nombre de caracteres entre deux espaces
l'appel se fait par exemple
A2 = Insere_espace(Range("A1").Value,4)
Public Function Insere_espace(ByVal s As String, n As Long) As String If Len(s) <= n Then Insere_espace = s Else Insere_espace = Left(s, n) & " " & Insere_espace(Right(s, Len(s) - n), n) End If End Function
bonne suite
RQ. j'ai supposé que la chaine a traiter ne contient pas d'espace, si ce n'est pas le cas, il faut la nettoyer avant de l'envoyer à Insere_espace
lermite222
Messages postés
8724
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 190
Modifié par lermite222 le 14/03/2011 à 12:23
Modifié par lermite222 le 14/03/2011 à 12:23
Bonjour,
Ou comme ça..
Ou encore, si tu veux en fonction...
Exemple : le mot se trouve en B4 : =InserSp(B4)
A+
Toute la connaissance du monde ne peu tenir dans une seul tête (moi)
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
Ça doit se passer sur le forum pour que tous puisse y participer ou en profiter.
Ou comme ça..
Sub InsererSpace() Dim Mot As String, L As Integer , M As String Mot = ActiveCell.Value For L =1 To Len(Mot) Step 4 M = M & Mid(Mot, L, 4) & " " Next L ActiveCell = M End Sub
Ou encore, si tu veux en fonction...
Public Function InserSp(R As Range) Dim Mot As String, L As Integer, M As String Mot = R.Value For L = 1 To Len(Mot) Step 4 M = M & Mid(Mot, L, 4) & " " Next L InserSp = M End Function
Exemple : le mot se trouve en B4 : =InserSp(B4)
A+
Toute la connaissance du monde ne peu tenir dans une seul tête (moi)
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
Ça doit se passer sur le forum pour que tous puisse y participer ou en profiter.