Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2010 RESOLU Extraction par macro des initiales de chaque mot d'une cellule active

  • Initiateur de la discussion Initiateur de la discussion jozerebel
  • 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 !

jozerebel

XLDnaute Occasionnel
Bonjour,

je souhaite par macro, et sur simple doucle clic, changer la valeur de la cellule activée par les initiales de chaque mot qu'elle contient...

Une aide charitable?

D'avance merci au fofo !
 
Salut à tous,

Jozerebel avec ce bout de code dans un module feuille !


VB:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)


ActiveCell.Value = Left(ActiveCell.Value, 2)




End Sub
 
Dernière édition:
Bonjour jozerebel, max.lander,

un autre essai

Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim TabTemp, i As Integer, Chaine As String

TabTemp = Split(Target, " ")
For i = LBound(TabTemp) To UBound(TabTemp)
    Chaine = Chaine & Left(TabTemp(i), 1) & " "
Next
Target = Chaine
End Sub

A+
 
Coucou,

Je reviens concurrencer Paf avec une nouvelle tentative ! 😉

VB:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)


Dim Lg, i As Integer, Initiale As String, Cible As Variant

Cible = ActiveCell.Value



Lg = Len(Cible)
Initiale = Left(Cible, 1)
If Lg > 2 Then
For i = 2 To Lg
If Mid(Cible, i - 1, 1) = " " Then
Initiale = Initiale & Mid(Cible, i, 1)
End If
Next i
End If

ActiveCell.Value = Initiale







End Sub

A+
 
Dernière édition:
re

Attendons les précisions de jozerebel quant à l'éventuel séparateur d'initiales, et aux restrictions de plage de cellules où cliquer .....

Par ailleurs, Target et ActiveCell représentent le même range.
donc le test If Not Application.Intersect(Target, ActiveCell) Is Nothing Then sera toujours vrai!!

A+
 
Bonsour®
Bonjour,

je souhaite par macro, et sur simple doucle clic, changer la valeur de la cellule activée par les initiales de chaque mot qu'elle contient...
comme ceci peut-être ?
VB:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
  Dim x$, i!
  x = Left(Target, 1)
  For i = 1 To Len(Target)
      x = x & IIf(Mid(Target, i, 1) = " ", Mid(Target, i + 1, 1), "")
  Next
  Target = UCase(x)
End Sub
 
Salut à tous !

Merci pour votre aide !!!!

Pour répondre à Paf :

Plage : Toutes les feuilles potentiellement du classeur
Séparateur : Espace ou "-" en cas de Nom et/ou Prénom composé.

Encore merci à vous tous !

je passe en résolu !
 
- 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
17
Affichages
320
Réponses
4
Affichages
439
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…