Ga naar inhoud

Aanbevolen berichten

Geplaatst:

Die solver en zijn gebruik ken ik niet, thuis werk ik met excel online en heb de add-on eens gestart. Maar weet niet goed hoe deze te gebruiken. Vul ik nu bij target in blad 1 het getal 12 kom ik op totaal 19 uit, bij blad 2 is dit 10,5.

Geplaatst:

Heb het voorbeeldbestandje wat aangepast. Blad2 verwijdert want dit was nog een manuele testsheet.

 

Waar je op moet letten als je het bestand gebruikt.

 

1) De Solver-addin moet geactiveerd zijn.

 

2) Macro's moeten ingeschakeld zijn.

 

3) In het VBA-project moet de verwijzing naar Solver aangevinkt zijn.

 

Door nu in B5 een getal typen en te bevestigen met Enter wijzigen de cellen in B1:B3 naar de gebruikte lengtes.

Solver_Sample(1).xlsm

Geplaatst:

Dit werkt inderdaad perfect! Kopieer ik echter de nodige cellen naar mijn werkblad en pas ik de verwijzingen in oplosser aan klopt de berekening weer niet. Als ik bij oplosser op "oplossen" klik doet hij het wel. Moet ergens iets over het hoofd zien. In VBA is de verwijzing aangevinkt.

In bijlage mijn werkblad.

Kopie van Stelling berekenen.xlsm

Geplaatst:

Je was de Event-code (de motor) vergeten te kopiëren naar de Bladmodule van Blad1.

 

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$F$100" Then
        If Target = vbNullString Then Exit Sub
        If Target < 0 Then Exit Sub
        Application.ScreenUpdating = False
        Range("F96:F98").ClearContents
        SolverReset
        SolverOK Range("$F$101"), 2, , Range("$F$96:$F$98"), 1
        SolverAdd Range("$F$96:$F$98"), 4
        SolverSolve True
        Application.ScreenUpdating = True
    End If
End Sub

 

Stelling berekenen(1).xlsm

Geplaatst:

Merci voor de hulp, werkt perfect nu! Puur uit interesse want dit is voor mij zeer onbekend terrein: die code is dit zelf aan te maken of wat doet dat?

Ik zie in VBA dat de programmacode van het blad er nu wel staat en toen bij mij niet.

Geplaatst:

Bedankt voor de feedback.

 

Je kan code opnemen met de macrorecorder om een gevoel te krijgen van de gebruikte syntax

 

maar in een later stadium ga je zelf alles vanaf 0 schrijven.

Geplaatst:

Ik zie dat als ik in het vak target (F100, naam heb ik gewijzigd) een getal invul de berekening klopt, doe ik een verwijzing naar B5 gevelbreedte doet hij de berekening ook, maar verander ik dit getal in B5 wil hij niet meer berekenen. Is dit een instelling in Excel zelf dat ik zou moeten veranderen of ligt het aan de oplosserberekening?

Stelling berekenen.xlsm

Geplaatst:

Worksheet_Change-event reageert niet op een wijziging van de waarde door een formule.

 

Wijzig daarom de broncel naar B5, dewelke de verandering start.

 

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$B$5" Then
        If Target = vbNullString Then Exit Sub
        If Target < 0 Then Exit Sub
        Application.ScreenUpdating = False
        Range("F96:F98").ClearContents
        SolverReset
        SolverOK Range("$F$101"), 2, , Range("$F$96:$F$98"), 1
        SolverAdd Range("$F$96:$F$98"), 4
        SolverSolve True
        Application.ScreenUpdating = True
    End If
End Sub

 

×
×
  • Nieuwe aanmaken...

Belangrijke informatie

We hebben cookies geplaatst op je toestel om deze website voor jou beter te kunnen maken. Je kunt de cookie instellingen aanpassen, anders gaan we er van uit dat het goed is om verder te gaan.