> Tous les forums > Forum Bureautique
 recherche formule ou vba pour cout reelSujet résolu
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
vieuxmonsieur
  Posté le 28/05/2011 @ 12:40 
Aller en bas de la page 
Astucien

bonjour chers amis,

je suis a la recherche d'une formule ou code vba pour calculer un cout reel - les explications sont donnees dans le classeur ci joint

http://www.cijoint.fr/cjlink.php?file=cj201105/cijZyq7nzf.xls

en vous remerciant



Modifié par vieuxmonsieur le 04/06/2011 21:00
Publicité
rj390111
 Posté le 28/05/2011 à 13:42 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Bonjour,

Attention dans le calcul écrit en rouge il y a un problème.

Ce n'est pas 85 et 19 litres mais bien 89 et 15

600-511 = 89 à mutiplier par E4 prix 1ère livraison

et 615 - 600 = 15 à mutiplier par E5 prix seconde livraison.

DjiDji59430
 Posté le 28/05/2011 à 17:38 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

bonjour,

Tu n'as pas deja traité un probleme similaire dans un fichier pour une assos ?

Où il etait question de fruits ou de produits que l'assos achetait et tu voulais le prix de revient du colis donné aux participants,sachant que le prix d'achat variait en fonction des livraisons.

Me tromperais-je ?



Modifié par DjiDji59430 le 28/05/2011 17:38
vieuxmonsieur
 Posté le 28/05/2011 à 18:23 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

bonjour a vous chers amis,

je vous remercie en tout premier de vous interresser a cette demande de ma part.

Djidji : oui j'ai eu un probleme a peu pres similaire mais cependant different de celui-ci

rj : effectivement j'ai constate cette erreur de ma part, desole

ceopendant le sujet demeure entier

en vous remerciant chaleureusement

ferrand
 Posté le 29/05/2011 à 15:29 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Bonjour à tous,

Après avoir pensé utiliser du code VBA pour gérer les approvisionnements et des formules pour la consommation, il s'est avéré que l'on pouvait traiter avec des formules, ce qui est préférable s'agissant de résultat à faire apparaître au fur et à mesure des saisies.

J'ai débouché sur 2 solutions, la première respectant la méthode initiée dans le modèle qui consiste à imputer chaque sortie sur l'approvisionnement le plus ancien jusqu'à épuisement de ce dernier avant de passer au suivant ; la seconde, pour laquelle je ne cache pas ma préférence en raison de la gestion plus réaliste des coûts qu'elle induit, consiste lors de chaque approvisionnement à recalculer le coût unitaire du produit contenu dans la citerne en fonction de la part que représente chaque quantité dans le total résultant de l'approvisionnement (qui ne sauraient plus être séparées une fois mélangées).

Ainsi dans la seconde solution, le calcul du coût de produit sorti se fait toujours sur un seul prix unitaire, ce qui n'est pas le cas dans la première et qui aboutit à complexifier nettement les formules utilisées.

Je livre donc les deux :

Solution 1 : http://cjoint.com/?AEDo2JPchpO

Solution 2 : http://cjoint.com/?AEDo24CZb6Y

Une autre voie aurait été de traiter le problème entièrement en VBA, en faisant opérer toutes les saisies au moyen de Userform (le Userform facilite la procédure de saisie, la sécurise du fait que l'utilisateur ne saisit plus sur la feuille, et garantit son bon déroulement du fait que toutes les macros sont lancées au moment où elles doivent l'être). Egalement avec deux solutions possible...

rj390111
 Posté le 30/05/2011 à 00:24 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Bonsoir,

Je mets quand même une solution en VBA. Programme pas très documenté, manque de temps. Mais si vous voulez je peux le faire plus tard.

http://www.cijoint.fr/cjlink.php?file=cj201105/cijdCiAQNS.xls

maintenant

Bonne nuit à tous

vieuxmonsieur
 Posté le 30/05/2011 à 02:59 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

bonjour à vous deux chers amis,

je vous remercie de tout mon coeur pour le travail que vous avez accompli l'un et l'autre et qui me touche profondément - je suis d'accord a 100% avec toi Fernand pour l'utilisation d'userform mais je suis incapable de le faire - de plus, ca impliquerai que toute l'application soit faite de cette facon et ce doit etre un travail vraiment enorme que je ne peux solliciter meme si je sais par experience que les utilisateurs aiment bien jouer avec les formules et finissent par sortir des resultats incoherents.

je n'ai pas trop le temps de regarder car je vais passer des examens medicaux (3 jours en clinique) mais je pense que je vais garder la solution par vba pour une utilisation par des anciens collegues et compte tenu de ce que je vous disais ci avant - merci d'avance pour une meilleure documentation.

je vous souhaite de passer une tres bonne semaine et vous dis a bientot

merci a vous deux (que ce mot est petit pour exprimer ce que je ressent)

rj390111
 Posté le 30/05/2011 à 06:56 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Bonjour,

Vieux monsieur bonjour, une version un peu nettoyée. Je documenterai encore un peu plus pendant les trois jours.

Je vous souhaite un bon succès pour vos examens médicaux, et surtout que cela permette de vous soignez efficacement.

Courage vieux monsieur ça va aller.

Corrections terminées nouveau fichier mis le 30/05/2011 à 18:57

http://www.cijoint.fr/cjlink.php?file=cj201105/cij9tcFWPH.xls

A bientôt.



Modifié par rj390111 le 30/05/2011 18:57
vieuxmonsieur
 Posté le 03/06/2011 à 18:53 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

bonsoir chers amis,

je viens de rentrer de l'hosto et je suis un peu fatigue, je reviendrai donc sur le forum lundi prochain

pour rj (que je remercie ainsi que fernand, dont je garde precieusement ses formules) si on efface les donnees en H4:I16 et que l'on renseigne de nouveau H4 rien ne se passe et parfois la ligne :

For Each cel In Range(Cells(LigneDebutLiv, 4), Cells(LigneFinLiv, 4))

se met en surbrillance

en vous souhaitant une bonne soiree et un bon week-end - ici il pleut beuuuhhh

rj390111
 Posté le 03/06/2011 à 19:48 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Bonsoir vieuxmonsieur,

J'espère que votre séjour en hopital n'a pas été trop désagréable.

Vous avez raison il y avait un problème quand on encodait un premier plein.

Bisarement Excel VBA donne la valeur 65536 à finDeLigne.... quand il n'y a qu'une ligne. Ce qui provoque un problème car je l'avais initialisé en Integer.

J'ai corrigé cela, et j'en ai profité pour ajouter quelques vérifications supplémentaires.

Si besoin je peux essayer d'expliquer des points qui vous paraîtraient obscurs.

Voilà le fichier corrigé.

http://www.cijoint.fr/cjlink.php?file=cj201106/cijDflodgK.xls

Bon courage et bon WE.

R. JAMIN

vieuxmonsieur
 Posté le 04/06/2011 à 08:30 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

bonjour rj

je suis tres content car mon sejour a l'hosto s'est bien passe oui - d'apres les medecins les analyses sont bonnes, la fatigue venant de ce que le corps lutte et produits des anticorps et cette etape est toujours fatiguante d'apres eux et j'ai bon espoir de plus ils m'ont dit que le stress est a eviter

pour en revenir a ce que tu as fait c'est genial je t'en remercie

puis je me permettre d'etre gourmand ? ne peut on au lieu de "Attention vous devez réencoder une livraison" que ceci apparaisse sous forme de messagebox comme celui ci

Message = MsgBox("Il n'y a pas encore de carburant, vous devez d'abord renseigner une livraison", , "Avertissement")

en te remerciant et en vous souhaitant un bon week end car chez moi gros orages et 20 cm d'eau dans ma cour

vieuxmonsieur
 Posté le 04/06/2011 à 12:24 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

quelque chose du genre :

If FormulaR1C1 = ("=SUM(R[3]C:R[19]C)") > FormulaR1C1 = ("=SUM(R[3]C:R[19]C)") Then
End If
MsgBox "ATTENTION ! Vous devez percevoir du carburant !", 48, "Rubrique obligatoire !"
Exit Sub

mais ou le placer

je vous remercie bien fort

rj390111
 Posté le 04/06/2011 à 16:38 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Bonjour,

Essayer ceci, j'ai supprimé les avertissements par formules et j'ai ajouté quelques lignes dans le code pour faire la vérification que la Qu totale prélevée ne dépasse pas la Qu totale livrée, si c'est le cas on a un message d'avertissement et on quitte le programme.

http://www.cijoint.fr/cjlink.php?file=cj201106/cijdHDaxc2.xls

Faire attention quand on renseigne une livraison de ne pas oublier d'indiquer son prix unitaire.

De plus le plein qui a entraîner le message doit être réencoder dasn la même cellule après l'encodage de la livraison.

Faites quelques essais et tenez moi au courant.

vieuxmonsieur
 Posté le 04/06/2011 à 18:14 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

cher ami, bonsoir,

cela devient vraiment excellent, juste une petite question : peut-on eviter de revenir a chasue saisie d'un plein en H4

je te remercie pour ton aide precieuse tout comme celle de Fernand, sans vous je n'y serai pas arrive

je vous souhaite une tres bonne soiree et un aussi bon dimanche

merci encore a vous deux

rj390111
 Posté le 04/06/2011 à 20:50 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Bonsoir,

Je suis étonné car ici après chaque saisie d'un plein le curseur ce repositionne sur la première cellule vide de la colonne H

Je vous joins à nouveau le fichier sait-on jamais.

http://www.cijoint.fr/cjlink.php?file=cj201106/cijPEvrVao.xls

Les orages arrivent sur la Belgique.

BON DIMANCHE

rj390111
 Posté le 04/06/2011 à 20:53 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Bonsoir,

Je suis étonné car ici après chaque saisie d'un plein le curseur ce repositionne sur la première cellule vide de la colonne H

Je vous joins à nouveau le fichier sait-on jamais.

http://www.cijoint.fr/cjlink.php?file=cj201106/cijPEvrVao.xls

Les orages arrivent sur la Belgique.

BON DIMANCHE

vieuxmonsieur
 Posté le 04/06/2011 à 20:58 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

en fait si tu saisi 1000 a 2.29 en livraison (par exemple) tu fais 2 ou 3 plein puis tu efface les pleins et le cout des plein tu tape de nouveau un plein puis un 2 - un 3 tu verras

je sais je pinaille et abuse de ta patience car ton travail est super

je t'en remercie

vieuxmonsieur
 Posté le 04/06/2011 à 21:15 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

ceci ne viendrait-il pas de la (dernier tiers du code) :

'Calcul du prix du plein
Prx_Plein = Plein(i) * PrxLiv(k)
'Ecriture du prix dans la feuille
Cells(LigneDebutPlein - 1 + i, 9).Value = Prx_Plein
Range("H4").Activate

vieuxmonsieur
 Posté le 04/06/2011 à 21:18 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

effectivement, j'ai mis un ' devant et c'est ok

je mets resolu en te remerciant ainsi que ferrand pour votre aide

vous etes des chefs

Page : [1] 
Page 1 sur 1

Vous devez être connecté pour participer à la discussion.
Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !
Recevoir PC Astuces par e-mail


La Lettre quotidienne +226 000 inscrits
Avec l'actu, des logiciels, des applis, des astuces, des bons plans, ...

Les bonnes affaires
Une fois par semaine, un récap des meilleurs offres.

Les fonds d'écran
De jolies photos pour personnaliser votre bureau. Une fois par semaine.

Les nouveaux Bons Plans
Des notifications pour ne pas rater les bons plans publiés sur le site.

Les bons plans du moment PC Astuces

Tous les Bons Plans
SSD externe portable USB 3.1 Crucial X6 1 To à 69,99 €
69,99 € 85 € -18%
@Cdiscount
Disque dur externe Western Digital My Book 12 To USB 3.0 à 264,64 €
264,64 € 315 € -16%
@Amazon Allemagne
Boîtier externe Ugreen USB C pour disque dur ou SSD 2.5 pouces à 15,99 €
15,99 € 19,99 € -20%
@Amazon
Trépied de table Manfrotto PIXI à 17,99 €
17,99 € 29,69 € -39%
@Amazon
Casque sans fil Tronsmart SOUNFII Q20S (ANC, autonomie 60 heures) à 34,99 €
34,99 € 50 € -30%
@Geekbuying
Norton 360 Deluxe (5 postes, 1 an) à 12,79 €
12,79 € 50 € -74%
@Amazon

Sujets relatifs
Recherche formule pour les jours de la semaine
FORMULE EXCEL POUR RECHERCHE DANS UNE TABLE
Excel formule ou autre recherche mot => construction graphique
beson d'aide pour une formule
Aide pour formule excel 2011
Formule de calcul pour questionnaire
recherche et remplace dans formule SI
une formule pour fixer
Recherche spécifique pour incredimail backup pro 2.7
Formule pour remplacer une valeur négative par la valeur 0
Plus de sujets relatifs à recherche formule ou vba pour cout reel
 > Tous les forums > Forum Bureautique