Excel 2007 Mise en forme Majuscule sur des plages
Résolu
Mouftie
Messages postés
215
Date d'inscription
Statut
Membre
Dernière intervention
-
mouftie -
mouftie -
Bonjour,
Je voudrais que les saisies faites sur certaines plages de toutes les feuilles du classeur se mettent automatiquement en majuscule ; j'ai trouvé pleins de solutions, aucune ne fonctionne pour moi (toutes positionnées dans ThisWorkbook) :
ou encore :
ou encore
Est-ce que qq'1 vcomprend mon pb et peut m'aider ?
Je voudrais que les saisies faites sur certaines plages de toutes les feuilles du classeur se mettent automatiquement en majuscule ; j'ai trouvé pleins de solutions, aucune ne fonctionne pour moi (toutes positionnées dans ThisWorkbook) :
Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("A1:C3, A6:C7, A11:C14")) Is Nothing Then Target = UCase(Target) End Sub
ou encore :
Private Sub Worksheet_Change(ByVal Target As Excel.Range) 'Converti les saisies en majuscule Target.Value = UCase(Target.Value) End Sub
ou encore
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Row = 1 Then 'Si la modification a été effectuée sur la ligne 1 alors on met tout en majuscule Target.Value = UCase(Target.Value) 'On met en majuscule End If End Sub
Est-ce que qq'1 vcomprend mon pb et peut m'aider ?
A voir également:
- Excel 2007 Mise en forme Majuscule sur des plages
- Mise en forme conditionnelle excel - Guide
- Mise en forme tableau word - Guide
- Save as pdf office 2007 - Télécharger - Bureautique
- Liste déroulante excel - Guide
- É majuscule - Guide
3 réponses
Bonjour
Si tes macros sont dans le module Thisworkbook, la syntaxe est par exemple
Michel
Si tes macros sont dans le module Thisworkbook, la syntaxe est par exemple
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Michel
Bonjour,
je confirme ce que vient de dire Michel_m :
- les macros dans 'Thisworkbook' commencent par Workbook_
- les macros dans une feuille commencent par Worksheet_
Donc soit tu déplaces tes macros Worksheet sur la feuille concernée par la conversion en majuscules, soit tu les modifies selon ce qu'a gentiment indiqué michel_m.
Cordialement.
je confirme ce que vient de dire Michel_m :
- les macros dans 'Thisworkbook' commencent par Workbook_
- les macros dans une feuille commencent par Worksheet_
Donc soit tu déplaces tes macros Worksheet sur la feuille concernée par la conversion en majuscules, soit tu les modifies selon ce qu'a gentiment indiqué michel_m.
Cordialement.
Bonjour, Merci à vous deux.
Effectivement, comme débutante, j'ai encore du mal avec le choix pour inserrer le code.
Maintenant que j'ai mis, dans thisWorkbook,
Pourquoi ?
Effectivement, comme débutante, j'ai encore du mal avec le choix pour inserrer le code.
Maintenant que j'ai mis, dans thisWorkbook,
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range) 'Converti les saisies en majuscule If Not Intersect(Target, Range("A1:s3, A6:s7, A11:s14")) Is Nothing Then Target = UCase(Target) End Subsi j'écris qq sur n'importe quelle feuille (dans les plages spécifiées), Excel converntit bien en majuscule, mais il moulinne en clignotant jusqu'à ce que j'échappe ou pause.
Pourquoi ?
C'est normal car ton déclenchement s'effectue lors d'un changement dans la cellule cible donc la macro mouline...
Enableevents=False désamorce les événements délencheurs
If Not Intersect(Target, Range("A1:s3, A6:s7, A11:s14")) Is Nothing Then Application.EnableEvents = False Target = UCase(Target) Application.EnableEvents = True End If
Enableevents=False désamorce les événements délencheurs