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 :

conception procédure générale


Sujet :

VB 6 et antérieur

Vue hybride

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

    Informations forums :
    Inscription : Mai 2002
    Messages : 35
    Par défaut conception procédure générale
    Bonjour

    Pour concevoir une procédure générale qui sera visible dans toutes les forms
    faut-il appliquer tout le code dans la procédure ou le code peut-il être dans une form.
    J'explique: j'ai une addition dont le résultat doit apparaître dans deux forms
    voici le code de l'addition que j'ai dans la form2.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Dim AddintSomme As Long
    Dim First As Long
    Dim Second As Long
    First = Val(intSomme)
    Second = Val(Text1.Text)
    Text2.Text = (intSomme + Text1.Text)
    End Sub
    Je pense déclarer cette addition dans un module en faisant une procédure générale comme ceci:

    Est ce la bonne façon???
    Merci pour toutes réponses.

  2. #2
    Membre Expert Avatar de OhMonBato
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    2 660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 660
    Par défaut
    Le plus simple est de faire une fonction (Public) que tu peux mettre dans une des 2 feuilles ou dans un module à part.

    Le code dans une feuille :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Private Sub Command1_Click()
    MsgBox Somme(Val(Text1.Text), Val(Text2.Text))
    End Sub
    Le code de ta fonction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Public Function Somme(First As Single, Deuxieme As Single) As Single
    Somme = First + Deuxieme
    End Function

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 35
    Par défaut
    Bonjour

    Soucis soucis
    Voici le code actuel qui dans une form qui s'appelle FOcompt:
    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
    Public Somme As Long
    Dim CTSant
    Dim CTSnouv
    Private Sub Form_Load()
    Text1.Text = "1"
    Text2.Text = "0"
    If OPENCOM("COM1:9600,N,8,1") = 0 Then MsgBox "Port com1 occupé"
    DTR 1
    CTSant = -1
    End Sub
    Private Sub Timer1_Timer()
    CTSnouv = CTS
      If (CTSnouv <> CTSant) Then
      CTSant = CTSnouv
         If CTSnouv Then
            Somme = Somme + Text1.Text
            Text2.Text = Somme
            FOlistbox.Text3 = Somme
        End If
      End If
    End Sub
    Donc j'ai créé une fonction public dans un module
    Mais rien ne s'affiche dans les autres forms tant que je n'ai pas ouvert la form FOcompt

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 35
    Par défaut
    Big
    Ce foutu Timer est ce que je peut le mettre dans un module??

  5. #5
    Membre Expert Avatar de OhMonBato
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    2 660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 660
    Par défaut
    J'avoue que malgré le peu de lignes de code, j'arrive à m'y perdre..

    Tu fais un "Public Somme as Long", tu déclares donc une variable.
    Tu déclares ensuite une Sub (ce n'est donc pas une fonction mais une procédure et tu ne sembles pas mettre de code dedans) portant le même nom que ta variable, pour confondre les 2 on fait pas mieux alors que ce sont 2 choses totalement différentes !

    Pourquoi ne pas faire une fonction comme je te le suggérais ? Si tu ne maitrises pas un minimum la différence entre variable, fonction, procédure, je te suggère d'oublier temporairement le projet sur lequel tu travailles et de faire quelques petits exercices basiques pour comprendre ces notions de base qui sont essentielles.

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

Discussions similaires

  1. Présentation du forum Conception (Générale)
    Par onjanirina dans le forum Conception (Générale)
    Réponses: 0
    Dernier message: 21/03/2011, 18h11
  2. Rendre une procédure générale
    Par DeveloppeurWeb dans le forum PL/SQL
    Réponses: 0
    Dernier message: 02/12/2010, 17h01
  3. conception avec les procédure stockées
    Par ammouna24 dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 18/06/2009, 23h27
  4. Procédures générales pour créer un sites e-commerce
    Par stanley dans le forum E-Commerce
    Réponses: 1
    Dernier message: 30/09/2008, 16h47
  5. [Conception] procédure stockée, variable, et select multi base
    Par overider dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 14/03/2007, 13h02

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