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 :

Aide VBA sur Exel


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2016
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2016
    Messages : 8
    Par défaut Aide VBA sur Exel
    Boujour tout le monde,

    J'ai un problème, je ne trouve pas pourquoi sa ne marche pas.
    Je veux que UserForm2 soit détaillé sur UserForm3
    Par exemple :
    Code : 29
    Prix Unitaire : 5€
    Intétulé : Test
    Quantité : 1
    http://prntscr.com/dn9ptd
    http://prntscr.com/dn9pxc

    UserForm2
    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
    32
    33
    34
    35
    36
    37
    Private Sub CommandButton1_Enter()
     
    Sheets("Facture").Activate
    Range("A1").Select
    Selection.End(xlDown).Select
    Selection.Offset(1, 0).Select
    ActiveCell = TextBox1.Value
    UserForm2.Hide
    UserForm3.Show
     
    End Sub
     
    Private Sub CommandButton2_Click()
    UserForm1.Show
    UserForm2.Hide
    End Sub
     
    Private Sub TextBox1_change()
    If TextBox1 <> "" Then
     
            CommandButton1.Enabled = True
        Else
            CommandButton1.Enabled = False
     
        End If
     
    If WorksheetFunction.CountIf(Sheets("BaseCode").Range("A:A"), Me.TextBox1.Value) = 0 Then
     
        MsgBox "Ce Code n'existe pas. Resaisir un nouveau Code", vbInformation + vbOKOnly, "Code non trouvé"
     
        End If
     
    End Sub
     
    Private Sub UserForm_Click()
     
    End Sub
    UserForm3
    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
    Private Sub CommandButton2_Click()
    Unload Me
    End Sub
     
    Private Sub Label6_Click()
     
    End Sub
     
    Private Sub Label8_Click()
     
        With UserForm2
     
        Label8 = Application.WorksheetFunction.VLookup(CLng(UserForm2.TextBox1), Sheets("BaseCode").Range("BaseCodes"), 1, 0)
     
        End With
     
    End Sub

  2. #2
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par sas_fr Voir le message
    J'ai un problème, je ne trouve pas pourquoi sa ne marche pas.
    Bonjour,

    Il faut placer votre code entre balises #
    Et indiquer à quoi se rapporte votre code.

    Vous devriez passer vos valeurs dans vos Userforms via des variables déclarées public dans un module standard.

    Cordialement.

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2016
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2016
    Messages : 8
    Par défaut
    Voilà c'est fait pour le code
    Comment on fait sa ? :
    Vous devriez passer vos valeurs dans vos Userforms via des variables déclarées public dans un module standard.

  4. #4
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par sas_fr Voir le message

    Il vous faut regarder la façon dont on déclare les variables et la signification de leur portée dans l'aide Excel, notamment si vous devez utiliser les données dans différents modules (Userforms, modules standards).

    Un exemple dans le code ci-dessous pour votre matériel. Il peut être intéressant de définir une variable type et de s'en référer ensuite pour créer d'autres variables selon ce modèle. Dans cet exemple, on définit la variable Matos et on se sert de ce modèle pour créer la variable MaterielEnCours.

    Autrement, vous pouvez également déclarer vos variables comme pour MaterielCode, etc...

    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
    32
    33
    34
    35
    36
    37
     
    Option Explicit
     
    Public Type Matos
           Code As Variant  ' Ou String
           Libelle As String
           Cout As Currency
           Quantite As Integer ' ou Single si le matériel admet des décimales
    End Type
     
    Public MaterielEncours As Matos
     
    Public MaterielCode As Variant
    Public MaterielLibelle As String
    Public MaterielCout As Single
    Public MaterielQuantite As Single
     
     
    Sub Essai()
     
        With MaterielEncours
             .Code = "29"
             .Libelle = "Test"
             .Cout = 5#
             .Quantite = 1
        End With
        MaterielCode = "29"
     
        With MaterielEncours
             MsgBox .Code & Chr(10) & .Libelle & Chr(10) & .Cout & Chr(10) & .Quantite
        End With
     
        MsgBox MaterielCode
     
        'Etc....
     
    End Sub
    Nb : Un module standard, c'est ni un Userform ni un module de classe.


    Cordialement.

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2016
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2016
    Messages : 8
    Par défaut
    Je met dans sa : http://prntscr.com/dnouny
    le code
    Car ma base de donnée est sur la feuille 3 (basededonnée)
    Moi je veux que UserForm2 du TexTBox1 tape le Code (par exemple : 29)
    puis sa va vers UserForm3 qui affiche des détaille du code (qui va chercher les détaile du code dans la base de donnée(feuil3) ) qu'on a taper sur le UserForm2 (29)

  6. #6
    Invité
    Invité(e)
    Par défaut
    Quand je vois cette ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
        Label8 = Application.WorksheetFunction.VLookup(CLng(UserForm2.TextBox1), Sheets("BaseCode").Range("BaseCodes"), 1, 0)
    Je voulais simplement vous dire qu'il vaudrait mieux travailler avec une variable plutôt que directement avec le TextBox1 du Userform2.

    Maintenant, ne voyant pas vos données, je ne peux rien vous dire de plus.

    Cordialement.
    Dernière modification par AlainTech ; 26/01/2017 à 22h30. Motif: Suppression de la citation inutile

Discussions similaires

  1. [XL-2003] Aide sur code VBA sur Excel
    Par Invité dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 31/03/2013, 17h14
  2. [XL-2007] Étendre une formule à l'aide de VBA sur une plage variable
    Par cyril7751 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 24/07/2012, 16h23
  3. aide : 3 question sur exel ?
    Par el-amr dans le forum Excel
    Réponses: 5
    Dernier message: 11/06/2011, 20h15
  4. [XL-2007] Problème sur l'aide VBA excel
    Par Airone784 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 30/05/2011, 09h37
  5. [E-03] Besoin d'aide pour l'adaptation d'un script vba sur excel
    Par Tinien dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 23/02/2009, 11h17

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