» »

[VBA EXCEL] kombinacije

[VBA EXCEL] kombinacije

ALfonz ::

Pozdravljeni,
potrebujem pomoč...v excelu bi s pomočjo VBA izvedel vse možne kombinacije ki se lahko pri danih robnih pogojih pojavijo.
primer:
A1 'vrednost v celici je poljubna številka
B1 'vrednost v celici je poljubna številka
C1 'vrednost v celici je poljubna številka
vrednost v stolpcu A se lahko množi z faktorjem: 1 ali 3...
vrednost v stolpcu B se lahko množi z faktorjem: 1...
vrednost v stolpcu C se lahko množi z faktorjem: 0 ali 1...

zgornji robni pogoji mi dajo rezultat generiranih kombinacij:
1komb=A1*1+B1*1+C1*0'zapišemo rezultat v D1
2komb=A1*3+B1*1+C1*0'zapišemo rezultat v D2
3komb=A1*1+B1*1+C1*1'zapišemo rezultat v D3
4komb=A1*3+B1*1+C1*1'zapišemo rezultat v D4
...
Kako bi rezultat kombinacij generiral avtomatično s pomočjo VBA? Tudi v primeru, da imamo možnost npr. A1 množiti z večimi različnimi faktorji.
lp

FrEaKmAn ::

bi znal s pseudo kodo zapisati kaj točno želiš? pa potem preoblikujemo v VBA?

prtenjam ::

Pozdravljeni,

tukaj imate dve tematiki o VBA in kombinacijah:
Iskanje seštevka celih števil
Prirejanje parov

Sicer pa še malce poiščite po forumu, saj smo o tem tam že govorili...
Matjaž Prtenjak
https://mnet.si

ALfonz ::

hvala za hiter odgovor...prtenjam, ne vem če bi znal na tak način do rešitve...
mislim, da bi s for zankami nekako moral priti do rešitve. Ali je spodnja psevdokoda prava smer?

ideja ki sme jo dobil:
-nekako bi preko for zanke shranil vrednosti kot "value(i)
psevdokoda:
1.korak'shranjevanje vrednosti iz celic v spremenlivjko val(i)
'shranim vrednosti iz izbranih celic v VBA, kot val(1), val(2) in val(3) ...(kolikor vrednosti pač hočem kombinirat)
for row=1 to n
for i=1 to 3
val(i)=cell(row,i)
next i' nova vrednost
next row 'če obstajajo vrednosti v naslednih vrstah
end for

2.korak'shranjevanje možnih kombinacijskih faktorjev, ki pripadajo posamezni vrednosti...
'val(i) se lahko množi z fact_i(j)
'možni faktorji za val(1)
fact_1(0)=1.0
fact_1(1)=1.3
'možni faktorji za val(2)
fact_2(0)=1.0
'možni faktorji za val(3)
fact_3(0)=0.0
fact_3(1)=1.0

3.korak
'verjetno generacija kombniacij s for zanko. Vsaka generirana kombinacija se sproti zapisuje v vsporedne celice...
'predvidevam da nekaj v smislu:
for row=1 to n '(n=1 če obstaja samo ena vrsta vrednsoti (A1,B1,C1)...
'tukaj so potrebne for zanke za menjavo različnih faktorjev pri nespremenljivih vrednsoti
cells(row, x)=val(i)*fact_1(j)+val(i+1)*fact_2(j)+val(i+2)*fact_3(j)
next row 'gremo na nasledno vrstico če obstaja (npr.:A2,B2,C2). X je št. stoplca kamor vsporedno zapisujem kombinacije
end

Zgodovina sprememb…

  • spremenil: ALfonz ()


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

pomoč excel (strani: 1 2 )

Oddelek: Programska oprema
587941 (3518) -JM-
»

Excel Težava - fukncija

Oddelek: Pomoč in nasveti
202500 (2193) smetko
»

excell razvrščanje

Oddelek: Programska oprema
214117 (3761) rferrari
»

[Excel]Kako izvleči vrednost?

Oddelek: Programiranje
223783 (3506) Mobidick
»

Prosim za pomoč pri VBA

Oddelek: Programiranje
352092 (1895) apachee

Več podobnih tem