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 :

Soustractions successives à partir des dates d'échéances les plus proches


Sujet :

Macros et VBA Excel

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2015
    Messages : 3
    Par défaut Soustractions successives à partir des dates d'échéances les plus proches
    Bonjour à tous,

    Utilisant assez rarement VBA et étant quelque peu bloqué, je me permets de faire appel à votre aide !

    Mon problème est le suivant :

    Admettons que j'ai une base de données avec 4 colonnes :
    - En colonne A, j'ai des noms
    - En colonne B, j'ai des dates, qui correspondent à la date à laquelle j'ai entré la donnée dans la base
    - En colonne C, j'ai également des dates, mais qui correspondent à une date d'échéance
    - En colonne D, j'ai des montants de bonus

    Sur une autre feuille, j'ai une macro qui m'affiche les données pour la personne que j'aurai choisi. Pour cette personne, à une certaine date, j'ai un montant de bonus à lui retirer. J'aimerai donc qu'une macro puisse aller retirer les différents montants nécessaires (jusqu'à ce que le montant à retirer soit égale à 0) en partant des dates d'échéances les plus proches. S'il y a plusieurs fois la même date d'échéance, la macro ira retirer d'abord sur celle dont la date d'entrée est la plus ancienne.

    Vous trouverez en pièce jointe un exemple. Dans la partie gauche, les données que j'ai récupéré pour la personne AAA et les différents montants qu'il a pu accumuler. Dans la cellule bleu le montant total à retirer et dans la partie droite, en jaune, ce que j'aimerai que la macro fasse.

    J'avais pensé à faire une macro (avec un tant que, un pour et un si) qui va comparer les différentes dates à la date d'aujourd'hui due chaque ligne pour trouver l'échéance la plus proche pour faire une première soustraction et ainsi de suite. Sauf que la macro telle que je l'imagine prendrait à chaque fois l'ensemble des données récupérées et risque donc de ne retirer que de considérer à chaque fois la même échéance. Par exemple dans le fichier exemple que j'ai joint, l'échéance la plus proche est la ligne 5 avec date d'entrée 16/03/2016 et échéance au 31/03/2017 et j'aurai donc 15 lignes de générer... (14 lignes avec -30 et une ligne avec -20).

    Est-ce qu'il existerait un moyen avec VBA de ne plus considérer une ligne de données si la ligne a déjà été utilisée ?

    Je ne sais pas trop si mes explications sont claires, je reste donc disponible pour essayer d'apporter certains points d'éclaircissements si nécessaires !

    Merci et bonne journée à tous !
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. Statistique par mois à partir des dates
    Par bourbita.thameur dans le forum Requêtes
    Réponses: 3
    Dernier message: 03/03/2009, 14h05
  2. Liste plages libres à partir des dates
    Par jbulysse dans le forum SQL
    Réponses: 2
    Dernier message: 16/07/2008, 12h54
  3. Utilisation des jours à partir des dates
    Par coquero dans le forum SQL
    Réponses: 8
    Dernier message: 09/07/2008, 14h22
  4. gérer des rappels à partir des dates
    Par gsaly dans le forum Access
    Réponses: 2
    Dernier message: 18/07/2007, 17h16
  5. Problème de recherche à partir des dates(VB 6)
    Par Saamdpawendé dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 24/08/2006, 16h11

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