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

VB 6 et antérieur Discussion :

probleme d'envoi vers excel


Sujet :

VB 6 et antérieur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Inscrit en
    Juillet 2007
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 10
    Par défaut probleme d'envoi vers excel
    Bonjours a tous,

    je viens de realiser pendant mon stage industriel un programe sous vb6.
    Actuellement le programe est fini et marche sur les ordinateur equipe de vb, mais des que j'installe mon logiciel sur un ordinateur qui n'est pas equipe de vb, je recois a chaque fois une erreur au moment ou mon programe doit envoyer des valeurs dans excel.

    si quelqu'un pourrai me donner une solution, se serai vraiment sympa, car je sais pas quoi faire.

    jacques

  2. #2
    Membre Expert
    Avatar de Delbeke
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    2 675
    Détails du profil
    Informations personnelles :
    Âge : 72
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 2 675
    Par défaut
    Il faut générer un programme d'installation. Vb est fourni avec un assitant d'empaquetage qui va te créer ce fichier setup

  3. #3
    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
    Et comment tu les envois de vb vers excel tes données .. par la poste ..? j'ai pas vu de code ..?

    Et le message d'erreur il dit quoi ..?


    Citation Envoyé par baboo50
    ..., car je sais pas quoi faire.
    commence déjà par faire une description plus précise de ton probléme...!

  4. #4
    Membre régulier
    Inscrit en
    Juillet 2007
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 10
    Par défaut
    pour commencer j'ai oublie de preciser que je compile avec innosetup.

    second point le message d'erreur recu est le suivant:

    Run-time error '9':
    Subscript out of range

    et pour le troisieme point comme je n'ai pas encore trouve comment envoyer dans excel par la poste, je te joint mon code avec quelques explications.

    tout d'abord j'ouvre l'excel (ca il le fait sans probleme sur tout les ordinateur) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    listprog.Visible = True
    listprog.Workbooks.Add
    listprog.Worksheets.Add
    listprog.Sheets("feuil1").Select
    apres je tri toutes les valeurs ( ca c'est la partie qui ne concerne pas excel, et qui marche aussi )

    puis je fini avec l'envoi des valeurs qui change de colonne tout le x valeur rentré dans la colonne tels que (ca c'est la parti qui marche pas du tout) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Numero_colonne = 1
    saut = txtline.Text - 1 
    For o = 0 To frmgstprog.lstprog.ListCount - 1
    If o Mod (saut) = 0 And o >= saut Then
        Numero_colonne = Numero_colonne + 2
    End If
     
            listprog.Cells(1, Numero_colonne) = "n°card"
            listprog.Cells(1, Numero_colonne + 1) = "n°prog"
     
            l = o Mod (saut) + 2
            listprog.Cells(l, Numero_colonne) = Left(frmgstprog.lstprog.List(o), InStrRev(frmgstprog.lstprog.List(o), "_") - 4)
            listprog.Cells(l, Numero_colonne + 1) = Right(frmgstprog.lstprog.List(o), Len(frmgstprog.lstprog.List(o)) - InStrRev(frmgstprog.lstprog.List(o), "_"))
    Next o
    voila je t'ai explique tout ce qui concerne excel.
    si vous avez d'autre question nhesite pas a demander.
    pour ma part ce que je trouve vraiment bizarre c'est que ca marche sur tout les ordinateur equipe de vb et non pas sur les autres ordinateurs ( dans tout les cas j'ai utilise le meme setup cree avec innosetup)

  5. #5
    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
    bonjour,
    je crois qu'il faut ajouter
    listprog.Cells(l, Numero_colonne). value
    A+

  6. #6
    Membre régulier
    Inscrit en
    Juillet 2007
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 10
    Par défaut
    bon merci pour ton idee
    mais j'ai toujours le meme probleme, les ordinateurs ne veulent toujours pas envoyer dans excel avec mon code.

    si quelqu'un d'autre aurai un idee, je le remercie d'avance de ma la communiquer

  7. #7
    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
    bon je suppose que ton probléme viens de l'utilisation de ton nom de feuille "feuil1" ... qui n'existe pas par défaut sur tous tes PC..

    pour faire rapide tu pourrai modifier le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    listprog.Visible = True
    listprog.Workbooks.Add
    listprog.Worksheets.Add
    listprog.Sheets("feuil1").Select
    en remplaçant listprog.Sheets("feuil1").Select par listprog.Sheets(1).Select

    mais bon c'est pas "terrible" comme code explique nous déjà ce que tu veux faire avec ces 4 lignes ..?

    1. .visible :=> pour que l'application excel soit visible
    2. worbooks.add => crée un nouveau classeur
    3. Worksheets.add => crée une nouvelle feuille dans classeur courant
    4. sheets("feuil1").select => sélectionne la feuille : feuil1 (pas forcément celle crée précédament..)


    pourquoi créer une feuille puis en sélectionner une autre ..?.

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

Discussions similaires

  1. formatage date avant envoi vers excel
    Par xyanure dans le forum ASP.NET
    Réponses: 5
    Dernier message: 29/06/2009, 17h47
  2. Probleme d'exportation vers excel avec report 10G
    Par jedos dans le forum Reports
    Réponses: 0
    Dernier message: 19/05/2009, 20h58
  3. Réponses: 4
    Dernier message: 02/12/2008, 10h13
  4. Probleme pour Export vers Excel "intersect"
    Par kleenex dans le forum Access
    Réponses: 4
    Dernier message: 05/01/2006, 14h54
  5. Envoie vers excel
    Par nah_wah dans le forum Composants VCL
    Réponses: 5
    Dernier message: 19/10/2005, 14h56

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