Bonjour le Forum,
Je viens vers vous pour le problème suivant.
J’ai incorporé dans une feuille des codes divers qui fonctionnaient très bien.
Dim ok As Boolean
Private Sub Worksheet_Change(ByVal Target As Range)
If ok = True Then Exit Sub
If Target.Count > 1 Then Exit Sub
If Not Application.Intersect(Target, Range("B15:B500")) Is Nothing Then
ok = True
If Target <> "" Then
Target.Offset(0, 3).Formula = "=VLOOKUP(B15:B500,ZONE!A2:B72,2,0)"
Target.Offset(0, 3).Formula = Target.Offset(0, 3).Value 'on fige la valeur dans la cellule
Else: Target.Offset(0, 3).ClearContents
'Else: Target.EntireRow.Delete
End If
End If
ok = False
If Target.Count > 1 Then Exit Sub
Select Case Target.Column
Case 2 To 7, 12, 14 ' Colonne B, G, L et N
If Target.Value <> UCase$(Target.Value) Then
Target.Value = UCase$(Target.Value)
End If
End Select
End Sub
J’ai essayé de rajouter une ligne de code pour que la première lettre des phrases soit en majuscule, mais avec possibilité de mettre des majuscules dans des phrases.
Case 8 To 9, 11 ' Colonne H, I et K
If Target.Value <> UCase$(Target.Value) Then
Target.Value = UCase$(Left(Target.Value, 1)) & Mid(Target.Value, 2)
Le problème est que lorsque j’écris dans la colonne 11 et que je fais Tab pour passer à la colonne 12, un message me signale mémoire insuffisante et bloque complètement le fichier.
Pourriez-vous m’aider
Je vous en remercie d’avance.