• Initiateur de la discussion Initiateur de la discussion jdawson
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

jdawson

XLDnaute Junior
Bonjour

je sais que le sujet n est pas nouveau mais souvent la solution n est qu'à 50% complete
dans un fichier excell j ai des retour chariot dans des cellules, des CRLF en fait
ces retours chariot se symbolise sous excell par des petits carrés plein ou presque plein lol

comme il est dit partout je fais une recherche de ALT 0010 et remplacer par un espace et je supprime ainsi tous les 0010 ... quand on clique sur la cellule incriminée, le texte au lieu de se mettre sur deux ligne se met sur une ligne !! super ca marche .. et bien non car même sur une seule ligne on a encore le petit carré qui lui ne peut se copier, et qui lorsque vous enregistrez en texte le fichier, ce carre vous crée des retour a la ligne qui désorganise tous en créant des enregistrement fictifs si je puis dire

je suppose que c est le 0013 qui persiste mais la en recherche ca ne marche pas !!

avez vous une astuce simple, car les personnes qui utilise ces fichiers ne sont pas des pro d excell 🙂

merci a vous par avance

Bruno
 
Re : CRLF sous Excell

c est genial, ca marche en attachant la barre
il suffit apres qu elle ouvre une fois mon fichier, le refermer et apres quand elle ouvre leur fichier ca met quand meme mon bouton attache a la macros de mon fichier vide,...

bon j essaie ta formule

bruno
 
Re : CRLF sous Excell

Re,

Pour attacher une barre d'outils à un classeur :

Menu Outil - Personnaliser
Onglet Barres d'outils
Bouton Attacher
faire passer la barre d'outils à droite avec la flèche

tes droit d auteurs se montent a combien ?

très cher pour les hérétiques 😉, l'absolution ne pourra se gagner qu'en utilisant un boulier à la place d'Excel pendant une semaine entière 🙂
 
Re : CRLF sous Excell

ta formule marche c est top, si page vide ca tourne pas du tout, cool..

pourquoi dans ton code tu met .cells (i, j).value et que moi sans le point avant cells ca marche quand meme ?

.Cells(i, j).Value = Application.Trim(.Cells(i, j).Value) .. tu mets un points juste avant les deux mot cells ..?

merci
bruno
 
Re : CRLF sous Excell

Re,

Quand des instructions VBA commencent par un point, c'est qu'elles se trouvent dans un bloc With (c'est à dire entre un With et un End With)
With sert à dire : dans la partie suivante du code, on travaillera avec l'objet suivant (dans mon code Activesheet.Usedrange)
toutes ces instructions commençant par un point veulent dire : je fias référence à l'objet du With

le

Code:
.Cells(i,j).Value

signifie en réalité

Code:
Activesheet.UsedRange.Cells(i,j).Value

Donc le point est un appel à l'objet du With
 
Re : CRLF sous Excell

OUAH !!! t as fait cela toute ta vie toi, t as fait bac option excel au moins ...

non mais encore une petite chose d apprise aujourd'hui, je garde tout cela en stock, ce sont de toute petite macros pour vous lol, mais tu sais quand tu ouvre un fichier excell et que tu fais a la mimine toute les recherche faits dans la macros, tu comprend bien que certaines personnes vont apprecier lol

merci encore pour ta patience, je vais te lacher un peu la grappe 🙂

j ai une macro, un bouton, une barre d outils, un fichier que je peux balader, pour l instant j ai plus grand chose a rajouter,

encore merci et a bientot de te lire,

cordialement

bruno
 
Re : CRLF sous Excell

Re,

With fait partie des instructions classiques VBA (n'hésite pas à consulter l'aide VBA sur les sujets - Touche F1)
Si tu t'intéresse plus avant à VBA, je te conseillerais de suivre un ordre plus classique à savoir
Les variables, les procédures, les fonctions, la portée, les instructions de tests, les boucles, les objets, propriétés méthodes et évènements des objets... etc
 
Re : CRLF sous Excell

ok pour tout

je fais cela a temps perdu, je programme des listes en php normalement,
les personnes au routage ont parfois toutes ces manip a faire en ouvrant les classeurs excel
je cherchais donc a temps perdu a faciliter les choses, merci donc pour elles

mais c est vrai que ca permet d ameliorer les connaissances excell et c est une bonne choses, après je vais pas pouvoir encore passer tout mon temps a faire cela ca va faire grincer des dents lol

idem pour ajouter et enlever des boutons tu es oblige d avoir la fenetre personnalisation ouverte et de tirer sur les boutons pour les + ou les - ..

dans le menu juste a cote de ta barre tu as une petite fleche qui te dis ajouter ou supprimer de boutons mais ma barre de routage est "grisé" donc je peux pas y acceder via ce systeme,
pour ajouter ou enlever des boutons je met donc mon ecran de personnalisation et je met un bouton en plus en tirant jusqu a ma barre ou en le tirant de ma barre jusqu a l exterieur,

bref ca marche .. comme je disais pour l instant je vois pas ce que je peux faire de mieux dans cette macros,
j ai pas d autre caractère parasite,

je reste en stand by

a bientot l ami,

Xcellement votre

bruno
 
Re : CRLF sous Excell

bonjour a toi,

allez une derniere pour la route,
j ai ameliorer ma barre d outils specialise avec un deuxieme bouton lie a une 2eme macro
j ai enregistre ma fiche vierge et je voulais la remettre au personne
loupe !! pas de deuxieme bouton malgre que j ai la deuxieme macro de disponible dans le menu macro
j ai attache par dessus (une deuxieme fois) ma barre d outils pensant que ca rajouterai mon bouton et reexpedie le fichier via email
toujours pas de bouton 2 mais toujours ma deuxieme macro,

ca prend pas en compte ma modification du bouton en plus, je peux le rajouter a la main et affecter ma macro mais c est plus pratique de reexpedier le fichier excel qui remplace le 1er et voila non ?

pourquoi le 2e bouton manque t as une idée ??

merciiiiiiiiii

bruno
 
Dernière édition:
Re : CRLF sous Excell

Bonjour jdawson,

Oui, en effet, une barre d'outils attachée va automatiquement créer une copie de celle-ci sur le poste du client
Il faut :
ne pas ouvrir le fichier avec la barre d'outils attachée
supprimer la barre d'outils
ouvrir la nouvelle version du fichier avec la barre d'outils attachée
 
Re : CRLF sous Excell

rebonjour tototiti20008

ouais effectivement, c est ce que j ai fait sur mon collègue beta testeur lol

je lui ais supprimé sa barre d outils, et j ai re enregistré mon fichier en écrasant le sien, j aurais pu mettre le sien a la poubelle cela aurait eu le même effet, (le temps passe a supprimer la barre d outil ou le temps a tirer le fichier sur la corbeille bof ..)
bref pour que la nouvelle version du fichier marche c est la solution

la modification consistait a colorer en rouge toutes les zones ayant plus de 38 caractères
en effet au niveau postal la norme par ligne est de 38 caractère au dessus soit c est tronquée, soit tu rectifie,
comme on le fait faire par le client désormais (on essaie du moins) le matin ma collègue a rajouté des colonnes après chaque zone, pour calculer par nbcar le nombre de caractères, fait un filtre dessus et sélectionner au dessus de 38 pour coloriser

comme je suis parti la dedans j ai rajoute un bouton a cote pour laisser le choix des macros, et en un coup ca colorise avec LEN et ta fameuse formule pour lire toute les cellules de la page,.. tu envoi le fichier colorisé au client qui modifie ainsi sa base..

j ai juste adapte mes compteurs, tu peux pas apparemment utiliser i,j tous le temps, j en suis donc a m,n .. j ai rajoute aussi par ce système pour les cellules contenant juste un point comme contenu..

voila, voilou, je vais bientôt rajouter une ligne a mon cv lollllllllllllllllllllllllll

a bientot l ami

bruno
 
Dernière édition:
Re : CRLF sous Excell

rebonjour

voici mon code

j ai mis en gras la ligne qui sur la feuille active ca m enleve les colonnes avec un fond de couleur en une seule ligne

par contre pour mettre en rouge je passe par la boucle et la fonction len
ca marche tres bien comme cela mais en fait je peux pas quand meme avoir en une seule ligne les colonnes qui depasse 38 et leur affecter le rouge, je suis oblige de passer par la boucle a ton avis ? question de copier ce que je fais en gras pour la feullle entiere sans fond en mettant tout ce qui depasse 38 en rouge en une ligne ou deux d instruction ..

merci de ton avis, comme je disais ca marche deja tres bien comme cela

ps : meme question pour l application.trim tu peux le faire en globalite sur la feuille ? avec ton aide je l ai fait par la boucle sur la value de la celulle ..

merci
bruno

Sub superieur38()

'colorise en rouge le fond de cellule pour les cellules depassant 38 caractèress
Dim k As Long
Dim l As Long
With ActiveSheet.UsedRange
ActiveSheet.UsedRange.Interior.ColorIndex = 0
For k = 1 To .Rows.Count
For l = 1 To .Columns.Count
Select Case Len(.Cells(k, l))
Case Is > 38
.Cells(k, l).Interior.ColorIndex = 3
End Select
Next l
Next k
End With


End Sub
 
Re : CRLF sous Excell

Bonjour jdawson,

Pour la mise en couleur, c'est typiquement le genre de chose que tu peux faire sans macro mais en utilisant une MFC (mise en forme conditionnelle), et là tu pourrais l'appliquer partout d'un coup
Es-tu sûr de vouloir utiliser une macro ?
Ou alors tu pourrais faire une macro qui crée la MFC
Pour application.TRIM (fonction supprespace) on ne peut pas l'appliquer partout d'un coup à mon avis, mais si ton problème est le temps d'exécution on peut envisager de passer par un tableau VBA pour gagner du temps, mais il faudra toujours boucler sur toutes les valeurs
 
Re : CRLF sous Excell

rebonjour

pour ce qui est de l application.trim on va le laisser comme cela, le temps d execution est tres correct car on a jamais des tableau immense,

le max doit etre 20 000 lignes sur 7 8 colonnes j en conviens mais le temps passe a faire ces multiples recherches ca represente aussi pas mal

pour la couleur il faut voir comment ta mise en forme conditionnelle de fait ? comment ca marche ca ?
je dis cela car si c est par menu (je sais pas..) je comprend le concept si tu veux après il faut que ca soit maintenant plus rapide que ma boucle ..

pour ces deux choses j ai pas assez de recul, je viens juste de mettre en place ces deux macros et les personnes on l air de bien apprecier de ne plus filtrer sur 38 etc..

la question etait en fait pour optimiser le code et si il y avait lieu d utiliser moins de lignes pour le meme resultat,

ca m empeche pas de voir ton principe de MFC c est toujours interessant de le savoir

je te remercie en tout cas

je reviens un peu plus tard

cordialement

Bruno
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
5
Affichages
474
Réponses
3
Affichages
597
Réponses
1
Affichages
708
Retour