Mise en forme particulière
Résolu
mc2_2
-
mc2_2 -
mc2_2 -
Bonjour,
Je me perme de faire appel à vos services, pour une mise en forme particulière dans EXCEL.
Je doit dans un formulaire de demande de codification d'article, écrire absolument en majuscule dans certaine cellule.
Ceci parce-que notre ERP n'est pas compatible avec les caractères spéciaux tel que les é, ë, ê ...
Est-il possible de dire lorsque j'écrit dans cette cellule, je transforme les minuscules en majuscule et shint ainsi les accents ?
Par avance merci de votre aide.
Je me perme de faire appel à vos services, pour une mise en forme particulière dans EXCEL.
Je doit dans un formulaire de demande de codification d'article, écrire absolument en majuscule dans certaine cellule.
Ceci parce-que notre ERP n'est pas compatible avec les caractères spéciaux tel que les é, ë, ê ...
Est-il possible de dire lorsque j'écrit dans cette cellule, je transforme les minuscules en majuscule et shint ainsi les accents ?
Par avance merci de votre aide.
A voir également:
- Mise en forme particulière
- Mise en forme conditionnelle excel - Guide
- Mise a jour chrome - Accueil - Applications & Logiciels
- Mise en forme tableau croisé dynamique - Guide
- Mise a jour windows 10 - Accueil - Mise à jour
- Appliquez à tous les paragraphes du document à télécharger, à l’exception des titres et des sous-titres, la mise en forme suivante : - Guide
3 réponses
Bonjour,
Fonction personnalisée dans un module standard :
Si c'est un formulaire :
Si c'est une plage de cellule déjà saisie :
Traiter une plage lors de la saisie :
https://www.cjoint.com/c/CAoqiKQLqBM
eric
Fonction personnalisée dans un module standard :
Function Sans_accents(Chaine$) As String ' R. Dezan + Michel Pierron
'Cette fonction enlève également les OE, oe, Æ, æ qui posent un problème sur les sytèmes anglais.
' remplacement des caractères accentués
Dim a As String, b As String
Dim i As Long, u As Long
a = "ÀÁÂÃÄÅÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝàáâãäåèéêëìíîïðñòóôõöùúûüýÿ"
b = "AAAAAAEEEEIIIINOOOOOUUUUYaaaaaaeeeeiiiionooooouuuuyy"
Chaine = Replace(Replace(Replace(Replace(Chaine, "oe", "oe"), "OE", "OE"), "æ", "ae"), "Æ", "AE")
For i = 1 To Len(Chaine)
u = InStr(1, a, Mid(Chaine, i, 1), 0)
If u Then Mid(Chaine, i, 1) = Mid(b, u, 1)
Next i
Sans_accents = Chaine
End Function
Si c'est un formulaire :
Private Sub TextBox1_Change()
TextBox1 = UCase(Sans_accents(TextBox1))
End Sub
Si c'est une plage de cellule déjà saisie :
Sub traiterSelection()
Dim c As Range
For Each c In Selection
c = UCase(Sans_accents(c))
Next c
End Sub
Traiter une plage lors de la saisie :
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [B2:B10]) Is Nothing Then Exit Sub
If Target.Count > 1 Then Exit Sub
Application.EnableEvents = False
Target = UCase(Sans_accents(Target.Value))
Application.EnableEvents = True
End Sub
https://www.cjoint.com/c/CAoqiKQLqBM
eric
Bonjour eriiic,
Je voit que la formule cré fonctionne ,mais je n'arrive pas à la transféé sur mon fichier.
Est-ce que tu pourrai faire la même manipulation avec mon fichier Excel ?
Sachant que les deux cellules à traiter sont :
- libellé de la demande en B12, attention cellule fusionnée
- libellé court en K19, attention cellule fusionnée
Lien d'accès fichier.
http://cjoint.com/?CArkvBeelYG
Par avance merci de ton aide.
Je voit que la formule cré fonctionne ,mais je n'arrive pas à la transféé sur mon fichier.
Est-ce que tu pourrai faire la même manipulation avec mon fichier Excel ?
Sachant que les deux cellules à traiter sont :
- libellé de la demande en B12, attention cellule fusionnée
- libellé court en K19, attention cellule fusionnée
Lien d'accès fichier.
http://cjoint.com/?CArkvBeelYG
Par avance merci de ton aide.