IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

remplacer un mot par un paragraphe en VBA


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Inscrit en
    Juillet 2007
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 5
    Par défaut remplacer un mot par un paragraphe en VBA
    J'ai une feuille Excel, toutes les cellules de la colonne B sont remplies par du texte avec le même format.
    Je voudrais remplacer, en VBA, un mot particulier de chaque cellule par un paragraphe que je lie dans une autre feuille(utilisation de la fonction Replace).
    Le problème est :
    Comment utiliser la fonction Replace(ou une autre) pour remplacer le mot par le paragraphe et surtout, lors du remplacement, garder le format du paragraphe ?

    Merci de votre réponse.

  2. #2
    Membre éprouvé
    Inscrit en
    Janvier 2007
    Messages
    132
    Détails du profil
    Informations personnelles :
    Âge : 58

    Informations forums :
    Inscription : Janvier 2007
    Messages : 132
    Par défaut
    Bonjour
    Ton paragraphe est une cellule ou un ensemble de cellules
    Dans le premier cas, une simple copie de cellules suffit:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    worksheets(1).cells(A,B)=worksheets(2).cells(X,Y)
    Dans le deuxième, tu peux concaténer tes cellules en mettant un chr(13) -> retour chariot, entre chaque cellules
    Slts

  3. #3
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Peux-tu nous donner ce que tu as essayé de faire avec la fonction Replace, ce que cela te donne.

    Ce sera mieux pour t'aider à trouver une solution

    Starec

  4. #4
    Inactif  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 054
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 054
    Par défaut
    bonsoir,
    Première constatation, il n'est pas possible de mettre différente police ou couleur dans une même cellule.

    2°) Le texte que tu à dans D7 n'a probablement pas de saut de ligne, le renvoi a la ligne dépend de la largeur de la colonne. A moins d'une astuce.. par VBA. mais dans ce cas les sauts de lignes serront garder.

    Mettre le contenu de C5 dans une variable (ex: a$)
    Mettre le contenu feuil2- D7 dans autre variable (ex:b$)
    Pour trouver "Parti" voir du côté de la fonction Instr() CF:Aide
    e=instr(1,a$,"parti") : donne 10
    a$=left(a$,e-1) & b$ & mid(a$,e+6)
    feuil1.select
    range("C5").value=a$

    Voila petit exemple a ajuster
    A+

  5. #5
    Expert confirmé Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Par défaut
    Bonjour

    Je ne sais pas quelle version d'excel tu utilises LeForestier, mais avec excel 2003, on peut avoir des couleurs et des polices différentes dans une cellule.

    progpro, si garder le format est uniquement les sauts de ligne, la fonction Replace fonctionne. Par contre, s'il s'agit de garder les couleurs et la police, la je n'ai pas trouvé de solution.

  6. #6
    Membre à l'essai
    Inscrit en
    Juillet 2007
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 5
    Par défaut mot par un paragraphe en VBA
    Effectivement c'est mon problème. Je voudrais garder les couleurs et la police du texte copié.

    Citation Envoyé par jfontaine
    Bonjour

    Je ne sais pas quelle version d'excel tu utilises LeForestier, mais avec excel 2003, on peut avoir des couleurs et des polices différentes dans une cellule.

    progpro, si garder le format est uniquement les sauts de ligne, la fonction Replace fonctionne. Par contre, s'il s'agit de garder les couleurs et la police, la je n'ai pas trouvé de solution.

  7. #7
    Membre à l'essai
    Inscrit en
    Juillet 2007
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 5
    Par défaut mot par un paragraphe en VBA
    Merci pour votre réponse qui répond en partie à mon problème.Je voudrais savoir s'il y a un moyen simple pour garder le format du texte copié.
    Ci-joint mon exemple.
    Merci de votre réponse

    Citation Envoyé par LeForestier
    bonsoir,
    Première constatation, il n'est pas possible de mettre différente police ou couleur dans une même cellule.

    2°) Le texte que tu à dans D7 n'a probablement pas de saut de ligne, le renvoi a la ligne dépend de la largeur de la colonne. A moins d'une astuce.. par VBA. mais dans ce cas les sauts de lignes serront garder.

    Mettre le contenu de C5 dans une variable (ex: a$)
    Mettre le contenu feuil2- D7 dans autre variable (ex:b$)
    Pour trouver "Parti" voir du côté de la fonction Instr() CF:Aide
    e=instr(1,a$,"parti") : donne 10
    a$=left(a$,e-1) & b$ & mid(a$,e+6)
    feuil1.select
    range("C5").value=a$

    Voila petit exemple a ajuster
    A+
    Fichiers attachés Fichiers attachés

  8. #8
    Membre à l'essai
    Inscrit en
    Juillet 2007
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 5
    Par défaut
    Comme je l'ai précisé dans mon message, j'ai par exemple dans la feuille1 dans la cellule C5 le texte "TOTO est parti à la pêche". Je voudrais remplacer, par exemple, le mot "parti" par un texte(contenant des sauts de ligne) contenu dans la cellule D7 de la feuille2. Lors de la copie on garde le format du texte copiè sans modifier le format du reste du texte de la cellule C5.

    progpro

Discussions similaires

  1. remplacer plusieurs mots par un seul mot
    Par nivose110 dans le forum Shell et commandes GNU
    Réponses: 1
    Dernier message: 07/02/2007, 09h40
  2. [ms-dos] remplacer un mot par un autre
    Par Spidermeu dans le forum Autres Logiciels
    Réponses: 5
    Dernier message: 28/07/2006, 11h57
  3. Parser une page pour remplaçer des mots par d'autres
    Par HALOMOTO dans le forum Langage
    Réponses: 13
    Dernier message: 13/07/2006, 22h58
  4. Remplacer un mot par un autre dans un fichier
    Par vbcasimir dans le forum Linux
    Réponses: 8
    Dernier message: 25/04/2006, 12h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo