Avatar billede 1998Alexander Praktikant
08. april 2019 - 13:06 Der er 2 kommentarer

Brug af VBA til at finde optimale varesammensætning

Hejsa.

Jeg skal finde den optimale sammensætning af 2 produkter, P og Q, som kan give det maksimale dækningsbidrag. Der er en række betingelser, som skal opfyldes.
Hertil skal VBA anvendes, og der må ikke optages makroer.

Findes der en funktion hertil, eller hvordan kan man bære sig ad?
Avatar billede finb Ekspert
09. april 2019 - 09:51 #1
Simpelt eksempel:
Du har 8 stk. P og 9 stk. Q:

For P=0 to 8
  For Q=0 to 9
    'udregn her med alle betingelser
  Next Q
Next P
Avatar billede finb Ekspert
11. april 2019 - 10:41 #2
Fjern:
""
BestSolution = profitAfterOE
Else
""
Opret dit spm. her på Eksperten:

maxProductionP = 100
maxProductionQ = 50
priceP = 90
priceQ = 100
costP = 45
costQ = 40

productionTimeAP = 15
productionTimeBP = 15
productionTimeCP = 15
productionTimeDP = 15

productionTimeAQ = 10
productionTimeBQ = 30
productionTimeCQ = 5
productionTimeDQ = 5

operatingExpenses = 6000

earningsPerItemP = priceP - costP
earningsPerItemQ = priceQ - costQ

productionTimeP = productionTimeAP + productionTimeBP + productionTimeCP + productionTimeDP
productionTimeQ = productionTimeAQ + productionTimeBQ + productionTimeCQ + productionTimeDQ

For ProductionOfP = 0 To maxProductionP
For ProductionOfQ = 0 To maxProductionQ

If ((productionTimeAP * (ProductionOfP)) + (productionTimeAQ * (ProductionOfQ)) <= 2400) And _ 'vbcrlf
    ((productionTimeBP * (ProductionOfP)) + (productionTimeBQ * (ProductionOfQ)) <= 2400) And _
    ((productionTimeCP * (ProductionOfP)) + (productionTimeCQ * (ProductionOfQ)) <= 2400) And _
    ((productionTimeDP * (ProductionOfP)) + (productionTimeDQ * (ProductionOfQ)) <= 2400) Then


'her kan du fx have:
' nyMax = max(gammelMax;nyMax)
' og nævn nyMax i din msgBox

End If

Next ProductionOfP
Next ProductionOfQ

profitP = ProductionOfP * earningsPerItemP
profitQ = ProductionOfQ * earningsPerItemQ

totalProfit = profitP + profitQ

profitAfterOE = totalProfit - operatingExpenses

MsgBox ("By producing" & ProductionOfP & " items of P and " & ProductionOfQ & " items of Q, the profit after operating expenses is" & profitAfterOE & "")

End Sub"

'Jeg skal finde den optimale produktion af produkt p og Q
under visse begrænsninger
der maksimerer profitten:

Jeg har lavet flg kode, men den melder fejl ved next Production P.
Hvor laver jeg fejlen og hvordan skal den se ud?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Stort udvalg af Excel kurser til alle niveauer og jobfunktioner

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester





White paper
Sikkerhed gjort enkelt: Beskyt din virksomhed direkte i browseren