01. september 2020 - 08:07Der er
13 kommentarer og 1 løsning
Finde tal til summen
Hej Er det muligt at finde hvilke tal der giver summen? Jeg har summen/differencen 8418 Jeg har en række tal (27), er det muligt at få markeret hvilke af disse tal der tilsammen kan give 8418?
Du kan finde én løsning, men der kan være flere. Det kræver at du har Problemløser (Solver) tilføjelsesprogrammet installeret.
Hvis du har de 27 tal i A1 til A27 skal du bruge en hjælpekolonne, fx B1:B27. I den celle, hvor du vil have dit bestemte resultat, skal du have en formel som denne:
=SUMPRODUKT(A1:A27;B1:B27)
Start nu problemløseren. Målsætningen skal være den celle, hvor du har SUMPPRODUKT formlen. Vælg Til Værdi af og indtast den værdi, du ønsker at finde.
Tilføj en begrænsning. Her vælger du B!:B27 og begrænsningen wer, at de skal være binære. Så skal du klikke på Løs og bare vente. Når Problemløseren er færdiog har den sat 1-taller i B-kolonnen ud for de tal, der giver den ønskede sum og 0 ud for resten.
Så kan du bruge fx betinget formatering til at markere cellerne i A-kolonnen. Marker hele A-kolonnen og vælg Betinget formatering. Vælg Ny regel og Brug en formel til at bestemme. Formelen skal være =B1=1. Klik ok.
Med en Formel (eller flere) er det en meget ressource krævende opgave at finde de kombinationer som kan finde et givent tal. Og afhængig af størrelsen på tallet, skal kombinationerne øges.
Men, du kan gøre det med værktøjet "Solver", eller "Problemløser", som findes i Excel som tilføjelses program. Gå ind i "Filer", "indstillinger", og klik på "Tilføjelsesprogrammer". Der ser du nu en liste med mulige tilføjelses programmer. Marker "Tilføjelsesprogrammet Problemløser", og klik "Ok".
Vælg nu igen, "Filer", "indstillinger", og klik på "tilføjelsesprogrammer". Nederst i den side der kommer frem, klikker du på knappen "Udfør", som ses til højre for "Excel-tilføjelsprogrammer". Der popper nu en lille boks op, hvor du nu kan se at "Tilføjelsesprogrammet problemløser" vises. Sæt et flueben i boksen, og klik Ok.
Tilføjelsen findes nu under "Data" oppe i menulinjen.
Og i kombination med en lille formel: =SUMPRODUKT(C2:C24;A2:A24) som fortæller Solver hvor data findes, og hvor den skal markere de tal som er brugt i kombinationen. Jeg har uploadet en lille fil, som viser tallene der indgår, og hvilke tal som Solver har brugt (markeret med et 1 tal).
#5 - Ja det var den eneste løsning som nok kan køre! Har selv prøvet at lave et eks. med formler, men selvom jeg har en kraftig PC, med masser af Ram, og CPU med 8 kerner, så gik den i stå, da den skulle beregne tal op til 10.000!
#6 Også min erfaring, og generelt kan opgaven være forholdsvis uløselig, hvis alle mulige løsningrt, skal findes. Det var også derfor, jeg understregede at Problemløserne kun finder en blandt mange løsninger - selv om man kan "tvinge" den til at finde flere ved at ændre på betingelserne eller beregningsmetoden.
#7 - I den fil jeg har uploadet i #4, kan alle tal op til 10.000 (testet) findes kombinationerne af, inden for 1 - 2 sekunder, med problemløseren. Om så OP ønsker at bruge det, er en anden sag!
#9 - Jeg ved ikke lige hvad du mener med "hvilke tal" og "hvilken sum". Tallet du ønsker at finde, angives jo i Solver menuen, og der er jo ikke nogen decideret sum, men det tal som kommer ud af Solver's gennemløb af de angivne beregningstal (i mit tilfælde i A kolonnen), og som i eksemplet, vises i B25. Og det tal er lig med det som man ønsker at finde kombinationer af, og sammenlagt (SUMPRODUKT formlen) af de kombinationer i A kolonnen, som Solver har brugt til at finde kombinationen med. Jeg har i A kolonnen opstillet tal, som kan dække tal op til 10.000
#10 Det er jeg med på, men det jeg mente var, at det kommer jo an på hvilke 27 tal, som OP har i sin liste. Er det fx 1 til 27, kan han ikke finde nogen, der giver 8418. Din liste er jo opbygget, så det kan lade sig gøre.
Jeg har opfattet OP som om det er en given liste over tal, der skal vælges fra.
#11 - ja, det er jeg også med på (OP's 27 tal). Men som udgangspunkt, så må vi gå ud fra, at de kan dække området op til 8414, som var tallet. Min opstilling var for at vise OP hvordan tal stilles op ;-)
Next Multiplikator_27 Next Multiplikator_26 Next Multiplikator_25 Next Multiplikator_24 Next Multiplikator_23 Next Multiplikator_22 Next Multiplikator_21 Next Multiplikator_20 Next Multiplikator_19 Next Multiplikator_18 Next Multiplikator_17 Next Multiplikator_16 Next Multiplikator_15 Next Multiplikator_14 Next Multiplikator_13 Next Multiplikator_12 Next Multiplikator_11 Next Multiplikator_10 Next Multiplikator_09 Next Multiplikator_08 Next Multiplikator_07 Next Multiplikator_06 Next Multiplikator_05 Next Multiplikator_04 Next Multiplikator_03 Next Multiplikator_02 Next Multiplikator_01
Mange tak for hjælpen og undskyld det sene svar. Jeg medgiver det er for dårligt jeg ikke svarer jer hurtigt.
Synes godt om
Ny brugerNybegynder
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.