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

VBA Access Discussion :

VBA et Macro


Sujet :

VBA Access

  1. #1
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    250
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Janvier 2006
    Messages : 250
    Points : 99
    Points
    99
    Par défaut VBA et Macro
    Bonjour à tous,
    J'ai encore une fois besoin de vos lumière:
    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
    38
    39
    40
    41
    Private Sub btn_Impression_Click()
    Dim TypeMat As String
    
    Select Case Me.lst_Type
        Case "Serveur"
            TypeMat = "Serveur"
        Case "Imprimante"
            TypeMat = "Imprimante"
        Case "Desktop"
            TypeMat = "Desktop"
        Case "Laptop"
            TypeMat = "Laptop"
        Case "Ecran"
            TypeMat = "Ecran"
        Case "PDA"
            TypeMat = "PDA"
        Case "Periferiques"
            TypeMat = "Periferiques"
        Case "Autres"
            TypeMat = "Autres"
        Case Else
            TypeMat = ""
    End Select
        If Me.chk_Tous.Enabled = True Then
            DoCmd.RunMacro "TotalPc"
        
        ElseIf Me.chk_HS.Enabled = True Then
            DoCmd.RunMacro "PcHs"
        
        ElseIf Me.chk_Production.Enabled = True Then
            DoCmd.RunMacro "PcOk"
        
        ElseIf Me.chk_Stock.Enabled = True Then
            DoCmd.RunMacro "PcStock"
        
        ElseIf TypeMat <> "" Then
        'DoCmd.RunMacro "PcTypeListe"
        DoCmd.OpenReport "etat_Pc", acViewPreview, "", [tbl_Pc].[Etat]='[TypeMat]'", acNormal
    
        End If
    End Sub
    J'ai réussit les Macro en passant par Access maintenant je veut inclure une condition particulière donc je me met au VBA le problème étant qu'il m'affiche un état vide comme si il ne comprennais pas la clause condition.

    Mercipour vos lumière

  2. #2
    Membre régulier
    Homme Profil pro
    Inscrit en
    Mai 2003
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : Belgique

    Informations professionnelles :
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2003
    Messages : 53
    Points : 73
    Points
    73
    Par défaut
    re...

    Bon avant toute chose on va simplifier un peu ton instruction select.....

    T'es un fou de codage toi... quand tu as plusieurs select qui vont te donner la même chose, tu peux les grouper.... voici ce que donne ton select avec moins de variable et moins de ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Select Case Me.lst_Type
        Case "Serveur","Imprimante","Desktop","Laptop","Ecran","Periferiques","PDA","Autres"
            TypeMat = me.lst_type
        Case Else
            TypeMat = ""
    End Select
    Donc cela donne en raisonnant, si me.lst_Type correspond à certains cas.... TypeMat = me.lst_type.... sinon TypeMat ="".

    Tu as ainsi économisé pas mal de ligne et pas mal de risque de problème de canal carpien

    POur le reste je regarde un petit peu

  3. #3
    Membre régulier
    Homme Profil pro
    Inscrit en
    Mai 2003
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : Belgique

    Informations professionnelles :
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2003
    Messages : 53
    Points : 73
    Points
    73
    Par défaut
    essaye ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
       DoCmd.OpenReport "etat_Pc", acViewPreview, "", "[tbl_Pc].[Etat]='" & TypeMat &" '", acNormal
    il y avait me semble t il un probleme de double quote fermée mais non ouverte et ton parametre TypeMat est une variable de VBA donc il ne faut pas l'encapsuler dans des quotes dans ton code

  4. #4
    Expert confirmé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 419
    Points : 4 297
    Points
    4 297
    Par défaut
    et ca donnerait quoi avec périphérique ?
    Elle est pas belle la vie ?

  5. #5
    Membre régulier
    Homme Profil pro
    Inscrit en
    Mai 2003
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : Belgique

    Informations professionnelles :
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2003
    Messages : 53
    Points : 73
    Points
    73
    Par défaut
    j'avais pas vu.... j'ai bêtement recopié

    Mais si c'est encodé périférique.... le case doit donner périférique.... syntaxiquement parlant bien sûr.

    Judicieuse remarque random

  6. #6
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    250
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Janvier 2006
    Messages : 250
    Points : 99
    Points
    99
    Par défaut
    Rrrrrr,
    Il sont moqueur moi je code
    hi désoler un user en pannique je vais analyser vos commentaires



    OOOOO La boullette : Periferiques

  7. #7
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    250
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Janvier 2006
    Messages : 250
    Points : 99
    Points
    99
    Par défaut
    Euuu cela ne fonctionne pas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    MsgBox ([TypeMat])
            DoCmd.OpenReport "etat_Pc", acViewPreview, "", "[tbl_Pc].[Etat]='" & TypeMat & " '", acNormal
    Pourtant la message box me retourne bien la valeur de TypeMat (genre Periferiques)

  8. #8
    Membre régulier
    Homme Profil pro
    Inscrit en
    Mai 2003
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : Belgique

    Informations professionnelles :
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2003
    Messages : 53
    Points : 73
    Points
    73
    Par défaut
    hihihi faut pas t'en faire

    mais dis nous, [tbl_Pc].[Etat] il contient quoi???? c'est ton champs qui contient le type de matériel???

  9. #9
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    250
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Janvier 2006
    Messages : 250
    Points : 99
    Points
    99
    Par défaut
    Re,
    Oups comme je suis mauvais .....
    C'est pas [tbl_Pc].[Etat] qui fait la condition mais [Type], comme je suis tête en l'air ,vivement le Week end Merci pour votre aide....

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

Discussions similaires

  1. [VBA-E] Macro automatique ouverture Excel
    Par P50 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 03/04/2006, 11h42
  2. [VBA-E] Macro introuvable
    Par Persons dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 03/04/2006, 10h12
  3. [VBA] Excel + macro + aléatoire
    Par spopo dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 02/01/2006, 15h42
  4. [VBA-E] macro conversion excel vers csv
    Par baboune dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 15/07/2004, 09h23
  5. [VBA-E] Macro ouverture fichier déja ouvert
    Par bhaal76 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 18/12/2002, 14h30

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