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 :

Procédures en VBA


Sujet :

Macros et VBA Excel

Vue hybride

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

    Informations forums :
    Inscription : Décembre 2007
    Messages : 62
    Par défaut Procédures en VBA
    Bonjour tout le monde,
    En ce moment en cours, nous avons vu la notion de procédure mais j'ai sur tout dû mal à comprendre. Auriez-vous la gentillesse de m'expliquer s'il vous plaît avec des termes pas trop techniques car je suis un débutant en VBA. Ce que j'ai compris la différence entre une fonction et une procédure est qu'une procédure ne rends jamais une valeur en sortie tandis qu'une fonction oui. Merci à vous.
    Bon dimanche

  2. #2
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Par défaut
    Bonjour,

    Pas vraiment le temps de faire tout un laius pour réexposer ce qui l'est déjà dans ton aide en ligne.

    En résumé :

    Une procédure exécute des instructions. Celles-ci peuvent agir tant sur des variables globales nommées ou des objets que sur la valeur de paramètres qui lui sont passés.

    Une fonction peut faire ce que fait une procédure, mais, en plus peut retourner une valeur (c'est à celà qu'on l'utilise en général).

    Plutôt que de continuer ainsi, voilà ce que je te propose :

    sur ton UserForm :

    un bouton de commande Command1 et un Label Label1

    ce code :

    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
    28
    29
    30
    31
    Private Sub Command1_Click()
     Dim a As String
     a = "toto"
     procedure1 a
     MsgBox a
     procedure2 a
     MsgBox a
     MsgBox fonction1(a)
     MsgBox fonction2(a)
    End Sub
     
    Private Sub procedure1(a As String)
      a = "hola"
      Label1.Caption = "SALUT"
    End Sub
     
    Private Sub procedure2(titi As String)
      titi = "bonjour"
    End Sub
     
    Private Function fonction1(machin As String) As String
      fonction1 = Left(machin, 4)
    End Function
     
    Private Function fonction2(truc As String) As Integer
      If Trim(truc) = "bonj" Then
        fonction2 = 2
      Else
        fonction2 = 24
      End If
    End Function
    Lance, suis, analyse, comprends... (c'est auto explicite).

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 62
    Par défaut
    Bonjour,
    Merci pour votre aide

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 22/05/2014, 10h29
  2. Procédure simultanée VBA Excel
    Par daveb123 dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 08/07/2013, 22h03
  3. [XL-2002] Message Outlook interrompant une procédure Excel VBA
    Par pchic dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 27/02/2011, 04h34
  4. [XL-2003] Création de procédure par VBA
    Par setepenre dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 14/12/2010, 09h12
  5. [AC-2003] Tâche planifiée : lancer une procédure via VBA
    Par patbeautifulday dans le forum VBA Access
    Réponses: 2
    Dernier message: 11/07/2009, 01h12

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