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 :

[VBA-E] Encore un petit prob de combobox


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    164
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 164
    Points : 43
    Points
    43
    Par défaut [VBA-E] Encore un petit prob de combobox


    Salut a tous

    Voila , suite a votre tres grande aide , je suis pratiquement a la fin de mon projet , mais il reste encore qq petit detail

    Alors voila :
    La premiere partie (choix client) ne pose plus de probleme : tout est ok
    Ensuite la selection d'article pose qq petit probleme

    1-qd je selectionne un article , le prix associe ne s'affiche pas dans le textbox prevu ( par contre j'ai des info de la page client qui apparaissent , j'ai regarder au niveau du nom de la liste , initialisation combobox mais ne vois rien)

    2-Dernier petit prob , qd j'ajoute un article a mon devis tout va bien sauf qd le prix ou la quantitée ( entree manuellement) contient un "." ( point) au lieux e "," (virgule) : comment faire ?

    Enfin est il possible de travailler uniquement a partir des userforms sans voir le fichier excel ouvert ?

    Si joint mon fichier :
    devis

    Vos critiques sont les bienvenues

  2. #2
    Membre habitué
    Inscrit en
    Novembre 2005
    Messages
    130
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 130
    Points : 166
    Points
    166
    Par défaut
    Salut zouille,

    Pour ton problème d'affichage du prix actuellement tu cherche ton prix dans la feuille clients et non dans la feuille articles

    ton code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    Private Sub ComboBox1_Click()
    Dim ligne As Integer
     
    ligne = ComboBox1.List(ComboBox1.ListIndex, 1)
     
    With Sheets("Clients")
         TextBox1 = .Cells(ligne, 3)
        End With
    End Sub
    Remplace With Sheets("clients") par With sheets("Articles")

    Pour forcer une virgule au lieu d'un point quand tu ecris tes valeurs manuellement dans un textbox.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
    If KeyAscii = 46 Then KeyAscii = 44
    End Sub
    Voila, @+

  3. #3
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    164
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 164
    Points : 43
    Points
    43
    Par défaut
    Super merci a toi

    et dire que j'ai cherché un prob de ce genre car ca paraissait logique , j ai lu et relu et pourtant rien vu : c'est terrible qd meme

    Sinon , c'est la facon de faire la liste de la combobox que je n'arrive pas a comprendre , a la base j'aurais utilisé "rowsource" mais comme la liste change, évidement , ca ne marcherai pas , alors comment comprendre ce fameux code de liste . Ca utilise aussi inicombobox ?

    merci encore

  4. #4
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    164
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 164
    Points : 43
    Points
    43
    Par défaut
    et oui encore moi

    je viens de trouver un petit prob , si la cellule Quantitée ou prix unitaire est vide ( par oubli) evidement c'est l'erreur car les formules renvois "#VALEUR!"

    Donc comment faire en sorte que les cases soit remplies sinon affichage d'un msgbox "Attention, prix manquant" ou "attention QTT manquante"

    merci bien

  5. #5
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    164
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 164
    Points : 43
    Points
    43
    Par défaut
    Citation Envoyé par zouille
    et oui encore moi

    je viens de trouver un petit prob , si la cellule Quantitée ou prix unitaire est vide ( par oubli) evidement c'est l'erreur car les formules renvois "#VALEUR!"

    Donc comment faire en sorte que les cases soit remplies sinon affichage d'un msgbox "Attention, prix manquant" ou "attention QTT manquante"

    merci bien
    Alors , je viens d'essayer ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    If TextBox1 = "" Then MsgBox " !ATTENTION! PRIX UNITAIRE HT MANQUANT !"
    If TextBox2 = "" Then MsgBox " !ATTENTION! QUANTITE MANQUANTE !"
    Alors le message apparait bien , mais la fonction continu, comment la stope a ce niveau , j'ai essayer End if mais me dit que end if impossible sans If ( bizard)

    Dois je mettre mes conditions avant la recherche de derniere ligne vide ou avant la copie des infos dans les case devis ?

    merci

  6. #6
    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 040
    Points
    20 040
    Par défaut
    essai
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    If TextBox1 = "" Then
     MsgBox " !ATTENTION! PRIX UNITAIRE HT MANQUANT !", vbExclamation
     Exit Sub
    End If
    si tu est dans une procédure "Sub"...

  7. #7
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    164
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 164
    Points : 43
    Points
    43
    Par défaut
    salut

    C'est encore une fois impecable . par contre qd une des 2 msgbox s'affiche , j'ai la page devis qui s'affiche , au lieu de rester sur accueil , j'ai essayer ca
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    If TextBox2 = "" Then
    MsgBox " !ATTENTION! QUANTITE MANQUANTE !", vbExclamation
     Sheets("Accueil").Select
     Exit Sub
    End If
    mais c'est toujours pas ça , en fait , a l'affichage du msg box, la page devis s'affiche mais qd je valide l'alerte , retour a accueil, c'est mieux mais comment eviter de retourner a la page devis pendant l'alerte ?
    sachant que :
    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 cdb_Valider_Click()
    Dim i As Integer
    i = 19 '1° Ligne
    Sheets("Devis").Activate
    While i < 38 And Cells(i, 2) <> ""
      i = i + 1
    Wend
    If i = 38 Then 'Cas ou derniére ligne atteinte on en rajoute une
       Rows(19).Copy 'Copy la ligne 19 pour récupérer format...
       Rows(38).Insert Shift:=xlDown
       Range("A38:G38").ClearContents 'Efface les données ..( laisse formule à droite..)
    End If
     
    If TextBox1 = "" Then
     MsgBox " !ATTENTION! PRIX UNITAIRE HT MANQUANT !", vbExclamation
     Sheets("Accueil").Select
     Exit Sub
    End If
     
    If TextBox2 = "" Then
    MsgBox " !ATTENTION! QUANTITE MANQUANTE !", vbExclamation
     Sheets("Accueil").Select
     Exit Sub
    End If
     
    Cells(i, 1) = TextBox2 ' Quantité ..
    Cells(i, 2) = ComboBox1.List(ComboBox1.ListIndex) & " " & TextBox16
    Cells(i, 7) = TextBox1 ' Prix unitaire
    'Mise à jour du  label rajouté à l'user form ...
    LabTotal = "Total H.T. = " & Range("TOTAL") & " € "  'NOMMER LA cellule de la feuille devis contenat le Total , total
     TextBox2 = ""
     TextBox16 = ""
     TextBox1 = ""
     ComboBox1.ListIndex = -1
     Sheets("Accueil").Select
     
    End Sub
    merci encore

  8. #8
    Membre habitué
    Inscrit en
    Novembre 2005
    Messages
    130
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 130
    Points : 166
    Points
    166
    Par défaut
    re salut zouille,

    Place tes test en debut de procedure
    Juste aprés le dim

    @+

Discussions similaires

  1. petit prob avec un requete
    Par gscorpio dans le forum Access
    Réponses: 4
    Dernier message: 14/06/2005, 18h49
  2. Encore un petit problème de transaction
    Par devdev dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 24/03/2005, 17h13
  3. Petit prob avec l'OLE EXCELL sous builder
    Par vladi dans le forum C++Builder
    Réponses: 2
    Dernier message: 10/03/2005, 20h30
  4. [eclipse] quelques petits probs
    Par scorpiwolf dans le forum Eclipse Java
    Réponses: 3
    Dernier message: 08/09/2004, 18h27

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