XL 2019 Calcul à réaliser si une ou plusieurs cellules vides

66alex66

XLDnaute Nouveau
Bonjour à tous,

Je sollicite aimablement votre aide pour la problématique suivante :
Je souhaiterai qu'une formule se génèrent en prenant en compte les dates de références se trouvant de part et d'autre d'une ou plusieurs cellules vides.

Je dispose d'un tableau avec plusieurs dates et plusieurs index :

1.png


Le calcul souhaité : estimer des index au 01/09/2020 et au 24/09/2020 sur base des index situés de part et d'autre, à savoir les index du 01/06/2019 et du 01/01/2021.
Mais aussi, estimer les index du 06/03/2022 sur base des index du 01/01/2021 au 07/04/2022.

J'ai déjà réalisé un fichier VBA qui fonctionne parfaitement (image reprise ci-dessous), mais, de la façon dont il a été créé, je suis dans l'obligation d'indiquer les dates et les index de références manuellement (tableau situé en haut à gauche) ainsi que les dates d'estimations voulues (tableau en bas à gauche).

2.png


Mon désire serait de créer une macro qui estime directement les index situées dans les cellules vides.
Dès lors, il faudrait que ladite macro détecte que les dates et les index situées de part et d'autre de ou des cellules vides correspondent aux dates de références.

En résumé, j'aimerais passer de ce tableau :

3.png


A ce tableau en un clic :

4.png


Je vous annexe mon fichier avec l'accès au VBA (voir feuille "Estimation Gaz V2"). La Macro se nomme "EstimationNDJ).

Un tout grand merci pour votre aide !
 

Pièces jointes

  • projet - estim.xlsm
    77.6 KB · Affichages: 6

vgendron

XLDnaute Barbatruc
Bonjour
comme il y en a un peu partout dans ton fichier
j'ai ajouté une feuille 2 avec juste un tableau à compléter (si j'ai bien compris)
clique sur le bouton
les valeurs manquantes sont remplies avec 4790,==> je n'ai pas compris (pas trop cherché non plus) comment tu calcules

mais la macro cherche automatiquement les jours avec Index autour de la cellule vide
tu n'as plus qu'à coder le calcul
 

Pièces jointes

  • projet - estim.xlsm
    77.5 KB · Affichages: 7

Deadpool_CC

XLDnaute Impliqué
Bonjour,

voir le fichier ci-joint pour une piste de calcul.
Par contre dates triées dans l'ordre.
=> cf du feuille "Estimation Gaz" (bleu)

Avec une conso moyenne Jour / les délais (nb jrs) entre chaque date et si vide une estimation de la conso = le max dernier relevé + (moyenne conso jr x nb jour entre les dates.

Ps : premier relevé doit être remplit.

certainement améliorable => si pas dernier relevé moyenne jour change donc certainement trouvé le max date en fonction du max conso ... lol
 

Pièces jointes

  • projet - estim.xlsm
    70.2 KB · Affichages: 9

66alex66

XLDnaute Nouveau
Un tout grand merci pour votre aide.

@vgendron J'ai essayé d'intégrer le calcul adéquat dans la macro, mais je ne parviens pas à l'implémenter dans la variable du calcul...

En réalité, le calcul est celui-ci :

J'utilise ce tableau repris dans la feuille "Estimation Gaz V2"

6.PNG


Exemple :

333.png


La formule permettant d'estimer l'index du 01/09/2020 :

TOTAL des DJ de la date de début et de fin introduite en référence (les dates entre les cellules vides) (01/06/2019 au 01/01/2021) :


Somme des "Normaux DJ (degrés - jours)" du 01/07/2019 au au 31/12/2019 (je vais additionner les valeurs de la colonne C) → 934

Somme des "Normaux DJ" du 01/01/2020 au 31/12/2020 (je vais additionner les valeurs de la conne C) → 2363

Ajout des "Normaux DJ" en plus des périodes de référence (29 jours en juin et 1 jour en janvier) en utilisant toujours les valeurs de la colonne C → 56,2

TOTAL : 3353,2

TOTAL des DJ de la date de début (première date avant la cellule vide) en référence → 01/06/2019 jusqu'à la date voulue d'estimation (01/09/2020) :


Normaux DJ du 01/07/2019 au au 31/12/2019 (je vais additionner les valeurs de la colonne H) → 934

Ajout des DJ en plus (29 jours en juin) → 42,53

Normaux DJ du 01/01/2020 au 31/08/2020 → 1456

Ajout des DJ en plus (1 jour en septembre) → 2,033333

TOTAL : 2434,5

CALCUL FINAL → Delta des index de la date de début et de fin (donc les dates et index entre les cellules vides) * (3353,2/2434,5)

→ 2669 * (3353,2/2434,5) = 6674
 
Dernière édition:

Discussions similaires