Tri inopérant + suppression de données entre parenthèses
Le
PC

Bonjour,
1er problème : dans le fichier que vous trouverez ici
http://dl.dropbox.com/u/17720913/Mode%20NB%20600.xlsx
je cherche à trier toute la feuille, avec comme critère de tri la
colonne E en ordre décroissant, mais les résultats du tri sont
incohérents Comprends pas !
2ème problème : comment supprimer dans la colonne A les parenthèses et
les dates qu'elles contiennent ?
Merci pour vos lumières,
Pierre
1er problème : dans le fichier que vous trouverez ici
http://dl.dropbox.com/u/17720913/Mode%20NB%20600.xlsx
je cherche à trier toute la feuille, avec comme critère de tri la
colonne E en ordre décroissant, mais les résultats du tri sont
incohérents Comprends pas !
2ème problème : comment supprimer dans la colonne A les parenthèses et
les dates qu'elles contiennent ?
Merci pour vos lumières,
Pierre
Il y a des cellules au format texte dans la colonne E
-Sélection d'une cellule vierge
-Entrer 1
-Copier cette cellule
-Sélection des cellules de la colonne E
-Collage spéciale ==>multiplication
-Effacer la cellule contenant le 1
-Sélection de la colonne A
-Menu Données==>Convertir
-étape 1==>cocher délimité
-Suivant
-étape 2==>Séparateur==>autre==>entrer ( (parenthèse ouvrante)
-Suivant
-étape 3==>Sélectionner la 2 ème colonne
-Cocher Non distribué
-Terminé
Le fichier épuré et modifié
http://cjoint.com/?BHvaAJwv355
--
Salutations
JJ
"PC"
Il y a des cellules au format texte dans la colonne E
-Sélection d'une cellule vierge
-Entrer 1
-Copier cette cellule
-Sélection des cellules de la colonne E
-Collage spéciale ==>multiplication
-Effacer la cellule contenant le 1
-Sélection de la colonne A
-Menu Données==>Convertir
-étape 1==>cocher délimité
-Suivant
-étape 2==>Séparateur==>autre==>entrer ( (parenthèse ouvrante)
-Suivant
-étape 3==>Sélectionner la 2 ème colonne
-Cocher Non distribué
-Terminé
Le fichier épuré et modifié
http://cjoint.com/?BHvaAJwv355
--
Salutations
JJ
"PC"
Ai bien capté pour la suppression des parenthèses.
Par contre pour le tri cela ne fonctionne pas pour moi. (Cette feuille
n'est que le début d'une grande, et j'aimerai savoir la traiter
moi-même...)
Avant de poster sur ce newsgroup, j'avais pourtant bien converti les
données texte en nombres ; alors je n'en vois pas trace dans la colonne
E ??
Et après la manip que vous indiquez j'obtiens toujours un tri incohérent.
Sais pas si cela a d'ailleurs un rapport, mais le fichier avant votre
traitement pèse à peu près 5 Mo, et le vôtre après traitement 15 ko !!
Eviter de faire des Mises en forme, Format, mfc, etc..., sur des colonnes entière.
Pour appliquer à ce classeur un régime, j'ai appliqué cette instruction en vba
'----------
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Range("A47:XFD1048576").Clear
End Sub
'---------
Placer dans le module de la feuille il supprime tout dans les cellules après la ligne 47 par un double clique
sur la feuille.
A47 est a modifier dans le classeur réel selon la première ligne vide
Normalement après ce régime le tri de la colonne E devrait fonctionner
--
Salutations
JJ
"PC"
Cette macro devrait résoudre tes 2 problèmes :
'------------------------------------------------------------
Sub Test()
Application.ScreenUpdating = False
Application.EnableEvents = False
With Worksheets("Sheet1")
'Enlève les parenthèses et les dates - colonnne A
With .Range("A2:A" & .Range("A65536").End(xlUp).Row)
.TextToColumns Destination:=Range("A2"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:úlse,
Tab:úlse, _
Semicolon:úlse, Comma:úlse, Space:úlse, Other:=True, OtherChar
_
:="(", FieldInfo:=Array(Array(1, 1), Array(2, 9)),
TrailingMinusNumbers:=True
End With
'Tri décroissant en colonne E
With .Range("E1:E" & .Range("E65536").End(xlUp).Row)
.Replace " ", "$", xlPart
.NumberFormat = "General"
.NumberFormat = "# ##0"
.Replace "$", "", xlPart
With .CurrentRegion
.Sort Key1:=.Item(2, 5), order1:=xlDescending, Header:=xlYes
End With
End With
End With
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub
'------------------------------------------------------------
Mais... je n'arrive pas à comprendre pourquoi une simple colonne de 45
cellules comme celle-ci
http://dl.dropbox.com/u/17720913/Colonne_tri_impossible.xls
demeure rebelle à un tri ??
Je vois bien que les 5 premières cellules sont d'un type différent des
autres, mais je ne parviens pas à tout homogénéiser...
Avez-vous une explication ? Et peut-être pourrait-on éviter de passer
par une macro ?
D'avance merci si vous approfondissez !
Pierre
Tu fias ceci: dans une col adjacente, tu écris: =esttexte(a1) et tu
tires vers le bas.
Tu vas t'appercevoir qu'il y a des cellules en format texte (celles qui ont
un blanc comme séparateur de millier.
Pour remettre cela en ordre, applique cette macro:
-------------------
Sub Supprime_Espaces()
For Each c In [a1:a45]
c.Replace What:=" ", Replacement:=""
Next
End Sub
----------------------------
Tes cellules seront numériques et tu pourras les trier.
Jacquouille
" Le vin est au repas ce que le parfum est à la femme."
"PC" a écrit dans le message de groupe de discussion :
Merci à vous Jacky et MichD !
Mais... je n'arrive pas à comprendre pourquoi une simple colonne de 45
cellules comme celle-ci
http://dl.dropbox.com/u/17720913/Colonne_tri_impossible.xls
demeure rebelle à un tri ??
Je vois bien que les 5 premières cellules sont d'un type différent des
autres, mais je ne parviens pas à tout homogénéiser...
Avez-vous une explication ? Et peut-être pourrait-on éviter de passer
par une macro ?
D'avance merci si vous approfondissez !
Pierre
http://cjoint.com/?3HvrrDXOUtH
Que veux-tu de plus?
MichD
--------------------------------------------------------------
Dans ta macro, pourquoi passes-tu par $ pour transformer " " en "" ?
With .Range("E1:E" & .Range("E65536").End(xlUp).Row)
.Replace " ", "$", xlPart
.NumberFormat = "General"
.NumberFormat = "# ##0"
.Replace "$", "", xlPart
D'autre part, ne penses-tu pas que c'est tout son tableau qui devrait se
voir supprimer ces " " ... .
Merci et bonne soirée
Jacques.
Jacquouille
" Le vin est au repas ce que le parfum est à la femme."
"MichD" a écrit dans le message de groupe de discussion :
k108tk$br0$
Voici ton fichier. Tu l'ouvres et tu exécutes la macro à partir du bouton de
commande sur la feuille.
http://cjoint.com/?3HvrrDXOUtH
Que veux-tu de plus?
MichD
--------------------------------------------------------------
Ceci pour mieux comprendre
http://cjoint.com/?BHvuY132rsn
--
Salutations
JJ
"PC"