Dans un tableau, j'ai une colonne (E) avec des donn=E9es texte ecrites
de fa=E7on al=E9atoire (Majuscules, ...). Afin d'avoir des donn=E9es
uniformes, j'ai inserr=E9 deux colonnes =E0 gauche (D & C) de celle qui
nous interresse.
Dans la premi=E8re (D), j'utilise la fonction NomPropre.
Dans la seconde (C), j'utilise le collage sp=E9cial afin de ne prendre
que la valeur.
Pour automatiser cette op=E9ration, j'ai cr=E9er une macro maison
"ConvNomPropre" =E0 partir de l'engeristreur de macro dont voici le
code :
Sub ConvNomPropre()
'
' ConvNomPropre Macro
' Macro enregistr=E9e le 21/07/2009 par CROC JYG
'
' Touche de raccourci du clavier: Ctrl+t
'
Range ("D2").Select
ActiveCell.FormulaR1C1 =3D "=3DPROPER(RC[1])"
ActiveCell.Select
Selection.Copy
Range("C2").Select
Selection.PasteSpecial Paste:=3DxlPasteValues, Operation:=3DxlNone,
SkipBlanks _
:=3DFalse, Transpose:=3DFalse
Range("D2").Select
ActiveSheet.Paste
Application.CutCopyMode =3D False
End Sub
Cela fonctionne tr=E8s bien sur la deuxi=E8me ligne.
Par contre comment faire pour les que les r=E9f=E9rences puissent
s'appliquer quelques soient la ligne ?
Merci de votre aide et bonne journ=E9e =E0 toutes & tous.
Utilises plutôt ceci : i=2 Do while i < Range("D65535").End(xlup).Row+1 Range("C" & i).Value = Range("D" & i).Value i=i+1 Loop
Celà devrait faire
Dis moi !!!!!
michel
Bonjour Tu selectionne la plage a convertir et tu lance cette macro
sub majus for each cellule in selection cellule=strconv(cellule,vbpropercase) next end sub @ plus Michel "JeanYvesGascon" a écrit dans le message de news: Bonjour à toutes et tous,
Dans un tableau, j'ai une colonne (E) avec des données texte ecrites de façon aléatoire (Majuscules, ...). Afin d'avoir des données uniformes, j'ai inserré deux colonnes à gauche (D & C) de celle qui nous interresse. Dans la première (D), j'utilise la fonction NomPropre. Dans la seconde (C), j'utilise le collage spécial afin de ne prendre que la valeur.
Pour automatiser cette opération, j'ai créer une macro maison "ConvNomPropre" à partir de l'engeristreur de macro dont voici le code :
Sub ConvNomPropre() ' ' ConvNomPropre Macro ' Macro enregistrée le 21/07/2009 par CROC JYG ' ' Touche de raccourci du clavier: Ctrl+t ' Range ("D2").Select ActiveCell.FormulaR1C1 = "=PROPER(RC[1])" ActiveCell.Select Selection.Copy Range("C2").Select Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :úlse, Transpose:úlse Range("D2").Select ActiveSheet.Paste Application.CutCopyMode = False End Sub
Cela fonctionne très bien sur la deuxième ligne. Par contre comment faire pour les que les références puissent s'appliquer quelques soient la ligne ?
Merci de votre aide et bonne journée à toutes & tous.
Jean-Yves
Bonjour
Tu selectionne la plage a convertir et tu lance cette macro
sub majus
for each cellule in selection
cellule=strconv(cellule,vbpropercase)
next
end sub
@ plus
Michel
"JeanYvesGascon" <jeanyves.gascon@gmail.com> a écrit dans le message de
news:912323c8-3df4-49ed-b959-3c7a020e22a4@c29g2000yqd.googlegroups.com...
Bonjour à toutes et tous,
Dans un tableau, j'ai une colonne (E) avec des données texte ecrites
de façon aléatoire (Majuscules, ...). Afin d'avoir des données
uniformes, j'ai inserré deux colonnes à gauche (D & C) de celle qui
nous interresse.
Dans la première (D), j'utilise la fonction NomPropre.
Dans la seconde (C), j'utilise le collage spécial afin de ne prendre
que la valeur.
Pour automatiser cette opération, j'ai créer une macro maison
"ConvNomPropre" à partir de l'engeristreur de macro dont voici le
code :
Sub ConvNomPropre()
'
' ConvNomPropre Macro
' Macro enregistrée le 21/07/2009 par CROC JYG
'
' Touche de raccourci du clavier: Ctrl+t
'
Range ("D2").Select
ActiveCell.FormulaR1C1 = "=PROPER(RC[1])"
ActiveCell.Select
Selection.Copy
Range("C2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:úlse, Transpose:úlse
Range("D2").Select
ActiveSheet.Paste
Application.CutCopyMode = False
End Sub
Cela fonctionne très bien sur la deuxième ligne.
Par contre comment faire pour les que les références puissent
s'appliquer quelques soient la ligne ?
Merci de votre aide et bonne journée à toutes & tous.
Bonjour Tu selectionne la plage a convertir et tu lance cette macro
sub majus for each cellule in selection cellule=strconv(cellule,vbpropercase) next end sub @ plus Michel "JeanYvesGascon" a écrit dans le message de news: Bonjour à toutes et tous,
Dans un tableau, j'ai une colonne (E) avec des données texte ecrites de façon aléatoire (Majuscules, ...). Afin d'avoir des données uniformes, j'ai inserré deux colonnes à gauche (D & C) de celle qui nous interresse. Dans la première (D), j'utilise la fonction NomPropre. Dans la seconde (C), j'utilise le collage spécial afin de ne prendre que la valeur.
Pour automatiser cette opération, j'ai créer une macro maison "ConvNomPropre" à partir de l'engeristreur de macro dont voici le code :
Sub ConvNomPropre() ' ' ConvNomPropre Macro ' Macro enregistrée le 21/07/2009 par CROC JYG ' ' Touche de raccourci du clavier: Ctrl+t ' Range ("D2").Select ActiveCell.FormulaR1C1 = "=PROPER(RC[1])" ActiveCell.Select Selection.Copy Range("C2").Select Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :úlse, Transpose:úlse Range("D2").Select ActiveSheet.Paste Application.CutCopyMode = False End Sub
Cela fonctionne très bien sur la deuxième ligne. Par contre comment faire pour les que les références puissent s'appliquer quelques soient la ligne ?
Merci de votre aide et bonne journée à toutes & tous.