N'Abend !
Wie bekomme ich das wohl hin, das ein Kombinationsfeld so viele Zahlen 1,2,3.. anbietet, wie in einem anderen Textfeld als höchste Zahl steht ?
Beispiel : im Textfeld steht die Zahl 10 .
Das Kombinationsfeld bietet die Zahlen :1,2,3..10 an `
Danke und Grüße
Hallo,
mit einer Tabelle die alle Zahlen enthält die Du jemals brauchst.
Und dann die gewünschte Zahl als Kriterium. Z.B.
<=10
Das Kriterium geht auch als Formularbezug.
Oder Du weißt dem Kombi die Datenquelle (Hilfstabelle) mit dem Kriterium direkt bei Fokuserhalt zu.
Zu was brauchst Du das denn ?
Tabelle ist eher schlecht.die Zahl kann sich im Verlauf ändern.
Ich brauche das dafür.. Anzahl a legt fest, wie viele Mengen pro Fertigungsauftrag gebaut werden sollen.
Ausgehend von a wird festgelegt, wieviele Serienummern erzeugt werden dürfen.
Mit der Hilfstabelle ist mir das noch nicht ganz klar.
Beispiel..a=5
Dann dürfen bei den einzelnen Artikelnr 5 Seriennummern eingegeben werden.
Hallo,
wenn Du Seriennummern vergibst, so müssen die ja gespeichert werden.
Also brauchst Du in jedem Fall eine extra Tabelle um in je einem Datensatz die Seriennummern eintragen zu können.
Diese Tabelle benötigt einen Fremdschlüssel zum Auftrag.
Die Datensätze für die Seriennummern müssen per Anfügeabfrage oder recordset mit einer Schleife (For i = 1 To Anzahl) angefügt werden.
Eintrag der Seriennummer erfolgt dann in einem Unterformular zum Auftrag.
Ein Kombifeld ist da wenig sinnvoll.
Wie entsteht denn die Seriennummer, die ist ja auch nicht willkürlich, oder ?
In einem Unterformular zum Auftrag könn
Ich schreibe über ein ungebundenes Textfeld und ein Recordset die Seriennr in eine Tabelle. Dazu kommt dann der FA die ArtikelNr ID und die Gerätenr.
Über ein DomWert rufe ich dann die Werte (SerienNr.) wieder ab . So kann man dann sehen, ob f. das entsprechende "Gerät" bzw. den einzelnen Pos. eine SerNr eingetragen ist, oder nicht.
Ich hatte gedacht, das geht irgendwie über ein 1 to n Schleife?!
Hallo,
irgendwie verstehe ich garade Dein Problem nicht.
Wenn Du doch bereits in eine Tabelle schreibst, kannst Du doch ein an diese Tabelle gebundenes Formular verwenden das die Datensätze anzeigt.
Da braucht es doch kein DomWert und auch keine Schleife.
Ich glaube, Du denkst zu kompliziert.
Hy, hmm,
kann sein. Aber irgendwie muss es doch möglich sein, ein DropdownFeld zu erzeugen, bei dem die letzte Nummer aus einem Textfeld gewonnen wird?!
Gruss Martin
Hallo,
das wird immer verwirrender.
Zitatein DropdownFeld zu erzeugen, bei dem die letzte Nummer aus einem Textfeld gewonnen wird
die letzte Nummer wäre ein Datensatz. Und was willst Du mit einem Datensatz in einem Kombifeld ?
Wer in einer Datenbank in der angedachten Weise DomWert verwenden will macht was falsch.
In dem Kombifeld kommt kein Datensatz.Da steht lediglich die Zahl 1,2... bis zur Ziffer im Textfeld-
Hallo,
ZitatAber irgendwie muss es doch möglich sein,
ja, natürlich geht das. Wie (mit der Hilfstabelle) habe ich Dir in meiner 1.Antwort schon beschrieben. Damit ist das sogar einfach. Die Hilfstabelle (die bis zu eine beleibigen Zahl gehen kann) wird auch nur einmalig angelegt werden.
das Vorhaben ist mir unbegreiflich. Es steht ein Tabelle zur Verfügung zur Anzeige der Datensätze im Kombifeld. Ich kann daher nicht weiter helfen.
Zitat von: martie01 am Februar 06, 2019, 10:46:42
kann sein. Aber irgendwie muss es doch möglich sein, ein DropdownFeld zu erzeugen, bei dem die letzte Nummer aus einem Textfeld gewonnen wird?!
Private Sub Combo0_GotFocus()
Dim i As Long
Dim maxWert As Long
Dim newRowSource As String
maxWert = 22
For i = 1 To maxWert
newRowSource = newRowSource & i & ";"
Next i
newRowSource = Left(newRowSource, Len(newRowSource) - 1)
With Me.Combo0
.RowSourceType = "Value List"
.RowSource = newRowSource
End If
End SubWahlweise kann das natürlich auch im Form-Current-Ereignis oder im After-Update der korrespondierenden Textbox erfolgen.
Die elegantere Lösung wäre eine RowSourceType-Function, aber es fehlt mir im Moment die Zeit dafür ein Beispiel zu erstellen.
Hallo,
mit einer Zahlenhilfstabelle wird das zu einem Einzeiler.
Private Sub Kombinationsfeld0_GotFocus()
Me.Kombinationsfeld0.RowSource = "select Anzahl from Zahlen where Anzahl <=" & Me.Anzahl
End Sub
Erstmal vielen Dank f. Die Tips.Habe mir mit einer Hilfstabelle geholfen.
Werde aber die andere Lösung auch noch einmal ausprobieren.
Grüße