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 :

Min et max avec plage variable


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2015
    Messages : 43
    Par défaut Min et max avec plage variable
    Bonjour,

    Je coince à une macro, je n'arrive pas à faire min et max avec une plage variable.

    J'ai plusieurs variable qui décide du nombre de colonnes et lignes.
    Voici un exemple de ce que j'essaye de faire.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Cells(8, c + 2).Value = Application.WorksheetFunction.Min(Cells(d-a,c),Cells(d,c)) 'la plage va de la cellule (d-a,c) à la cellule (d,c)
    Les cellules d, c et a sont variables. J'ai vu quelques exemples avec des variables mais pas lorsqu'il y a des soustractions avec les variables

    Si éventuellement c'est possible j'aimerai aussi mettre la formule dans la case avec ActiveCell.Formula mais ça me semble compliqué avec des variables ?

    J'espère être compréhensible.
    En vous remerciant.
    Cordialement.

  2. #2
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut

    Bonjour,

    pas clair : « je n'arrive pas » oui mais encore ?!

    Les variables d & a doivent représenter des lignes et évidemment d doit être strictement supérieur à a, à vérifier …

    La logique voudrait déjà de paramétrer la formule manuellement dans une cellule d'Excel
    et une fois opérationnelle, c'est d'un facile pour la passer côté VBA !

    _________________________________________________________________________________________________________
    Je suis Paris, Charlie, Bruxelles, …

  3. #3
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2015
    Messages : 43
    Par défaut
    La formule est dans une boucle while, cells(d-a) est toujours plus grand que 0.

    Pour être plus clair, je voudrais déjà savoir si la syntaxe que j'ai utilisé est la bonne en utilisant les variables ? Et si la réponse est non alors quelle est la bonne syntaxe?

    Je ne peux la mettre manuellement car la macro servira pour un grand nombre de fichier ou d, a et c changent à chaque fois.

    En vous remerciant.

  4. #4
    Expert confirmé
    Homme Profil pro
    Responsable des études
    Inscrit en
    Juillet 2014
    Messages
    2 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2014
    Messages : 2 681
    Par défaut
    Bonjour,

    Là tu demande le min de deux cellules, pas d'une plage

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Cells(8, c + 2).Value = Application.WorksheetFunction.Min(range(Cells(d-a,c),Cells(d,c))) 'la plage va de la cellule (d-a,c) à la cellule (d,c)

  5. #5
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2015
    Messages : 43
    Par défaut
    Tout simplement, j'avais tournée autour mais j'avais des messages d'erreur.

    Merci !

  6. #6
    Membre chevronné Avatar de Kiouane
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2016
    Messages
    198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2016
    Messages : 198
    Par défaut
    Tu peux nous expliquer c'était quoi ton erreur et la solution associée?

Discussions similaires

  1. MAX avec plage changeante
    Par ericdev67 dans le forum Excel
    Réponses: 8
    Dernier message: 06/10/2011, 11h03
  2. VBA - Graphique avec plage variable
    Par virstyle dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 06/06/2010, 11h48
  3. comparaison de 2 feuille avec plage variable
    Par oscar.cesar dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 02/04/2009, 21h49
  4. Création de validation de donnée avec plage variable
    Par Krovax dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 26/02/2009, 13h14
  5. Fonction "SOMME.SI" avec plage variable
    Par marc56 dans le forum Excel
    Réponses: 3
    Dernier message: 26/11/2008, 15h52

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