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 :

[VB]Relation entre deux form.


Sujet :

VB 6 et antérieur

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 7
    Points : 4
    Points
    4
    Par défaut [VB]Relation entre deux form.
    Bsr, j'ai un message d'erreur qui est "erreur de compilation :référence incore ou non qualifiée"

    J'ai deux feuille :la 1ère est frmdocument, la seconde form1

    voici une partie de mon code source qui se trouve dans la feuille form1:

    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    Private Sub Command1_Click()
    'Déclaration des variables
    Dim appExcel As Excel.Application 'Application Excel
    Dim wbExcel As Excel.Workbook 'Classeur Excel
    Dim wsExcel As Excel.Worksheet 'Feuille Excel
    Dim fichier As String
    Dim ct As String
     
    'Il me met en surbrillance la ligne suivante
    frmDocument !Combo5.Text = ct
     
    If ct = "DANIEL" Then
    fichier = "L:\SERVICE\LE.xls"
    ElseIf ct = "MARC" Then
    fichier = "L:\SERVICE\DO.xls"
    ElseIf ct = "JUAN" Then
    fichier = "L:\SERVICE\CR.xls"
    ElseIf ct = "NATANT" Then
    fichier = "L:\SERVICE\CL.xls"
    end if
     
    'Ouverture de l'application
    Set appExcel = CreateObject("Excel.Application")
    'Ouverture d'un fichier Excel
    Set wbExcel = appExcel.Workbooks.Open(fichier)
    Set wsExcel = wbExcel.Worksheets(1)
    End Sub
    Si qqun à des idées sur une solution, merci d'avance.

  2. #2
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Points : 4 674
    Points
    4 674
    Par défaut
    Veux-tu bien, s'il te plait :

    - Assortir ton titre du tag montrant si es sous VBA Excel ou si tu appelles Excel depuis VB, pour éviter une confusion
    - Utiliser les balises code ( [ code] et [ /code] pour entourer ton code, de sorte à le rendre lisible et faciliter la tâche de ceux qui voudront bien t'aider.

    Je t'invite, puisque ce n'est pas là ton 1er sujet, à relire les règles de ce forum. C'est en les appliquant que tu te donneras toutes les chances de recevoir une réponse plus rapide.

    EDIT : une petite chose me gêne quelque peu :
    Certaines paries de ton code donnent à penser que ton niveau est suffisamment évolué pour que je comprenne difficilement ce qui te conduit à utiliser un point d'exclamation ici :
    frmDocument !Combo5.Text = ct
    Quelle en est la signification ?

  3. #3
    Expert éminent sénior


    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
    Points : 20 038
    Points
    20 038
    Par défaut
    puis tu nous montre surement pas tous le code ... surtout celui qu agit sur Ct

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Dim ct As String
     
    'Il me met en surbrillance la ligne suivante
    frmDocument !Combo5.Text = ct
    du déclare ct ... , tu n'y affecte aucune valeur puis tu te sert de sa valeur... qui est donc une chaine vide .... ?

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 7
    Points : 4
    Points
    4
    Par défaut
    Slt, sorry, mon post concerne VB.
    Je vais commencer par vous expliquer ce que je veux faire ç sera déjà une bonne base.
    je veux que le click sur un bouton d'une form child qui s'appelle frmdocument ouvre une seconde fenetre, et le click sur un bouton (command1) de cette derniere ouvre un fichier excel.
    Le fichier excel dépendra de la valeur du combo5 .

    Si il y a le code frmdocument !combo5.text, c'est pour lire la valeur de ce combo appartenant à la feuille frmdocument.

    J'ai déclaré ct comme un type chaine c'es pour remplacer
    frmdocument !combo5.text entre le if et le then.
    Je n'ai pas initialiser la valeur de ct, car la valeur de CT sera donc
    la valeur de frmdocument !combo5.text.

    Voily voila !

  5. #5
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Points : 4 674
    Points
    4 674
    Par défaut
    Je crois bien que tu devrais commencer par le commencement, en commençant par l'étude de l'attribution de valeurs aux variables...
    a = b et b = a sont séjà 2 choses bien différentes.
    si, par exemple, 1 pain vaut 0,70 euros, celà ne veut pas dire que 0,70 euros ont pour seule correspondance 1 pain...
    Commence donc par ces toutes petites choses de base... après quoi tu pourras t'entraîner avec des contrôles sur une seule feuille, puis deux...
    Nous t'accueillerons et t'épaulerons alors très volontiers.

  6. #6
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 7
    Points : 4
    Points
    4
    Par défaut
    Re-
    je me suis effectivement rendu compte que j'ai fait une erreur de syntaxe sur l'expression d'affectation, c'est bien ct = "frmDocument !Combo5.Text" et non l'inerse.
    Mais j'ai cette fois-ci une erreur mais en bout de programme, donc j'y suis pressque .
    car j'ai l'erreur d'execution 1004: " introuvable
    avec la ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set wbExcel = appExcel.Workbooks.Open(fichier)
    en surbrillance.

    je vais devenir fou,


    Je fait beaucoup d'erreur de débutant, ça fait env 3 ans que j'ai pas programmer en vb, et là je me goure sur une syntaxe de base de bcp de
    type de langage de programma. pff,

  7. #7
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Points : 4 674
    Points
    4 674
    Par défaut
    T'en fais pas !
    Cà va revenir... sans doute...
    J'ai repris VB il y a 3 mois à mon âge (66 ans) après 4 ans d'éloignement de tout clavier... alors tu vois ?... faut jamais désespérer...

    Des spécialistes de VBA vont surement venir à ton aide (moi c'est VB), mais j'ai comme l'intuition que Open(fichier) n'est pas ......

  8. #8
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 7
    Points : 4
    Points
    4
    Par défaut
    J'aime bien les casse-tetes, alors je pense que ça va revenir meme ce type d'erreur de base de syntaxe me met bien les nerfs quand meme.
    Sinon c'est plus l'aide de codeur en vb qu'il me faut et non en vba.
    Merci en tout cas.

  9. #9
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Points : 4 674
    Points
    4 674
    Par défaut
    Tu as déjà la FAQ, sur ce forum...
    Commence par voir ceci, qui te montre comment on peut ouvrir Word
    Inspire-t'en pour Excel.
    http://vb.developpez.com/faq/?page=Office#word
    Toujours dans la FAQ (pour ouvrir Excel, cette-fois)
    http://vb.developpez.com/faq/?page=Office#excel2flex

    EDIT : tu as bien compris qu'il fallait ajouter, avec cette méthode, une référence à Excel dans ton projet ?

  10. #10
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 7
    Points : 4
    Points
    4
    Par défaut
    ok, je suis entrain d'éplucher la faq et d'autres site, je veux absolument
    trouver la soluce aujourd'huit.
    Le code ma parait bon, mais je pense que le pb repose sur la récupération de la valeur affectée à l'objet fichier.

    ARRRRRRRRgggghh.

    Merci en tout cas.

  11. #11
    Expert éminent sénior


    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
    Points : 20 038
    Points
    20 038
    Par défaut
    be déjà essai de regarder la valeur de ta variable fichier dans l'expression :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set wbExcel = appExcel.Workbooks.Open(fichier) e
    et pose toi la question ...? ce fichier existe-t'il .. sous le bon répertoire ? ...

  12. #12
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 7
    Points : 4
    Points
    4
    Par défaut
    Oui, il existe, j'ai meme recréé l'arborescence dans c:, et idem
    Mais j'ai l'iimpression que c'est l'affectation des valeurs à la variable fichier qui merde.

  13. #13
    Expert éminent sénior


    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
    Points : 20 038
    Points
    20 038
    Par défaut
    Citation Envoyé par dann
    Oui, il existe, j'ai meme recréé l'arborescence dans c:, et idem
    Mais j'ai l'iimpression que c'est l'affectation des valeurs à la variable fichier qui merde.
    c'est pour cela que je t'ai demander de regarder la valeur de ta variable fichier..., pour cela rajoute un debug.print, un messagebox.. ou place un point d'arrêt dans ton programme...

Discussions similaires

  1. relation entre deux forme en c#
    Par hadjiphp dans le forum C#
    Réponses: 5
    Dernier message: 22/10/2009, 19h12
  2. [VB.NET] Passer une valeur de control entre deux form
    Par TheMacleod dans le forum Windows Forms
    Réponses: 5
    Dernier message: 27/12/2005, 11h07
  3. [EJBQL] [CMP] Relation entre deux beans
    Par salome dans le forum Java EE
    Réponses: 1
    Dernier message: 11/07/2005, 23h50
  4. [VB.NET] Perte de focus entre deux form
    Par toniolol dans le forum Windows Forms
    Réponses: 2
    Dernier message: 05/07/2005, 08h00
  5. Relation entre deux tables
    Par manel007 dans le forum Langage SQL
    Réponses: 5
    Dernier message: 04/03/2005, 16h54

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