Zavrieť

Porady

Uprava Makra na permutacie

Prosim Vas vie mi niekto upravit toto makro na permutacie aby bolo bez opakovania? Skratka je jedno na ktorom mieste cislo bude. Je jedno ci bude 1 2 3 4 alebo bude 4 3 2 1 alebo 1 3 2 4. Skratka ked budu pouzite cisla uz ta kombinacia nebude.

Sub AAA()
Dim i As Integer
Dim pocet As Integer
Dim a(10)
Set ws1 = Worksheets("data")
Set ws2 = Worksheets("výsledok")
pocet = ws1.Cells(1, 2).Value ' počet čísel

' uloženie zadaných čísel
For i = 1 To 10
a(i) = ws1.Cells(i, 1).Value
Next i

ws2.Select
Cells.Clear
Cells(1, 1).Value = a(1)
For i = 1 To pocet - 1
fac = u_fact(i) ' dlžka tabuľky
' skopírovanie tabuľky postupne n-krát
For j = 1 To i * fac Step fac
Range(Cells(1, 1), Cells(fac, i)).Copy
Range(Cells(j + fac, 1), Cells(j + 2 * fac, i)).Select
ActiveSheet.Paste
Application.CutCopyMode = False
Next j
' vyplnenie posledného stlpca
For k = 1 To (i + 1) * fac Step fac
indik = (k - 1) \ fac + 1
For j = k To fac + k - 1
Cells(j, i + 1).Value = a(i + 1)

' presunutie stlpcov doprava
If indik < i + 1 Then
For l = i + 1 To indik Step -1
If l > indik Then
Cells(j, l).Value = Cells(j, l - 1).Value
Else
Cells(j, l).Value = a(i + 1)
End If
Next l
End If
Next j
Next k
Next i
Range("A1").Select
End Sub


Function u_fact(number As Integer)

u_fact = 1
For i = 1 To Int(number)
u_fact = u_fact * i
Next i

End Function
Pravidlá a tipy
  • Každý móže napísať len 1 odpoveď. Neskor mozete svoju odpoveď vylepšiť.
  • Odpoveď má priniesť riešenie na otázku, vyvarujte sa hodnotenia otázky.
  • Odpoveď má byť viac o faktoch ako o názoroch.
Dalšie pravidla a tipy
    Ak potrebujete v otázke niečo upresniť, najskôr sa spýtajte na podrobnosti.
    Koncept slúži na uloženie rozpracovanej odpovede, koncept sa zobrazuje len Vám, až kým ho nezverejníte.
    Ak máte podobnú otázku, založte Novú otázku alebo Súvisiacu otázku.
    ❤ Buďte priateľskí ❤
    Sme súčasťou jednej komunity, ktorá si chce vzájomne pomáhať, rozdieľnosť je vítaná ak neubližuje!
    Usporiadať podľa času

    marjankaj je offline (nepripojený) marjankaj

    I am a man marjankaj
    Hlavne že tu máme databázu otázok.
    [url]http://www.porada.sk/t176781-vypocet-kombinacii-v-exceli.html[/urlTeraz pozerám, že to skopíroval odtiaľ.
    Tak toto budeš ťažko upravovať. Makro bolo na permutácie a ty chceš kombinácie? Tak to bude úplne inak.
    Ak ti nezáleží na poradí, tak kombinácia bude z prvkov 1,2,3,4 iba jedna a to 1,2,3,4
    Naposledy upravil marjankaj : 03.08.15 at 09:21

    Uprava Makra na permutacie

    Porady, ktoré by vás mohli zaujímať

    Prihláste sa a sledujte len tie Porady, ktoré Vás zaujímajú.