Remplacer texte de la colonne en Majuscule et le texte après le point

Bonjour et meilleurs vœux à tous et à toutes !

J’ai la colonne A dans ma feuille « RENCONTRES » qui affiche les noms des personnes.

Comme ceux-ci :

M. Dupont

Guichard

Julien Sébastien

Et je voudrais avoir le changement dans cette même colonne automatiquement comme ci dessous :

DUPONT

GUICHARD

JULIEN SÉBASTIEN

Merci

Bonjour,

Il existe une fonction =MAJUSCULE(), c'est aussi réalisable via VBA.

Oui mais je ne souhaite pas de formule mais bien en VBA.

Que ca se modifie automatiquement.

Bonjour,

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A:A")) Is Nothing Then
    Application.EnableEvents = False
    Target = UCase(Target)
    Application.EnableEvents = True
End If
End Sub

Un essai à placer dans le module de la feuille en question (et pas un module standard) :

Private Sub Worksheet_Change(ByVal Target As Range)

Application.EnableEvents = False
'Si la cellule modifiée appartient à la colonne A et qu'il n'y a qu'une cellule modifiée, alors mettre en majuscules
If target.column = 1 And Target.Count = 1 Then Target = UCase(Target)
Application.EnableEvents = True

End Sub

Edit : désolé pour le doublon Thrrybo, je n'avais pas vu ta réponse

Merci à vous pour vos réponse.

Mais je voudrais aussi supprimer la partie avant le point. Afficher que les noms.

Comme dans mon exemple avec : M. Dupont qui deviendrait DUPONT

merci

Bonjour,

Une version révisée qui intègre l'histoire du point :

Private Sub Worksheet_Change(ByVal Target As Range)

Application.EnableEvents = False
If Target.Column = 1 And Target.Count = 1 Then
    If Target Like "*.*" Then Target = Split(Target, ". ")(1)
    Target = UCase(Target)
End If
Application.EnableEvents = True

End Sub

Ca ne fonctionne pas...

Ca ne n'enleve ni la première lettre du prénom ni le point et pas de majuscule.

J'ai modifié un tantinet le code précédent, car il posait problème si la cellule ne contenait pas de point. En revanche, le code fonctionne...

changenom

Le script se déclenche automatiquement lors de la modification d'une cellule de la colonne A. Il n'a pas d'effet rétroactif sur les données déjà saisies. Pour ça il faut soit effectuer une modification quelconque sur chaque cellule, soit passer par une macro "classique", qui balaye toutes les cellules avec une boucle pour effectuer le travail.

Merci a toi. c'est parfait.

Oui sa m'intéresse la fonction balayage. Car la je dois appuyer sur entreé sur chaque cellule.

Il faudrait automatiser un balayage sur la colonne A3 jusqu'à la A150

Dans un module standard :

Sub FormaterNoms()

Dim Lig As Long

With Sheets("NomFeuille") 'A adapter
    For Lig = 3 To .Range("A" & Rows.Count).End(xlUp).Row
        If .Range("A" & Lig) Like "*.*" Then .Range("A" & Lig) = Split(.Range("A" & Lig), ". ")(1)
        .Range("A" & Lig) = UCase(.Range("A" & Lig))
    Next Lig
End With

End Sub

Merci a toi mais je ne comprend j' ai une erreur de compilation (End If sans bloc If)

Je me permets d'intervenir puisque ça je sais faire

Sub FormaterNoms()

Dim Lig As Long

With Sheets("NomFeuille") 'A adapter
    For Lig = 3 To .Range("A" & Rows.Count).End(xlUp).Row
        If .Range("A" & Lig) Like "*.*" Then 
             .Range("A" & Lig) = Split(.Range("A" & Lig), ". ")(1)
             .Range("A" & Lig) = UCase(.Range("A" & Lig))
        End If
     Next
End With

End Sub

C'est tout moi ça ! J'ai mal copié mon code et je ne me suis pas relu...

Merci Thrrybo pour la correction Mais il y a une petite erreur, le passage en majuscules est indépendant de la présence du point. Du coup :

Sub FormaterNoms()

Dim Lig As Long

With Sheets("NomFeuille") 'A adapter
    For Lig = 3 To .Range("A" & Rows.Count).End(xlUp).Row
        If .Range("A" & Lig) Like "*.*" Then .Range("A" & Lig) = Split(.Range("A" & Lig), ". ")(1)
        .Range("A" & Lig) = UCase(.Range("A" & Lig))
    Next
End With

End Sub

Fallait bien que je me plante quelque part aussi

Merci a vous deux ! Problème résolu.

Merci a vous deux ! Problème résolu.

Rechercher des sujets similaires à "remplacer texte colonne majuscule point"