Vous utilisez un navigateur obsolète. Il se peut que ce site ou d'autres sites Web ne s'affichent pas correctement. Vous devez le mettre à jour ou utiliser un navigateur alternatif.
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 !
On n'utilisera pas les majuscules pour :
• Les noms des mois (janvier, thermidor) ;
• Les noms des jours (lundi, mercredi) ;
• Les titres et qualités des chefs d'état ou de gouvernement (le premier ministre) ;
• Les déterminatifs et adjectifs (la Légion d'honneur, la Cour suprême
j'ai essayé le code ça marche seulement si je rentre une nouvelle date, ça ne marche plus. Avec la formule ecrite sur une cellule a cotés cela ne marche pas non plus car la cellule ou est inscrite la formule marque janvier 1900.
est il possible de passé en vba pour uniquement une cellule ?
Alors essaie ceci
(dans le code de la feuille)
Clic-droit sur la feuille -> [Visualiser le code]
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Strg As String
If Target.Address = "$A$6" Then
'ici on teste si c'est une date
If IsDate(Target) Then
Strg = Application.Proper(Format(Target, "mmm yyyy"))
Target = Strg
End If
End If
End Sub
ou cette variante (qui ne vérifie pas si la saisie en A6 est une date)
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Target = _
IIf(Target.Address = "$A$6", _
Application.Proper(Format(Target, "mmm yyyy")), Target)
End Sub
j'ai essayé le code sans vérification du format date, et un message d'erreur apparait.
car j'ai déja un code avec Private Sub Worksheet_Change(ByVal Target As Range),
j'ai changé le nom de ma macro "Private Sub minuscule_Change....." et ça ne marche pas.
A partir de Excel 2002 (ou 2000), si tu mets ce code : [$-409]mmm aaaa dans Format/Nombre tu auras les premieres lettres en Majuscule.
MAIS c'est en anglais ... à toute fins utiles ...
re
catrice ça marche mais malheursement c'est en anglais.
le code existant est :
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Rows.Count > 1 Or Target.Columns.Count > 1 Or Target.Column <> 19 Then Exit Sub
If Target.Row > 8 And Target.Column = 19 Then
If Target <> "" Then
With UserForm2
.TextBox1.Value = Target.Row
.TextBox2.Value = Target.Value
.OptionButton1 = True 'valider
.Show
End With
End If
End If
Une solution bovine : vous mettez votre cellule A6 au format Texte et vous tapez par exemple : Septembre 2008 ou Sept 2008
Utilisé dans des formules de calcul, ce texte sera converti automatiquement en nombre définissant la date du 01/09/2008. Vérifiez en tapant dans une autre cellule : =1*A6
- 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