Texte Minuscule en texte Majuscule sans accent

Hervé_88

XLDnaute Nouveau
Bonjour à tous,

Je cherche à transformer un texte minuscule avec accent en texte majuscule sans accent???

j'ai bien trouvé la première étape en utilisant le formule "MAJUSCULE", pour suprimer les accent je n'ai pas trouvé.

Merci d'avance pour votre aide sur le sujet.

PS: ci-joint fichier

Cdt,
Hervé
 

Pièces jointes

  • Classeur1.xls
    14 KB · Affichages: 694
  • Classeur1.xls
    14 KB · Affichages: 735
  • Classeur1.xls
    14 KB · Affichages: 742

stevy95

XLDnaute Nouveau
Re : Texte Minuscule en texte Majuscule sans accent

Salut stevy95 et Bienvenu :), le Forum

En attendant Jacques :)

remplace
Code:
 If Target.Count = 1 then
par

Code:
  If Not Application.Intersect(Target, Range("A1:G500")) Is Nothing Then
et ça devrait le faire

Bonne Journée

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Application.Intersect(Target, Range("B12:I200")) Is Nothing Then
   codeA = "ÉÈÊËÔéèêëàâäçôöûüùïî"
   codeB = "EEEEOeeeeaaacoouuuii"
   temp = Target
   For i = 1 To Len(temp)
    p = InStr(codeA, Mid(temp, i, 1))
    If p > 0 Then Mid(temp, i, 1) = Mid(codeB, p, 1)
   Next
   Application.EnableEvents = False
   Target = UCase(temp)
   Application.EnableEvents = True
 End If
End Sub

Est ce que quelqu'un saurait comment faire en sorte que ce code balaye toute la plage B12:I200 au lieu de ne traiter qu'une seule cellule.

Merci d'avance !
 

stonda

XLDnaute Nouveau
Re : Texte Minuscule en texte Majuscule sans accent

Bonjour
Je suis tout nouveau sur ce forum et je n'ay connais pas grand chose en VBA et macro.
J'ai un problème qui doit normalement être réglé avec cette macro, mais je ne sais pas où la mettre et comment la faire fonctionner.
J'ai un texte qui est traduit en vietnamien qui ressemble à ceci
Chi là khoàng càch, giàm (voi càc nguy co' liên quan).
Càc chi bào là ty lê tân so.
Cu'ong dô cùa môi tù sau dO du'oc so sành trong vân bàn và tù diên cùa càc tài liêu tham khào.
Tinh toàn này du'oc thu'c hiên chi trên càc tù pho bien.

Pour le faire comprendr par un logiciel français je dois enlever tous les accents.
Est ce que quelqu'un peut m'aider pour me dire comment faire fonctionner cette macro : où la mettre et comment la lancer ?
Merci
D Duguest
 

Staple1600

XLDnaute Barbatruc
Re : Texte Minuscule en texte Majuscule sans accent

Bonjour et bienvenue sur le forum


Pour comprendre le fonctionnement du code proposé par BOISGONTIER

le plus simple est de tester son fichier joint

Le code VBA se trouve dans la feuille concernée

(donc clic-droit sur l'onglet de cette feuille et choisir Visualiser le code)
 

Staple1600

XLDnaute Barbatruc
Re : Texte Minuscule en texte Majuscule sans accent

Re

[EDITION]
une autre solution (ici à mettre dans un module standard)
(toujours en utilisant le code de BOISGONTIER)
Code:
Sub supp_accents()
Dim c As Range, r As Range
Dim codeA$, codeB$, temp, i As Long
codeA = "ÉÈÊËÔéèêëàâäçôöûüùïî"
codeB = "EEEEOeeeeaaacoouuuii"
Set r = ActiveSheet.UsedRange
For Each c In r
    temp = c
    For i = 1 To Len(temp)
    p = InStr(codeA, Mid(temp, i, 1))
    If p > 0 Then Mid(temp, i, 1) = Mid(codeB, p, 1)
    Next
    c = temp
Next c
End Sub
Dans ce cas, il faut au préalable supprimer le code précédent *
puis faire ALT+F11 -> Insertion/Module
Coller le code VBA ci-dessus
Puis ALT+Q -> Outils/Macros/supp_accents -> Exécuter

*: c'est a dire le code qui se situe dans la feuille 1
[/EDITION]

Ci-dessous c'est le message original (donc indépendant de mon édition)
Pour tester
1) Copie les lignes en rouge de ton précédent message dans la feuille 1 d'un classeur vierge
ensuite clic-droit sur l'onglet de la feuille 1 (et faire comme indiqué dans mon 1er message)
2) La colles le code VBA ci-dessous
3) ensuite ALT+Q
et dans Excel, sélectionnes chaque cellule et appuie sur ENTER
Tu devrais ne plus avoir d'accents non ? (j'ai testé, chez moi cela fonctionne)

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Application.Intersect(Target, ActiveSheet.UsedRange) Is Nothing Then
   codeA = "ÉÈÊËÔéèêëàâäçôöûüùïî"
   codeB = "EEEEOeeeeaaacoouuuii"
   temp = Target
   For i = 1 To Len(temp)
    p = InStr(codeA, Mid(temp, i, 1))
    If p > 0 Then Mid(temp, i, 1) = Mid(codeB, p, 1)
   Next
   Application.EnableEvents = False
   Target = temp
   Application.EnableEvents = True
 End If
End Sub
 
Dernière édition:

stonda

XLDnaute Nouveau
Re : Texte Minuscule en texte Majuscule sans accent

Re bonjour
Effectivement ça fonctionne.
Mais le texte se retrouve tout en majuscule : or je voudrais conserver la casse. Peut être enlever la partie
Target = UCase(temp)
Merci
 

stonda

XLDnaute Nouveau
Re : Texte Minuscule en texte Majuscule sans accent

Désolé, c'est vrai, j'avais pris le modèle de Boigontier ! Je ne le ferai plus :confused:
Donc ça fonctionne.
Mon texte de départ est un peu plus complet (plus d'accent), donc je suppose que je dois gérer toutes les modifs dans Code A et CodeB
Par contre quand je rentre le texte dans le fichier excel il me met une erreur
erreur exécution '13'
Incompatibilité de type.
sur la ligne For i = 1 To Len(temp)
Je suppose que cela vien de mon texte d'origine qui n'est pas supporté

Nhấp vào 'phân tích chuyên đề' trong ký lexical.
Biến đóng cửa vào từ quan trọng đến từng chủ đề
Av.μ nb av.μNb ap.μ% ap.μQuota%
Nbμ% μ% red.μPoidsμQuota
# Địa tầng
# Strata
# Phân loại vượt qua
% Of phương sai giải thích bởi yếu tố này:
- Hiệu quả tổng thể của '#' # (= # V_inter, V_intra = # F = #, 1-p = #)
- Tác dụng chính của '#' # (= # V_inter, V_intra = # F = #, 1-p = #)
- Tương tác của '#' và '#' # (= # V_inter, V_intra = # F = #, 1-p = #)
- Các điều khoản phân biệt đối xử (lúc nguy cơ #) được đóng khung
 

stonda

XLDnaute Nouveau
Re : Texte Minuscule en texte Majuscule sans accent

Je ne comprends pas ce que tu veux dire avec
tu as essayé supp_accents ou pas ?
J'ai essayé avec le code que tu as proposé et et le dernier texte que j'ai mis ici à 12h07.
Existe-t-il une solution pour éviter ce problème, car si je tente de rentrer ấ dans le code A il le remplace par ?
Que faire ?
Merci
 

Staple1600

XLDnaute Barbatruc
Re : Texte Minuscule en texte Majuscule sans accent

Re


Moi aussi j'ai essayé avec ton dernier texte

et je n'ai pas de message d'erreur

d'où ma question

Ensuite il faut effectivement mettre tout tes caractères accentués dans codeA
et leurs équivalents sans accents dans codeB
 

stonda

XLDnaute Nouveau
Re : Texte Minuscule en texte Majuscule sans accent

Bon puisque tu habites à Rennes et moi à St Malo ;), je vais aller te voir !!
Plus rapidement je te joins le fichier (j'en ai mis la moitié, car trop gros)
Peux tu me dire si c'est un problème de codage ou de version Excel ?
Merci par avance
Didier
 

Pièces jointes

  • Vietnam.zip
    48.1 KB · Affichages: 57

stonda

XLDnaute Nouveau
Re : Texte Minuscule en texte Majuscule sans accent

Désolé mais je ne dois pas être doué !
J'ai bien fait le préalable : supprimé le code, ajouter le code Boisgontier, puis exécuter : ça semble OK.
Puis j'ai copié mon texte dans la feuille excel, et j'ai mis ton code Private Sub Worksheet_Change(ByVal Target As Range)
si j eteste sur une ligne avec éèçà ça fonctionne
mais si je veux mettre
ếđóửừ
il m remplace ces lettres dans la zone Code A par ????
Je joins le doc à tout hasard !
Merci
 

Pièces jointes

  • Vietnam.xls
    27 KB · Affichages: 74
  • Vietnam.xls
    27 KB · Affichages: 72
  • Vietnam.xls
    27 KB · Affichages: 73

Staple1600

XLDnaute Barbatruc
Re : Texte Minuscule en texte Majuscule sans accent

Non Mossieur stonda


Le code VBA est toujours présent dans la feuille 1

Il faut l'éradiquer sans pitié

et ne garder que le code dans le Module1.

(ou vice et versa)

PS: on va finir par se comprendre :rolleyes:

Relis attentivement toutes mes réponses
car tu n'as fais aucune des choses que je te suggère ???

Ou sont les changements ?
codeA = "ÉÈÊËÔéèêëàâäçôöûüùïî"
codeB = "EEEEOeeeeaaacoouuuii"
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 196
Messages
2 086 094
Membres
103 116
dernier inscrit
kutobi87