20.03.2019, 16:27
Hallo Forum,
ich bin ganz frisch hier angemeldet weil ich leider alleine nicht mehr weiter komme. Ich habe schon viele Stunden mit dem www verbracht bin aber noch nicht am Ziel. Deshalb möchte ich um Mithilfe bitten.
Meine Problemstellung.
In Zelle A1 treffe ich über ein Dropdown die Auswahl zwischen den Zahlen 1-240 (Monate).
In Zelle A2 (oder andere, erstmal unbedeutend) habe ich einen Dropdown der ganzzahlige Teiler von A1, je nach Zahl mehr oder weniger viele, aufsteigend sortiert anbietet.
In Zelle A3 (oder andere, erstmal unbedeutend) habe ich einen Dropdown der ganzzahlige Teiler von A2, je nach Zahl mehr oder weniger viele, eher wenige, und aufsteigend sortiert.
Beispiel:
Ich wähle in A1 240 aus, dann zeigt mir der Dropdown von A2 1,2,3,4,5,6,8,10,12,15,16,24,30,40,48,60,80,120 und 240 selbst natürlich auch.
In A2 entscheide ich mich jetzt für 30, und kann im Dropdown von A3 nur noch zwischen 1,2,3,5,6,10,15 und 30 wählen. Bei ungeraden Zahlen oder kleineren Zahlen ist natürlich deutlich weniger Auswahl.
gesuchte Lösung:
Mir reicht der Schritt wie ich von der Zahl aus A1 in eine aufsteigend sortierte Hilfsspalte komme, in der dann meinetwegen von B1 - Bn die ganzzahligen Teiler von A1 einzeln enthalten sind.
was ich habe:
die ganzzahligen Teiler von A1 getrennt durch beliebiges Zeichen alle als array in einer Zelle!
ich bin ganz frisch hier angemeldet weil ich leider alleine nicht mehr weiter komme. Ich habe schon viele Stunden mit dem www verbracht bin aber noch nicht am Ziel. Deshalb möchte ich um Mithilfe bitten.
Meine Problemstellung.
In Zelle A1 treffe ich über ein Dropdown die Auswahl zwischen den Zahlen 1-240 (Monate).
In Zelle A2 (oder andere, erstmal unbedeutend) habe ich einen Dropdown der ganzzahlige Teiler von A1, je nach Zahl mehr oder weniger viele, aufsteigend sortiert anbietet.
In Zelle A3 (oder andere, erstmal unbedeutend) habe ich einen Dropdown der ganzzahlige Teiler von A2, je nach Zahl mehr oder weniger viele, eher wenige, und aufsteigend sortiert.
Beispiel:
Ich wähle in A1 240 aus, dann zeigt mir der Dropdown von A2 1,2,3,4,5,6,8,10,12,15,16,24,30,40,48,60,80,120 und 240 selbst natürlich auch.
In A2 entscheide ich mich jetzt für 30, und kann im Dropdown von A3 nur noch zwischen 1,2,3,5,6,10,15 und 30 wählen. Bei ungeraden Zahlen oder kleineren Zahlen ist natürlich deutlich weniger Auswahl.
gesuchte Lösung:
Mir reicht der Schritt wie ich von der Zahl aus A1 in eine aufsteigend sortierte Hilfsspalte komme, in der dann meinetwegen von B1 - Bn die ganzzahligen Teiler von A1 einzeln enthalten sind.
was ich habe:
die ganzzahligen Teiler von A1 getrennt durch beliebiges Zeichen alle als array in einer Zelle!
Code:
Option Explicit
Public Function alleTeilerFinden(zahl)
Dim lngCount As Long
Dim Obergrenze As Long
Dim lngIndex As Long
ReDim arr(lngIndex)
Obergrenze = zahl
Do
lngCount = lngCount + 1
If lngCount >= Obergrenze Then Exit Do
If zahl Mod lngCount = 0 Then
lngIndex = lngIndex + 2
ReDim Preserve arr(lngIndex - 1)
arr(lngIndex - 2) = lngCount
Obergrenze = zahl / lngCount
arr(lngIndex - 1) = Obergrenze
End If
Loop
alleTeilerFinden = Join(arr, "-")
End Function