Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
|
15.07.2018 18:05:14 |
Daniel |
|
|
|
16.07.2018 17:41:14 |
Mackie |
|
|
|
17.07.2018 07:29:46 |
Daniel |
|
|
|
17.07.2018 07:48:43 |
Mackie |
|
|
|
17.07.2018 09:35:18 |
Gast43573 |
|
|
|
31.07.2018 09:40:51 |
Daniel |
|
|
Pemutation eines Vektors (Matrix) ohne Wiederholungen |
03.08.2018 16:54:48 |
Daniel |
|
|
Von:
Daniel |
Datum:
03.08.2018 16:54:48 |
Views:
578 |
Rating:
|
Antwort:
|
Thema:
Pemutation eines Vektors (Matrix) ohne Wiederholungen |
Hallo zusammen, da ich leider bisher nicht weitergekommen bin, habe ich einen vereinfachten Codeschnipsel angefuegt. Ich übergebe die Matrix b mit einer beliebigen Anzahl an Stellen. In meiner Permutationsfunktion schreibe ich mir jeden Fall in die entsprechende Zelle. Das löschen von doppelten Fällen habe ich mit Absicht weggelassen um mein Problem zu verdeutlichen. Ich möchte nämlich am liebsten keine doppelten Fälle berechnen, sondern nur die voneinander unterschiedlichen Fälle.
Sub s_Faelle_erstellen(b)
'Zahlen
strVal1 = "=1"
strVal2 = "=2"
'Beliebig waehlbare max Anzahl an befuellten Eintraegen in Matrix
A_NmaxVal = 3
'Array überschreiben
a = b
'Array auf Null setzen
For i = 0 To UBound(a)
a(i) = 0
Next
'Matrizen erzeugen für alle Fälle
For j = 0 To A_NmaxVal - 1
'Für alle bisher vorhandenen Werte in der Matrix
For l = 0 To j
'Wert in Matrix ersetzen
a(l) = strVal1
'Permutation durchführen
Call permutation(a, 0)
Next
For m = 0 To j
'Wert in Matrix ersetzen
a(m) = strVal2
'Permutation durchführen
Call permutation(a, 0)
Next
'_______________________________________
'Finden und Löschen von doppelten Werten
' s_Werte_zusammenfassen (a)
' Call s_DoppelteZeilenLöschen(a)
' Call s_LetzteSpalteLoeschen
'_______________________________________
Next
End Sub
Function permutation(ByVal a, k)
If k = UBound(a) Then
Zeile = Cells(65536, 1).End(xlUp).Row
If Cells(1, 1) <> "" Then Zeile = Zeile + 1
Range(Cells(Zeile, 1), Cells(Zeile, UBound(a) + 1)).FormulaArray = a
Exit Function
Else
For i = k To UBound(a)
x = a(i)
a(i) = a(k)
a(k) = x
Call permutation(a, k + 1)
Next
End If
End Function
|
- Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
- Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
- Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
- Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
- Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei
Antworten auf Ihren Beitrag zu benachrichtigen
Bitte geben Sie ein aussagekräftiges Thema an.
Bitte geben Sie eine gültige Email Adresse ein!
- Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
- Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
- Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
- Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
- Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei
Antworten auf Ihren Beitrag zu benachrichtigen
Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
|
15.07.2018 18:05:14 |
Daniel |
|
|
|
16.07.2018 17:41:14 |
Mackie |
|
|
|
17.07.2018 07:29:46 |
Daniel |
|
|
|
17.07.2018 07:48:43 |
Mackie |
|
|
|
17.07.2018 09:35:18 |
Gast43573 |
|
|
|
31.07.2018 09:40:51 |
Daniel |
|
|
Pemutation eines Vektors (Matrix) ohne Wiederholungen |
03.08.2018 16:54:48 |
Daniel |
|
|