# Thread: Minimization VBA Code Thanks: 0 Likes: 0

1. ## Minimization VBA Code

Good morning Mr Excel, would like to ask how to code the minimization VBA code.

The objective is to minimize the
Fuel cost=Cost of Fuel 1 (Fuel 1 Qty) + Cost of fuel 2 (Fuel 2 Qty)+....
while satisfying the energy balance=Heating Value of Fuel 1 (Fuel 1 Qty)+ Heating Value of Fuel 2 (Fuel 2 Qty)+...

Here's the figures:

 Fuel Optimization Objective Fuel Cost (PhP) 22.17 Mil Energy Balance - Fuel Type ∆H (MJ/kg) (Tons) (PhP/Ton) (MJ) Coal 23.01 0.01 4800 0.17 Napier 0 - Wood Chips 12.53 7917.186906 2800 99,202.35 99,202.53 Bagasse 9.06 10,950.00 2600 99,202.53

The 99,202MJ is the energy balance target that needs to be attain from using other fuel such as coal, napier and wood chips. This is equated to the product sum of Heating Values of other fuel (i.e. coal, napier & wood chips) and their quantity.

Hoping to hear from you soon

Regards,
Matthew

2. ## Re: Minimization VBA Code

Looking at yor figures it seems obvious to me that the cheapest way of getting 99202Mj is using 10950 tons of Bagasse at 9.06 Mj/kg. So I think what this really means is that I haven't understood the question. which really means that your question is not very clear.

3. ## Re: Minimization VBA Code

Hi Mr Excel, my apologies for my mistake. The fuel combination that I'm only considering are the top two only and excluding the bagasse. The objective is to match the energy content of the top two fuel type with the bagasse at the bottom. For the fuel pricing, again, its the sum of the top two only.

Hoping to hear from you soon

4. ## Re: Minimization VBA Code

I still don't really understand what the problem is, what i undertand is that you want of find out the cost per Megajoule for each fuel. This is simply the calorific value per ton times the cost per ton.
i.e 1 ton of coal will cost you 4800 php and generate 23.01 Mgj so the cost per megjoule is 4800/23.01 = 4.79, for the wood chip is it 4.475 and the bagasse it 3.48

5. ## Re: Minimization VBA Code

Hi Mr Excel, what i want to minimize is the total fuel cost=Cost of Coal*Tons of Coal + Cost of Wood Chips*Tons of Wood chips. The prices of coal and wood chips are given. What i need to solve is their quantity. For their quantity, i did an energy balance wherein Heating Value of Coal*Tons of Coal + Heating Value of Wood Chips*Tons of Wood Chips=Heating Value of Bagasse*Tons of Bagasse. (i.e. Heating Value refers to the MJ/kg column). I'm having a hard time coding the vba for it. Hoping to hear from you soon

Regards,

6. ## Re: Minimization VBA Code

hi. I'm curious - is this a study question. Like homework? Why a VBA solution? What VBA do you already have?

7. ## Re: Minimization VBA Code

Hi Ms Fazza, more of own formulated problem solving. What i did initially is i used the solver in excel. But i just thought of figuring how to formulate the vba code that does the same thing. Hoping you could help me out

8. ## Re: Minimization VBA Code

Originally Posted by matthew_ong12
... i just thought of figuring how to formulate the vba code that does the same thing.
So where have you got to??
Best to post it so people can see what you've done. Thanks

9. ## Re: Minimization VBA Code

Hi Farra, what i initially did was to record the steps in macro when i utilized the solver. But as i try to adapt this one to the vba code, i'm encountering a problem. It says "Sub or Function not define". Here's the code below

The cell b380 refers to the total fuel cost that has to be minimized. The Qty of coal and wood chips are in the range c382 to c384. I also placed a nonlinear equation for the qty of coal and wood chips to be >=0 to avoid returning a negative value.

Hoping to hear from you soon

SolverOk SetCell:="\$B\$380", MaxMinVal:=3, ValueOf:=0, ByChange:="\$C\$382:\$C\$384" _
, Engine:=1, EngineDesc:="GRG Nonlinear"
SolverOk SetCell:="\$B\$380", MaxMinVal:=3, ValueOf:=0, ByChange:="\$C\$382:\$C\$384" _
, Engine:=1, EngineDesc:="GRG Nonlinear"
SolverSolve