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 :

Fonction IF avec plusieurs condition [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Septembre 2010
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 19
    Par défaut Fonction IF avec plusieurs condition
    Bonjour,

    J'ai un petit problème avec la fonction IF, je voudrais utiliser plusieurs condition dans la fonction mais je ne trouve pas comment le faire.

    J´ai un tableau (voir capture écran en annexe) ou je dois trouvez les temps: t<2h ou 2h<t>4h ou 4h<t>8h ou t>8h.

    Pour la condition IF sur t<2h et t>8h pas de problème vu que il ni a que une condition.
    Mon problème c'est dans les deux autre: t>2h et t<4H ; t>4h et t<8h.

    En faite c'est une fonction ET dans la fonction IF.

    Quelqu’un peut me donner une petite aide SVP
    Images attachées Images attachées  

  2. #2
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Mars 2009
    Messages
    408
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure et Loir (Centre)

    Informations professionnelles :
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Mars 2009
    Messages : 408
    Par défaut
    bonjour ,
    essaye avec and

  3. #3
    Membre averti
    Inscrit en
    Septembre 2010
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 19
    Par défaut
    Comme ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    If t > V2H And t < V4H Then
    Tsup2inf4 = Tsup2inf4 + t
    End If
    Je vais essayer...j'avais pas penser aussi simple

    Pour chacune de mes condition en faite

  4. #4
    Membre averti
    Inscrit en
    Septembre 2010
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 19
    Par défaut
    Ok ça marche impecable, merci beaucoup pour l'aide, j'avais pas pensez a un truc aussi simple.

    Avec ça je additionne des valeur en heures: 00:00:00 sur mes différent temps

    C’est créer des variable date, mais j' un petit problème quand mes valeurs de tempos sont élever (05:00:40 par ex.), il me donne le temps comme ça: 31-12-1899 06:18:18, au final de mes operation je voudrais montrer la durée total pour chaque "t" mais je voudrais la montrer en heures (00:00:00).

    C'est plus simple faire la conversion a la fin de la date en heure ou faire différant depuis le début?

    Le 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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    Sub Temps()
     
    Dim t As Date
    Dim Tinf2 As Date
    Dim Tsup2inf4 As Date
    Dim Tsup4inf8 As Date
    Dim Tsup8 As Date
     
    Dim V2H As Date
    Dim V4H As Date
    Dim V8H As Date
    Dim Linha As String
     
    Tsup2inf4 = "00:00:00"
    Tsup4inf8 = "00:00:00"
    Tinf2 = "00:00:00"
    Tsup8 = "00:00:00"
    Linha = "2"
    V8H = "08:00:00"
    V4H = "04:00:00"
    V2H = "02:00:00"
    Do While ActiveWorkbook.Worksheets("Registo AG").Range("J" & Linha) <> ""
    t = ActiveWorkbook.Worksheets("Registo AG").Range("J" & Linha).Value
     
    'inferieur 2h
    If t < V2H Then
    Tinf2 = Tinf2 + t
    End If
     
     
    'Entre 02h et 4h
    If t > V2H And t < V4H Then
    Tsup2inf4 = Tsup2inf4 + t
    End If
     
    'entre 04h et 08h
    If t > V4H And t < V8H Then
    Tsup4inf8 = Tsup4inf8 + t
    End If
     
     
    'Sup 08h
     
    If t > V8H Then
    Tsup8 = Tsup8 + t
    End If
    Linha = Linha + 1
     
    Loop
    End Sub

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 26/03/2015, 10h29
  2. [XL-2007] fonction avec plusieurs conditions
    Par Antheadousa dans le forum Excel
    Réponses: 3
    Dernier message: 20/12/2012, 12h44
  3. [AC-2003] Fonction de moyenne pondéré avec plusieurs conditions
    Par Piccou dans le forum VBA Access
    Réponses: 34
    Dernier message: 14/08/2009, 12h07
  4. Si je fais un if() avec plusieurs conditions ..
    Par Pauli dans le forum Langage
    Réponses: 2
    Dernier message: 25/01/2007, 16h47
  5. like avec plusieur condition
    Par wayak3 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 19/01/2007, 11h43

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