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 :

Formule avec conditions


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2018
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2018
    Messages : 21
    Par défaut Formule avec conditions
    Bonjour a tous,

    J'essaye de remplir des cellules au format d'une formule. Elles doivent être remplies si en colonne C, il y a un chiffre supérieur à 800 000. Le problème est que le code n'est pas exécuté. Sachant que les valeurs de chaque formules change de cellule en fonction de la ligne. En dessous du chiffre supérieur à 800000, nous avons un chiffre supérieur à 100000 puis une cellule vide. Cela se répète autant de fois qu'il y a de chiffre 800 000 et 100 000.
    Les valeurs à récupérer sont en colonne B et la colonne précédant celle du calcul mais à la ligne en dessous.
    Je souhaite faire le calcul sur la même ligne que la ligne du chiffre supérieur à 800 000 et le répéter sur l'ensemble des semaines de l'année ainsi que sur l'ensemble des chiffre supérieur à 800 000 qu'il y a en ligne.
    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
    Do While semaine <= 58
        semaine = 0                 'Colonne
        m = 5                       'debut colonne pour 1 semaine
        l = 8                       'fin colone pour 1 semaine
        lignedebut = 9              'Ligne de départ
     
        Dim LastRowP As Integer     'Recherche du numéro de ligne
        Dim numeroligne As Integer  'numéro de ligne
     
        LastRowP = shH1.Range("C64555").End(xlUp).Row 'Recherche du nombre de ligne
        For numeroligne = 9 To LastRowP
            numeroligne = 9             ' Configuration du numéro de ligne
            Ligfabc1 = numeroligne      ' Ligne fabrication code 1
            Colfabc1 = m + 1            ' Colonne fabrication code 1
            Ligratio = numeroligne      ' Ligne ratio
            Colratio = 3                ' Colonne ratio
     
            If shH1.Range("C" & numeroligne).Value >= 800000 Then
             shH1.Cells(numeroligne + 1, m + 2).Interior.Color = RGB(224, 160, 96) And shH1.Cells(numeroligne + 1, m + 2).Value = "=Cells(Ligfabc1, Colfabc1) * Cells(Ligratio, Colratio)"   
     
            End If
            numeroligne = numeroligne + 1
            semaine = semaine + 1
     
            ' Refaire les formules toutes les 4 colonnes
            m = m + 4
            l = l + 4
     
        Exit For
        Next
    Merci d'avance

  2. #2
    Expert confirmé
    Homme Profil pro
    Electrotechnicien
    Inscrit en
    Juillet 2016
    Messages
    3 241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Electrotechnicien

    Informations forums :
    Inscription : Juillet 2016
    Messages : 3 241
    Par défaut
    Bonjour,

    Si j'ai bien compris

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    If shH1.Range("C" & numeroligne).Value >= 800000 Then
        shH1.Cells(numeroligne + 1, m + 2).Interior.Color = RGB(224, 160, 96)
        shH1.Cells(numeroligne + 1, m + 2).FormulaR1C1 = "=R" & Ligfabc1 & "C" & Colfabc1 & "*" & "R" & Ligratio & "C" & Colratio
    End If
    Cdlt

Discussions similaires

  1. simplification formule avec condition
    Par mariok dans le forum Conception
    Réponses: 3
    Dernier message: 08/03/2014, 23h29
  2. [XL-2010] Ecrire une formule avec condition
    Par Philippe76 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 09/01/2013, 16h02
  3. [XL-2007] Insérer une formule avec condition
    Par samia08 dans le forum Excel
    Réponses: 6
    Dernier message: 26/01/2011, 17h43
  4. [XL-2000] Formule avec conditions
    Par kstorfou dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 14/06/2009, 00h04
  5. Réponses: 6
    Dernier message: 16/05/2008, 10h04

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