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

VBScript Discussion :

[VBS] - Importer un retour chariot dans Excel


Sujet :

VBScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 23
    Par défaut [VBS] - Importer un retour chariot dans Excel
    Bonjour à tous,

    Je suis en train de developper un petit formulaire en HTML et un petit bout de VBScript qui me permet d'envoyer les données du formulaire sous Excel.

    Je suis confronté à un petit problème lié aux retour chariot dans un textarea.
    J'ai un textarea qui me permet de recueillir un texte d'introduction.

    Mon problème vient lorsque je met la valeur du textarea dans une cellule excel, le retour chariot devient un carré sous excel :



    Mon code VBScript :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     Public Sub excelENTETE()
    	' OBJECT APPLICATION : INSTANCE DE EXCEL
    	set objexcel = createobject("excel.application")
     
    	' OBJECT WOEKBOOK : CLASSEUR EXCEL
    	objexcel.workbooks.add
     
     
    	objexcel.Range("B14:J20").MergeCells = True
    	objexcel.Range("B14").HorizontalAlignment = -4130
    	objexcel.Range("B14").VerticalAlignment = -4160
     
    	objexcel.Cells(14,2).value = document.getElementById("xlEValeur15").value
     
    	' EXCEL : AFFICHE L'APPLICATION EXCEL
    	objexcel.visible = true	
    End Sub
    Comment faire pour que sous excel cela n'apparaisse pas ?

    Merci d'avance, je continue à chercher une solution à mon souci en attendant.
    Images attachées Images attachées  

  2. #2
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Par défaut
    Vérifier quel(s) caractère(s) ser(ven)t au retour chariot et le(s) remplacer par un vbLf (Chr(10)).
    N'oubliez pas de cliquer sur quand vous avez obtenu ou trouvé vous-même la réponse à votre question.
    Si vous trouvez seul, pensez à poster votre solution. Elle peut servir à d'autres!
    Pensez aussi à voter pour les réponses qui vous ont aidés.
    ------------
    Je dois beaucoup de mes connaissances à mes erreurs!

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 23
    Par défaut
    Arf ! j'arrive pas à déterminer le caractère du retour chariot...

    ...la seule chose que j'ai trouvé c'est en mettant un evénement à la saisie d'un caractére sur mon textarea, le caractére retour à la ligne correspond au keyCode 13.

    J'ai cherché un peu du coup le retour chariot correspond à &#13 ; j'ai donc mis dans mon textarea ceci :

    Cher Mr Xxxxx,&#13 ;Je vous informe&#13 ;...&#13 ;Cordialment

    Sous IE, l'affichage se fait correctement j'ai bien mes passage à la ligne, mais lorsque en VBScript je recherche &#13 ; dans la valeur que je recupére je n'ai rien.

  4. #4
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    comment fait tu la recherche...? il faut remplacer le caractére 13.. essai :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    objexcel.Cells(14,2).value = replace(document.getElementById("xlEValeur15").value,chr(13),chr(13) & Chr(10) )

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 23
    Par défaut
    SOLUTION :

    Comme l'avait précisé AlainTech, il suffit de remplacer le caractère retour chariot du textarea par le caractère retour chariot de VBScript. D'où :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Replace(document.getElementById("nom_du_textarea").value, chr(13)&chr(10), chr(10))
    Ce qui a pour effet de remplacer le 'Retour chariot chr(13) et saut de ligne Chr(10)' (lorsque l'utilisateur appuye sur entrée dans le textarea) par un simple 'Retour chariot'.

    Ainsi, on peut exporter la valeur du textarea dans une cellule d'excel sans avoir les carrés qui apparaissent.

    Merci beaucoup de m'avoir aidé à résoudre mon problème.

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 23
    Par défaut
    Arfff désolé bbil, j'ai ecrit mon message avant de voir le tien, et merci encore j'ai trouvé la réponse en me grattant un peu le cerveau hihi ta solution marche aussi...

    ...Par contre le fait de remplacer le char(13) par char(13) & char(10) fait apparait un double retour chariot sous excel (si je n'abuse je vais reverifier quand meme) contrairement en faisant char(13) & char(10) par char(10)

    EDIT : je viens de vérifier à l'instant la solution que tu proposes bbil ne marche pas vraiment car le fait de mettre chr(13) & chr(10) corrige pour le retour chariot qui vient du textarea mais on voit apparait une nouvelle ligne avec le fameux carré.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VB.NET]Retour chariot dans un champ texte
    Par San Soussy dans le forum ASP.NET
    Réponses: 10
    Dernier message: 23/06/2005, 12h36
  2. Retour chariot dans l'inspecteur d'objet
    Par All Jinx dans le forum Composants VCL
    Réponses: 3
    Dernier message: 20/10/2004, 01h28
  3. Comment effectuer un retour chariot dans 1 JTextarea
    Par elitost dans le forum Composants
    Réponses: 2
    Dernier message: 21/06/2004, 17h18
  4. retour chariot dans un string
    Par bono dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 29/12/2003, 12h17
  5. Retour chariot dans un TMemo ?
    Par Vincent PETIT dans le forum C++Builder
    Réponses: 7
    Dernier message: 27/08/2002, 18h55

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