Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2019 Saut à la ligne dans cellule

coloc52

XLDnaute Nouveau
Bonjour,

J'ai un problème de saut à la ligne dans des cellules. J'utilise Office 2019.

Je pars d'un fichier excel généré par une application internet où des personnes doivent remplir un formulaire.

Après avoir rapatrié le fichier excel, je lance une macro pour me permettre d'obtenir un tableau exploitable par d'autres personnes. Cette macro va me mettre en forme les colonnes suivant le besoin que j'en ai : agrandir, supprimer, déplacer, mise en forme conditionnel, calcul, etc.
Tout fonctionne parfaitement et j'ai le résultat désiré à la fin. Sauf pour une colonne et c'est là que j'ai besoin de votre aide.

Cette colonne contient une adresse qui est saisie dans l'application au minimum sur deux lignes avec entre le nom de la rue et le code postal/ville l'utilisation soit de la touche entrée, soit de la combinaison shift entrée. La méthode de saisie n'a pas d'importance pour la suite, lors de la création du tableau d'exportation, la cellule est identique.

Donc si l'adresse a été complétée dans le formulaire elle se présente de la façon suivante dans le fichier excel :

14 rue de la poupée qui tousse51000 Reims

Je voudrais voir :

14 rue de la poupée qui tousse
51000 Reims


La colonne est bien paramétrée avec un renvoi à la ligne automatique. D'ailleurs si je réduis la taille de la colonne je peux voir :

14 rue de la poupée
qui tousse51000
Reims


La seule façon que j'ai pour que le saut de ligne dans la cellule soit validé et que j'obtienne le résultat escompté c'est de passer de cellule en cellule de faire F2 pour modifier ma cellule et de la valider par la touche entrée.

Pas de problème si j'ai deux cellules concernées mais je peux en avoir bien plus et je ne me vois pas le faire manuellement alors que j'ai tout automatisé.

Avez vous une solution pour moi ?

Merci de votre aide
Corinne
 
Solution
La séparation est représentée par un "retour chariot" alors que sous excel c'est "retour à la ligne".
Il faut remplacer tous ces symboles par les bons :

VB:
Sub test()
    Cells.Replace vbCr, vbLf
    Rows.AutoFit
End Sub

coloc52

XLDnaute Nouveau
Bonjour,
Déjà Merci d'avoir lu mon message.

Je ne suis pas à l'origine du formulaire qui sert à remplir les informations, c'est une application existante sur internet que j'utilise. Je ne peux donc pas aller voir les propriétés des différentes zones à remplir.
Cependant, je ne vais pas dans l'application et le formulaire pour récupérer les informations.
L'application me donne la possibilité de télécharger un fichier en format xlsx et c'est à partir de ce téléchargement que je travaille.

J'expliquais dans mon premier post que je devais faire F2 pour modifier et valider. Je n'apporte aucune modification. En fait je vais sur la cellule comme si je voulais la modifier. Je ne fais aucune modification et je valide pour passer à la cellule suivante. A ce moment là, le saut à la ligne est validé.

Je voudrais qu'il soit validé automatiquement, d'une manière ou d'une autre sans avoir à aller dans chaque cellule.
 

fanch55

XLDnaute Barbatruc
Vous dites que c'est sur une seule colonne.
Vous pouvez essayer de :
  1. Sélectionner la colonne
  2. la copier
  3. la coller sur elle-même en précisant valeur .

ou exécuter la macro ci-dessous qui fait la même chose ( indiquez la colonne )
VB:
Sub DoF2()
    With Columns("L")
        .Copy
        .PasteSpecial xlPasteValues
    End With
End Sub
 

fanch55

XLDnaute Barbatruc
La séparation est représentée par un "retour chariot" alors que sous excel c'est "retour à la ligne".
Il faut remplacer tous ces symboles par les bons :

VB:
Sub test()
    Cells.Replace vbCr, vbLf
    Rows.AutoFit
End Sub
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…