Supportnet / Forum / Datenbanken
Schleife über Recordset
Frage
Hallo,
Eine Tabelle mit 3 Spalten ( Batch1 Batch2 Batch3 ) und 43 Zeilen pro Spalte möchte ich mit einem Recordset auslesen und mit einigen zusätzlichen Variablen in einer neuen Tabelle speichern.
Hier mal der Code:
[code] Dim qd As QueryDef
Dim db As dao.Database
Dim td As TableDef
Dim rst As dao.Recordset
Dim rst2 As dao.Recordset
Dim xy
Dim a, b, z As String
Dim m, n, o, p As Long
Dim I, j, ll As Long
Dim EingDatum As Date
Dim Uhrz As Date
Dim AnzDS As Long
Uhrz = Time
EingDatum = Date
b = "Produktionsnummer"
Set db = CurrentDb
Set rst = db.OpenRecordset("Neue Tabelle", dbOpenTable)
Set rst2 = db.OpenRecordset("TabFahrzeuge", dbOpenTable)
With rst
´I = 0
For I = 1 To 3 ´Spalte
j = 0
For j = 1 To 43 ´Zeile
Next
If j Mod 43 = 1 Then
For ll = 1 To 3
rst.MoveNext
rst2.AddNew
rst2![Eingabe am] = EingDatum
rst2!Uhrzeit = Uhrz
rst2!Bereich = o
rst2!Linie = n
rst2!ProdNr = a
rst2!Radstand = m
rst2!Farbcode = z
rst2!mp1 = rst!Batch1
rst.MoveNext
rst2!mp2 = rst!Batch1
rst.MoveNext
rst2!mp3 = rst!Batch1
rst.MoveNext
rst2!mp4 = rst!Batch1
rst.MoveNext
rst2!mp5 = rst!Batch1
rst2.Update
Next ll
Hier bekomme ich die Fehlermeldung 3021 Kein altueller Datensatz, obwohl die Ursprungstabelle definitiv gefüllt ist.
Was mach ich falsch ?
Gruß Ralf
Antwort 1 von Teddy7
Hi Ralf !
Also erstmal:
hier stimmt auch was nicht:
For I = 1 To 3 ´Spalte
j = 0
For j = 1 To 43 ´Zeile
Next
fehlt da ein next / ist das noch nicht fertig ???
zum Problem:
Du machst als erstes ein rst.movenext
next - von wo aus ?
Als erstes gehört da also ein rst.movefirst hin
Gruß
Teddy
Also erstmal:
hier stimmt auch was nicht:
For I = 1 To 3 ´Spalte
j = 0
For j = 1 To 43 ´Zeile
Next
fehlt da ein next / ist das noch nicht fertig ???
zum Problem:
Du machst als erstes ein rst.movenext
next - von wo aus ?
Als erstes gehört da also ein rst.movefirst hin
Gruß
Teddy
Antwort 2 von RalfH
Hallo Teddy7 und ein frohes , Gesundes und hoffentlich Erfolgreiches neues Jahr2007 wünsche ich Dir !
Erstmal: Schleifen sind meine Schwäche :(
Ich kann leider nicht den ganzen Code reinsetzen, hast recht!
Habe den Code nun verändert, das Recordset liest auch alle drei Batches, schreibt mir allerdings immer nur Batch1 in die Tabelle.
Hier mal der Code :
Erstmal: Schleifen sind meine Schwäche :(
Zitat:
For I = 1 To 3 ´Spalte
j = 0
For j = 1 To 43 ´Zeile
Next
fehlt da ein next / ist das noch nicht fertig ???
For I = 1 To 3 ´Spalte
j = 0
For j = 1 To 43 ´Zeile
Next
fehlt da ein next / ist das noch nicht fertig ???
Ich kann leider nicht den ganzen Code reinsetzen, hast recht!
Habe den Code nun verändert, das Recordset liest auch alle drei Batches, schreibt mir allerdings immer nur Batch1 in die Tabelle.
Hier mal der Code :
Zitat:
For ll = 1 To 1
rst.MoveFirst
rst2.AddNew
rst2![Eingabe am] = EingDatum
rst2!Uhrzeit = Uhrz
rst2!Bereich = o
rst2!Linie = n
rst2!ProdNr = a
rst2!Radstand = m
rst2!Farbcode = z
rst2!mp1 = rst!Batch1
rst.MoveNext
rst2!mp2 = rst!Batch1
rst.MoveNext
rst2!mp3 = rst!Batch1
rst.MoveNext
rst2!mp4 = rst!Batch1
rst.MoveNext
rst2!mp5 = rst!Batch1
rst.MoveNext
rst2!mp6 = rst!Batch1
rst.MoveNext
rst2!mp7 = rst!Batch1
rst.MoveNext
rst2!mp8 = rst!Batch1
rst.MoveNext
rst2!mp9 = rst!Batch1
rst.MoveNext
rst2!mp10 = rst!Batch1
rst.MoveNext
rst2!mp11 = rst!Batch1
rst.MoveNext
rst2!mp12 = rst!Batch1
rst.MoveNext
rst2!mp13 = rst!Batch1
rst.MoveNext
rst2!mp14 = rst!Batch1
rst.MoveNext
rst2!mp15 = rst!Batch1
rst.MoveNext
rst2!mp16 = rst!Batch1
rst.MoveNext
rst2!mp17 = rst!Batch1
rst.MoveNext
rst2!mp18 = rst!Batch1
rst.MoveNext
rst2!mp19 = rst!Batch1
rst.MoveNext
rst2!mp20 = rst!Batch1
rst.MoveNext
rst2!mp21 = rst!Batch1
rst.MoveNext
rst2!mp22 = rst!Batch1
rst.MoveNext
rst2!mp23 = rst!Batch1
rst.MoveNext
rst2!mp24 = rst!Batch1
rst.MoveNext
rst2!mp25 = rst!Batch1
rst.MoveNext
rst2!mp26 = rst!Batch1
rst.MoveNext
rst2!mp27 = rst!Batch1
rst.MoveNext
rst2!mp28 = rst!Batch1
rst.MoveNext
rst2!mp29 = rst!Batch1
rst.MoveNext
rst2!mp30 = rst!Batch1
rst.MoveNext
rst2!mp31 = rst!Batch1
rst.MoveNext
rst2!mp32 = rst!Batch1
rst.MoveNext
rst2!mp33 = rst!Batch1
rst.MoveNext
rst2!mp34 = rst!Batch1
rst.MoveNext
rst2!mp35 = rst!Batch1
rst.MoveNext
rst2!mp36 = rst!Batch1
rst.MoveNext
rst2!mp37 = rst!Batch1
rst.MoveNext
rst2!mp38 = rst!Batch1
rst.MoveNext
rst2!mp39 = rst!Batch1
rst.MoveNext
rst2!mp40 = rst!Batch1
rst.MoveNext
rst2!mp41 = rst!Batch1
rst.MoveNext
rst2!mp42 = rst!Batch1
rst.MoveNext
rst2!mp43 = rst!Batch1
´ rst.MoveNext
rst2.Update
Next ll
If rst.EOF And I <> 43 Then
If I < 43 Then MsgBox ("es fehlen Daten!")
If I > 43 Then MsgBox ("zuviele Daten")
Resume
rst.Close
Set rst = Nothing
Set db = Nothing
End If
Next
End With
Gruß RalfFor ll = 1 To 1
rst.MoveFirst
rst2.AddNew
rst2![Eingabe am] = EingDatum
rst2!Uhrzeit = Uhrz
rst2!Bereich = o
rst2!Linie = n
rst2!ProdNr = a
rst2!Radstand = m
rst2!Farbcode = z
rst2!mp1 = rst!Batch1
rst.MoveNext
rst2!mp2 = rst!Batch1
rst.MoveNext
rst2!mp3 = rst!Batch1
rst.MoveNext
rst2!mp4 = rst!Batch1
rst.MoveNext
rst2!mp5 = rst!Batch1
rst.MoveNext
rst2!mp6 = rst!Batch1
rst.MoveNext
rst2!mp7 = rst!Batch1
rst.MoveNext
rst2!mp8 = rst!Batch1
rst.MoveNext
rst2!mp9 = rst!Batch1
rst.MoveNext
rst2!mp10 = rst!Batch1
rst.MoveNext
rst2!mp11 = rst!Batch1
rst.MoveNext
rst2!mp12 = rst!Batch1
rst.MoveNext
rst2!mp13 = rst!Batch1
rst.MoveNext
rst2!mp14 = rst!Batch1
rst.MoveNext
rst2!mp15 = rst!Batch1
rst.MoveNext
rst2!mp16 = rst!Batch1
rst.MoveNext
rst2!mp17 = rst!Batch1
rst.MoveNext
rst2!mp18 = rst!Batch1
rst.MoveNext
rst2!mp19 = rst!Batch1
rst.MoveNext
rst2!mp20 = rst!Batch1
rst.MoveNext
rst2!mp21 = rst!Batch1
rst.MoveNext
rst2!mp22 = rst!Batch1
rst.MoveNext
rst2!mp23 = rst!Batch1
rst.MoveNext
rst2!mp24 = rst!Batch1
rst.MoveNext
rst2!mp25 = rst!Batch1
rst.MoveNext
rst2!mp26 = rst!Batch1
rst.MoveNext
rst2!mp27 = rst!Batch1
rst.MoveNext
rst2!mp28 = rst!Batch1
rst.MoveNext
rst2!mp29 = rst!Batch1
rst.MoveNext
rst2!mp30 = rst!Batch1
rst.MoveNext
rst2!mp31 = rst!Batch1
rst.MoveNext
rst2!mp32 = rst!Batch1
rst.MoveNext
rst2!mp33 = rst!Batch1
rst.MoveNext
rst2!mp34 = rst!Batch1
rst.MoveNext
rst2!mp35 = rst!Batch1
rst.MoveNext
rst2!mp36 = rst!Batch1
rst.MoveNext
rst2!mp37 = rst!Batch1
rst.MoveNext
rst2!mp38 = rst!Batch1
rst.MoveNext
rst2!mp39 = rst!Batch1
rst.MoveNext
rst2!mp40 = rst!Batch1
rst.MoveNext
rst2!mp41 = rst!Batch1
rst.MoveNext
rst2!mp42 = rst!Batch1
rst.MoveNext
rst2!mp43 = rst!Batch1
´ rst.MoveNext
rst2.Update
Next ll
If rst.EOF And I <> 43 Then
If I < 43 Then MsgBox ("es fehlen Daten!")
If I > 43 Then MsgBox ("zuviele Daten")
Resume
rst.Close
Set rst = Nothing
Set db = Nothing
End If
Next
End With
Antwort 3 von Teddy7
Hi Ralf !
Also so ganz verstehe ich noch nicht was Du da machen willst.
Ich gehe jetzt mal davon aus, dass Deine Ursprungstabelle(rst) 3 Felder hat (Spalten gibt´s nicht) - Batch1 bis 3.
Wie viele Zeilen (Datensätze) die Tabelle hat ist unerheblich wenn man alle verarbeiten will.
Das sieht dann so aus:
.....
......
rst.MoveFirst
Do Until rst.EOF
rst2.addnew
rst2!Feld1 = rst!Batch1
rst2!Feld2 = rst!Batch2
rst2!Feld3 = rst!Batch3
.........
.....usw....
rst2.update
rst.movenext
loop
........
.......usw....
Gruß
Teddy
Also so ganz verstehe ich noch nicht was Du da machen willst.
Ich gehe jetzt mal davon aus, dass Deine Ursprungstabelle(rst) 3 Felder hat (Spalten gibt´s nicht) - Batch1 bis 3.
Wie viele Zeilen (Datensätze) die Tabelle hat ist unerheblich wenn man alle verarbeiten will.
Das sieht dann so aus:
.....
......
rst.MoveFirst
Do Until rst.EOF
rst2.addnew
rst2!Feld1 = rst!Batch1
rst2!Feld2 = rst!Batch2
rst2!Feld3 = rst!Batch3
.........
.....usw....
rst2.update
rst.movenext
loop
........
.......usw....
Gruß
Teddy
Antwort 4 von erik
Hallo Ralf,
dein Code liest nicht alle drei Batches, sondern nur Batch1 (... = rst!Batch1)
Aus deinem Code kann man kaum erkennen, was du eigentlich vorhast. Könntest du nochmal in reinen Worten erklären, was du bewirken willst? Es sieht so aus, als ob du die Daten ähnlich wie in Excel transponieren willst, d.h. aus Zeilen werden Spalten und umgekehrt.
Ein Paar Zeilen mit einem Beispiel wären vielleicht nicht schlecht.
dein Code liest nicht alle drei Batches, sondern nur Batch1 (... = rst!Batch1)
Aus deinem Code kann man kaum erkennen, was du eigentlich vorhast. Könntest du nochmal in reinen Worten erklären, was du bewirken willst? Es sieht so aus, als ob du die Daten ähnlich wie in Excel transponieren willst, d.h. aus Zeilen werden Spalten und umgekehrt.
Ein Paar Zeilen mit einem Beispiel wären vielleicht nicht schlecht.
Antwort 5 von Teddy7
Ach ja - und Dir (und allen Mitlesenden) natürlich auch noch ein gutes neues Jahr mit viel Gesundheit und Zufriedenheit.
Teddy
Teddy
Antwort 6 von RalfH
OK ich versuche mal die Sache zu erklären.
Ich Importiere eine DBase Tabelle. Diese beinhaltet 3 Batches mit jeweils 43 Datensätze. Es müssen (!) 43 Datensätze sein.
Diese lese ich nun mit einem Recordset aus, und muss aber noch einige Variable dazu tun( Datum,Uhrzeit,usw) dies mache ich über Input.
Jetzt möchte ich gerne, das neue Recordset in einer neuen Tabelle speichern, weil sich die Ursprungs -Tabelle, jeden Tag erneuert.
@erik
Ja genau richtig
Nur ist eben das Problem, das ich bei Schleifen Konstrukte nicht so meine Sternstunde habe , und ich immer nur Batch1 reinbekomme :(
Gruß Ralf
Ich Importiere eine DBase Tabelle. Diese beinhaltet 3 Batches mit jeweils 43 Datensätze. Es müssen (!) 43 Datensätze sein.
Diese lese ich nun mit einem Recordset aus, und muss aber noch einige Variable dazu tun( Datum,Uhrzeit,usw) dies mache ich über Input.
Jetzt möchte ich gerne, das neue Recordset in einer neuen Tabelle speichern, weil sich die Ursprungs -Tabelle, jeden Tag erneuert.
@erik
Zitat:
Es sieht so aus, als ob du die Daten ähnlich wie in Excel transponieren willst, d.h. aus Zeilen werden Spalten und umgekehrt.
Es sieht so aus, als ob du die Daten ähnlich wie in Excel transponieren willst, d.h. aus Zeilen werden Spalten und umgekehrt.
Ja genau richtig
Nur ist eben das Problem, das ich bei Schleifen Konstrukte nicht so meine Sternstunde habe , und ich immer nur Batch1 reinbekomme :(
Gruß Ralf
Antwort 7 von Teddy7
Heißt das Du hast in der Quelle 3 x 43 Datensätze mit jeweils einem Wert(Feld) ??
Und die sollen in einer neuen Tabelle zu 3 Datensätzen a 43 Felder(Werte) werden ?
Und die sollen in einer neuen Tabelle zu 3 Datensätzen a 43 Felder(Werte) werden ?
Antwort 8 von RalfH
Korrekt!
Antwort 9 von Teddy7
Wenn man nur den einen Wert hat, dann kann man also auch nicht an den Daten sehen, welche 43 Werte zusammengehören.
Bleibt also nur zählen.
--Soweit richtig ? --
Das sähe dann so aus:
dim i1 as integer
dim i2 as integer
.....
......
rst.MoveFirst
i1 = 0
Do Until rst.EOF
i1 = i1 + 1
"Wenn die 43 Wertfelder hintereinander liegen kann
" man sie über den Index leichter ansprechen
" Achtung - das erste Feld in Datensatz hat den Index 0
I2 = I1 + 5 " Beispiel !!!! muß angepasst werden !
if i1 = 1 then
rst2.addnew
rst2.Fields(i2) = rst!Wert
else
rst2.Fields(i2) = rst!Wert
endif
if i1 = 43 then
rst2!Zusatzfeld1 = "wasauchimmer"
.....usw....
rst2.update
i1 = 0
clear rst2
endif
rst.movenext
loop
........
.......usw....
Bleibt also nur zählen.
--Soweit richtig ? --
Das sähe dann so aus:
dim i1 as integer
dim i2 as integer
.....
......
rst.MoveFirst
i1 = 0
Do Until rst.EOF
i1 = i1 + 1
"Wenn die 43 Wertfelder hintereinander liegen kann
" man sie über den Index leichter ansprechen
" Achtung - das erste Feld in Datensatz hat den Index 0
I2 = I1 + 5 " Beispiel !!!! muß angepasst werden !
if i1 = 1 then
rst2.addnew
rst2.Fields(i2) = rst!Wert
else
rst2.Fields(i2) = rst!Wert
endif
if i1 = 43 then
rst2!Zusatzfeld1 = "wasauchimmer"
.....usw....
rst2.update
i1 = 0
clear rst2
endif
rst.movenext
loop
........
.......usw....
Antwort 10 von RalfH
@ Teddy7
Kannste mir das mit:
genauer erklären, bitte ?
Kannste mir das mit:
Zitat:
I2 = I1 + 5 " Beispiel !!!! muß angepasst werden !
I2 = I1 + 5 " Beispiel !!!! muß angepasst werden !
genauer erklären, bitte ?
Antwort 11 von Teddy7
I2 soll ja der Index des zu füllenden feldes in rst2 sein.
Das ist natürlich nur dann sinnvoll, wenn Du in Deiner Tabellendefinition die Wertfelder hintereinander liegen hast.
Wenn dem so ist, dann zählst Du die Felder durch.
Wenn z.B. das erste Wertfeld als 5. Feld in der Tabelle definiert ist, dann kannst Du es mit
rst2.fields(4) ansprechen.
Wenn z.B. das erste Wertfeld als 8. Feld in der Tabelle definiert ist, dann kannst Du es mit
rst2.fields(7) ansprechen.
Das ganze soll nur ein mühsames
if i1 = 1 then
rst2!Wert01 = rst.Wert
elseif i1 = 2 then
rst2!Wert02 = rst.Wert
...usw...
ersetzen.
Das ist natürlich nur dann sinnvoll, wenn Du in Deiner Tabellendefinition die Wertfelder hintereinander liegen hast.
Wenn dem so ist, dann zählst Du die Felder durch.
Wenn z.B. das erste Wertfeld als 5. Feld in der Tabelle definiert ist, dann kannst Du es mit
rst2.fields(4) ansprechen.
Wenn z.B. das erste Wertfeld als 8. Feld in der Tabelle definiert ist, dann kannst Du es mit
rst2.fields(7) ansprechen.
Das ganze soll nur ein mühsames
if i1 = 1 then
rst2!Wert01 = rst.Wert
elseif i1 = 2 then
rst2!Wert02 = rst.Wert
...usw...
ersetzen.
Antwort 12 von RalfH
Oha,
das werde ich jetzt mal umsetzen.
Hab vielen Dank Teddy7
das werde ich jetzt mal umsetzen.
Hab vielen Dank Teddy7
Antwort 13 von erik
Hallo ihr beiden!
@Teddy
Vielen Dank, das wünsche ich dir und allen anderen Lesern ebenso. :-)
Ich habe zwischenzeitlich auch einen Lösungsansatz gebastelt, der auf einer Anfügeabfrage basiert. Dazu muss die folgende Abfrage unter dem Namen "qryFahrzeugAnfuegen" gespeichert und der nachstehende Code benutzt werden.
Möglicherweise müssen in der Parameterabfrage noch die Datentypen entsprechend den Feldern in der Tabelle angepasst werden. Das dürfte aber dann alles sein, was zu tun wäre.
Gruß
erik
@Teddy
Vielen Dank, das wünsche ich dir und allen anderen Lesern ebenso. :-)
Ich habe zwischenzeitlich auch einen Lösungsansatz gebastelt, der auf einer Anfügeabfrage basiert. Dazu muss die folgende Abfrage unter dem Namen "qryFahrzeugAnfuegen" gespeichert und der nachstehende Code benutzt werden.
PARAMETERS [Eingabe am] DATETIME, Uhrzeit DATETIME, Bereich LONG, Linie LONG, ProdNr TEXT(255), Radstand TEXT(255), Farbcode TEXT(255), Batchwert TEXT(255)
INSERT INTO TabFahrzeuge ([Eingabe am], Uhrzeit, Bereich, Linie, ProdNr, Radstand, Farbcode, mp1, mp2, mp3, mp4, mp5, mp6, mp7, mp8, mp9, mp10, mp11, mp12, mp13, mp14, mp15, mp16, mp17, mp18, mp19, mp20, mp21, mp22, mp23, mp24, mp25, mp26, mp27, mp28, mp29, mp30, mp31, mp32, mp33, mp34, mp35, mp36, mp37, mp38, mp39, mp40, mp41, mp42, mp43)
SELECT [Eingabe am], Uhrzeit, Bereich, Linie, ProdNr, Radstand, Farbcode, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert;Public Sub FahrzeugeAnfuegen()
Dim db As Database
Dim rstQuelle As Recordset
Dim qdfZiel As QueryDef
Dim lngCount As Long
Set db = CurrentDb
Set rstQuelle = db.OpenRecordset("Neue Tabelle", dbOpenDynaset)
Set qdfZiel = db.QueryDefs("qryFahrzeugAnfuegen")
With qdfZiel
.Parameters("Eingabe am").Value = EingDatum
.Parameters("Uhrzeit").Value = Uhrz
.Parameters("Bereich").Value = o
.Parameters("Linie").Value = n
.Parameters("ProdNr").Value = a
.Parameters("Radstand").Value = m
.Parameters("Farbcode").Value = z
End With
With rstQuelle
Do Until .EOF
For lngCount = 1 To 3
qdfZiel.Parameters("Batchwert").Value = .Fields("Batch" & lngCount)
qdfZiel.Execute
Next
.MoveNext
Loop
End With
End SubMöglicherweise müssen in der Parameterabfrage noch die Datentypen entsprechend den Feldern in der Tabelle angepasst werden. Das dürfte aber dann alles sein, was zu tun wäre.
Gruß
erik
Antwort 14 von RalfH
@ erik
wow da haste dich ja mächtig ins Zeug gelegt, Respekt !
Leider bekomme ich bei der Abfrage eine Fehler Meldung:
Die Hilde sagt:
Markiert wird Insert Into
Gruß Ralf
wow da haste dich ja mächtig ins Zeug gelegt, Respekt !
Leider bekomme ich bei der Abfrage eine Fehler Meldung:
Zitat:
Syntaxfehler in Parameter Klausel
Syntaxfehler in Parameter Klausel
Die Hilde sagt:
Zitat:
Syntaxfehler im PARAMETER-Abschnitt. (Fehler 3139)
Sie haben eine SQL-Anweisung eingegeben, die eine ungültige PARAMETERS-Deklaration enthält.
Mögliche Ursachen:
Ein reserviertes Wort oder ein Argumentname wurde falsch eingegeben bzw. fehlt.
Die Zeichensetzung ist nicht korrekt.
Syntaxfehler im PARAMETER-Abschnitt. (Fehler 3139)
Sie haben eine SQL-Anweisung eingegeben, die eine ungültige PARAMETERS-Deklaration enthält.
Mögliche Ursachen:
Ein reserviertes Wort oder ein Argumentname wurde falsch eingegeben bzw. fehlt.
Die Zeichensetzung ist nicht korrekt.
Markiert wird Insert Into
Gruß Ralf
Antwort 15 von erik
Au ja, ich habe das Semikolon vergessen am Ende der PARAMETERS-Zeile. Probiere es mal so:
PARAMETERS [Eingabe am] DATETIME, Uhrzeit DATETIME, Bereich LONG, Linie LONG, ProdNr TEXT(255), Radstand TEXT(255), Farbcode TEXT(255), Batchwert TEXT(255);
INSERT INTO TabFahrzeuge ([Eingabe am], Uhrzeit, Bereich, Linie, ProdNr, Radstand, Farbcode, mp1, mp2, mp3, mp4, mp5, mp6, mp7, mp8, mp9, mp10, mp11, mp12, mp13, mp14, mp15, mp16, mp17, mp18, mp19, mp20, mp21, mp22, mp23, mp24, mp25, mp26, mp27, mp28, mp29, mp30, mp31, mp32, mp33, mp34, mp35, mp36, mp37, mp38, mp39, mp40, mp41, mp42, mp43)
SELECT [Eingabe am], Uhrzeit, Bereich, Linie, ProdNr, Radstand, Farbcode, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert, Batchwert;Antwort 16 von RalfH
Guten Morgen,
@ erik
Habe das mal ausprobiert, doch ich bekomme nur vom ersten Batch die Werte und das 3 mal.
Ich möchte aber gerne Batch1 bis Batch3 jeweils einmal haben
Gruß Ralf
@ erik
Habe das mal ausprobiert, doch ich bekomme nur vom ersten Batch die Werte und das 3 mal.
Ich möchte aber gerne Batch1 bis Batch3 jeweils einmal haben
Gruß Ralf
Antwort 17 von erik
Hallo Ralf,
du hast doch in der Importtabelle drei Spalten namens Batch1, Batch2, Batch3. Die werden über die folgende Zeile nacheinander abgeklappert:
Bist du sicher, dass in den Spalten der Tabelle wirklich unterschiedliche Werte enthalten sind? Bei mir funktioniert es immerhin.
du hast doch in der Importtabelle drei Spalten namens Batch1, Batch2, Batch3. Die werden über die folgende Zeile nacheinander abgeklappert:
qdfZiel.Parameters("Batchwert").Value = .Fields("Batch" & lngCount)Bist du sicher, dass in den Spalten der Tabelle wirklich unterschiedliche Werte enthalten sind? Bei mir funktioniert es immerhin.
Antwort 18 von RalfH
Hallo,
@erik
Ich hatte gestern TüV Termin und meine alte Möhre hat es nochmal geschafft, daher melde ich mich jetzt erst.
Also, Deine Abfrage funktioniert soweit, das er mir die 3 Batches 3 mal einliest. 3*43=129 Datensätze.
Ich brauche aber 3 Datensätze mit jeweils 43 Felder.
Dabei fragt er aber nur einmal nach den Daten.
Ein Batch repräsentiert allerdings ein Objekt mit Messwerten von 43 Messpunkten.
Nach den 43 Messpunkten, kommt ein neues Objekt, dessen Individuellen Daten erneut abgefragt werden müssten + die 43 Messwerte.
Ich bitte um Rücksicht, weil ich mich bei Schleifen (warum auch immer?) sehr schwer tue. Und bedanke mich bei Euch allen, für die Gedult mit mir.
Gruß Ralf
@erik
Ich hatte gestern TüV Termin und meine alte Möhre hat es nochmal geschafft, daher melde ich mich jetzt erst.
Also, Deine Abfrage funktioniert soweit, das er mir die 3 Batches 3 mal einliest. 3*43=129 Datensätze.
Ich brauche aber 3 Datensätze mit jeweils 43 Felder.
Dabei fragt er aber nur einmal nach den Daten.
Ein Batch repräsentiert allerdings ein Objekt mit Messwerten von 43 Messpunkten.
Nach den 43 Messpunkten, kommt ein neues Objekt, dessen Individuellen Daten erneut abgefragt werden müssten + die 43 Messwerte.
Ich bitte um Rücksicht, weil ich mich bei Schleifen (warum auch immer?) sehr schwer tue. Und bedanke mich bei Euch allen, für die Gedult mit mir.
Gruß Ralf
Antwort 19 von erik
Guten Morgen, Ralf!
Ja, jetzt fällt es mir wie Schuppen von den Augen, was du bezweckst. Die entsprechenden Anpassungen habe ich zwar schon im Kopf, aber mir fehlt momentan die Gelegenheit, das umzusetzen. Bitte gedulde dich also bis zur Mittagspause. :-)
Nur nochmal, um ganz sicher zu sein: Du hast eine Quelltabelle mit 43 Zeilen, in denen VERSCHIEDENE Messwerte stehen, die sollen in 43 Spalten NEBENEINANDER gestellt werden. Ich ging bisher davon aus, dass das immer der gleiche Messwert wäre, und habe mich schon gefragt, was das denn soll. *g*
Gruss
erik
Ja, jetzt fällt es mir wie Schuppen von den Augen, was du bezweckst. Die entsprechenden Anpassungen habe ich zwar schon im Kopf, aber mir fehlt momentan die Gelegenheit, das umzusetzen. Bitte gedulde dich also bis zur Mittagspause. :-)
Nur nochmal, um ganz sicher zu sein: Du hast eine Quelltabelle mit 43 Zeilen, in denen VERSCHIEDENE Messwerte stehen, die sollen in 43 Spalten NEBENEINANDER gestellt werden. Ich ging bisher davon aus, dass das immer der gleiche Messwert wäre, und habe mich schon gefragt, was das denn soll. *g*
Gruss
erik
Antwort 20 von RalfH
Hallo erik,
BINGO !!!
Zitat:
Nur nochmal, um ganz sicher zu sein: Du hast eine Quelltabelle mit 43 Zeilen, in denen VERSCHIEDENE Messwerte stehen, die sollen in 43 Spalten NEBENEINANDER gestellt werden. I
Nur nochmal, um ganz sicher zu sein: Du hast eine Quelltabelle mit 43 Zeilen, in denen VERSCHIEDENE Messwerte stehen, die sollen in 43 Spalten NEBENEINANDER gestellt werden. I
BINGO !!!
Antwort 21 von erik
Hallo Ralf!
Jetzt müsste ich genau das haben, was du brauchst. Bitte aktualisiere entsprechend die alte Abfrage und Code.
Gruß
erik
Jetzt müsste ich genau das haben, was du brauchst. Bitte aktualisiere entsprechend die alte Abfrage und Code.
PARAMETERS [Eingabe am] DateTime, Uhrzeit DateTime, Bereich Long, Linie Long, ProdNr Text ( 255 ), Radstand Text ( 255 ), Farbcode Text ( 255 ), Wert1 Text ( 255 ), Wert2 Text ( 255 ), Wert3 Text ( 255 ), Wert4 Text ( 255 ), Wert5 Text ( 255 ), Wert6 Text ( 255 ), Wert7 Text ( 255 ), Wert8 Text ( 255 ), Wert9 Text ( 255 ), Wert10 Text ( 255 ), Wert11 Text ( 255 ), Wert12 Text ( 255 ), Wert13 Text ( 255 ), Wert14 Text ( 255 ), Wert15 Text ( 255 ), Wert16 Text ( 255 ), Wert17 Text ( 255 ), Wert18 Text ( 255 ), Wert19 Text ( 255 ), Wert20 Text ( 255 ), Wert21 Text ( 255 ), Wert22 Text ( 255 ), Wert23 Text ( 255 ), Wert24 Text ( 255 ), Wert25 Text ( 255 ), Wert26 Text ( 255 ), Wert27 Text ( 255 ), Wert28 Text ( 255 ), Wert29 Text ( 255 ), Wert30 Text ( 255 ), Wert31 Text ( 255 ), Wert32 Text ( 255 ), Wert33 Text ( 255 ), Wert34 Text ( 255 ), Wert35 Text ( 255 ), Wert36 Text ( 255 ), Wert37 Text ( 255 ), Wert38 Text ( 255 ), Wert39 Text ( 255 ), Wert40 Text ( 255 ), Wert41 Text ( 255 ), Wert42 Text ( 255 ), Wert43 Text ( 255 );
INSERT INTO TabFahrzeuge ( [Eingabe am], Uhrzeit, Bereich, Linie, ProdNr, Radstand, Farbcode, mp1, mp2, mp3, mp4, mp5, mp6, mp7, mp8, mp9, mp10, mp11, mp12, mp13, mp14, mp15, mp16, mp17, mp18, mp19, mp20, mp21, mp22, mp23, mp24, mp25, mp26, mp27, mp28, mp29, mp30, mp31, mp32, mp33, mp34, mp35, mp36, mp37, mp38, mp39, mp40, mp41, mp42, mp43 )
SELECT [Eingabe am], Uhrzeit, Bereich, Linie, ProdNr, Radstand, Farbcode, Wert1, Wert2, Wert3, Wert4, Wert5, Wert6, Wert7, Wert8, Wert9, Wert10, Wert11, Wert12, Wert13, Wert14, Wert15, Wert16, Wert17, Wert18, Wert19, Wert20, Wert21, Wert22, Wert23, Wert24, Wert25, Wert26, Wert27, Wert28, Wert29, Wert30, Wert31, Wert32, Wert33, Wert34, Wert35, Wert36, Wert37, Wert38, Wert39, Wert40, Wert41, Wert42, Wert43;Public Sub FahrzeugeAnfuegen()
Dim db As Database
Dim rstQuelle As Recordset
Dim qdfZiel As QueryDef
Dim lngBatchCount As Long
Dim lngValueCount As Long
Set db = CurrentDb
Set rstQuelle = db.OpenRecordset("Batches", dbOpenDynaset)
Set qdfZiel = db.QueryDefs("qryFahrzeugAnfuegen")
With qdfZiel
.Parameters("Eingabe am").Value = Date
.Parameters("Uhrzeit").Value = Now
.Parameters("Bereich").Value = 1
.Parameters("Linie").Value = 2
.Parameters("ProdNr").Value = "3"
.Parameters("Radstand").Value = "4"
.Parameters("Farbcode").Value = "5"
End With
For lngBatchCount = 1 To 3
With rstQuelle
.MoveFirst
lngValueCount = 1
Do Until .EOF
qdfZiel.Parameters("Wert" & lngValueCount).Value = .Fields("Batch" & lngBatchCount)
.MoveNext
lngValueCount = lngValueCount + 1
Loop
qdfZiel.Execute
End With
Next
End SubGruß
erik
Antwort 22 von erik
Hallo Ralf!
Jetzt müsste ich genau das haben, was du brauchst. Bitte aktualisiere entsprechend deine alte Abfrage und Code.
Gruß
erik
Jetzt müsste ich genau das haben, was du brauchst. Bitte aktualisiere entsprechend deine alte Abfrage und Code.
PARAMETERS [Eingabe am] DateTime, Uhrzeit DateTime, Bereich Long, Linie Long, ProdNr Text ( 255 ), Radstand Text ( 255 ), Farbcode Text ( 255 ), Wert1 Text ( 255 ), Wert2 Text ( 255 ), Wert3 Text ( 255 ), Wert4 Text ( 255 ), Wert5 Text ( 255 ), Wert6 Text ( 255 ), Wert7 Text ( 255 ), Wert8 Text ( 255 ), Wert9 Text ( 255 ), Wert10 Text ( 255 ), Wert11 Text ( 255 ), Wert12 Text ( 255 ), Wert13 Text ( 255 ), Wert14 Text ( 255 ), Wert15 Text ( 255 ), Wert16 Text ( 255 ), Wert17 Text ( 255 ), Wert18 Text ( 255 ), Wert19 Text ( 255 ), Wert20 Text ( 255 ), Wert21 Text ( 255 ), Wert22 Text ( 255 ), Wert23 Text ( 255 ), Wert24 Text ( 255 ), Wert25 Text ( 255 ), Wert26 Text ( 255 ), Wert27 Text ( 255 ), Wert28 Text ( 255 ), Wert29 Text ( 255 ), Wert30 Text ( 255 ), Wert31 Text ( 255 ), Wert32 Text ( 255 ), Wert33 Text ( 255 ), Wert34 Text ( 255 ), Wert35 Text ( 255 ), Wert36 Text ( 255 ), Wert37 Text ( 255 ), Wert38 Text ( 255 ), Wert39 Text ( 255 ), Wert40 Text ( 255 ), Wert41 Text ( 255 ), Wert42 Text ( 255 ), Wert43 Text ( 255 );
INSERT INTO TabFahrzeuge ( [Eingabe am], Uhrzeit, Bereich, Linie, ProdNr, Radstand, Farbcode, mp1, mp2, mp3, mp4, mp5, mp6, mp7, mp8, mp9, mp10, mp11, mp12, mp13, mp14, mp15, mp16, mp17, mp18, mp19, mp20, mp21, mp22, mp23, mp24, mp25, mp26, mp27, mp28, mp29, mp30, mp31, mp32, mp33, mp34, mp35, mp36, mp37, mp38, mp39, mp40, mp41, mp42, mp43 )
SELECT [Eingabe am], Uhrzeit, Bereich, Linie, ProdNr, Radstand, Farbcode, Wert1, Wert2, Wert3, Wert4, Wert5, Wert6, Wert7, Wert8, Wert9, Wert10, Wert11, Wert12, Wert13, Wert14, Wert15, Wert16, Wert17, Wert18, Wert19, Wert20, Wert21, Wert22, Wert23, Wert24, Wert25, Wert26, Wert27, Wert28, Wert29, Wert30, Wert31, Wert32, Wert33, Wert34, Wert35, Wert36, Wert37, Wert38, Wert39, Wert40, Wert41, Wert42, Wert43;Public Sub FahrzeugeAnfuegen()
Dim db As Database
Dim rstQuelle As Recordset
Dim qdfZiel As QueryDef
Dim lngBatchCount As Long
Dim lngValueCount As Long
Set db = CurrentDb
Set rstQuelle = db.OpenRecordset("Batches", dbOpenDynaset)
Set qdfZiel = db.QueryDefs("qryFahrzeugAnfuegen")
With qdfZiel
.Parameters("Eingabe am").Value = Date
.Parameters("Uhrzeit").Value = Now
.Parameters("Bereich").Value = 1
.Parameters("Linie").Value = 2
.Parameters("ProdNr").Value = "3"
.Parameters("Radstand").Value = "4"
.Parameters("Farbcode").Value = "5"
End With
For lngBatchCount = 1 To 3
With rstQuelle
.MoveFirst
lngValueCount = 1
Do Until .EOF
qdfZiel.Parameters("Wert" & lngValueCount).Value = .Fields("Batch" & lngBatchCount)
.MoveNext
lngValueCount = lngValueCount + 1
Loop
qdfZiel.Execute
End With
Next
End SubGruß
erik
Antwort 23 von erik
Ups, einmal zuviel angefügt. :-)
Antwort 24 von RalfH
Guten Morgen ,
@ erik,
Nach ein paar kleinen individuellen Anpassungen klappt es so wie ich mir das gewünscht habe :)
Ich kann nur DANKESCHÖN sagen.
Falls der Weg mal nach Düsseldorf führt, bist Du und Teddy7 auf ein leckeres Alt Bier eingeladen.
Gruß Ralf
@ erik,
Nach ein paar kleinen individuellen Anpassungen klappt es so wie ich mir das gewünscht habe :)
Ich kann nur DANKESCHÖN sagen.
Falls der Weg mal nach Düsseldorf führt, bist Du und Teddy7 auf ein leckeres Alt Bier eingeladen.
Gruß Ralf
Antwort 25 von erik
*lach* Sollte ich tatsächlich mal nach Düsseldorf kommen, dann nehme ich das Angebot gerne an. Die Wahrscheinlichkeit liegt aber eher im unteren Promillebereich, da ich aus Baden-Württemberg komme. :-)
Vermutlich hast du die ersten Parameterwerte wieder mit deinen eigenen Variablen versorgt? An die hatte ich nicht mehr gedacht, nachdem der Code in meiner Umgebung gelaufen ist.
Vermutlich hast du die ersten Parameterwerte wieder mit deinen eigenen Variablen versorgt? An die hatte ich nicht mehr gedacht, nachdem der Code in meiner Umgebung gelaufen ist.
Antwort 26 von RalfH
Hallo Erik,
Ja, genau.
Würde mich sehr freuen, wenn das mal klappen würde, alter Schwabe ;-)
Gruß Ralf
Zitat:
Vermutlich hast du die ersten Parameterwerte wieder mit deinen eigenen Variablen versorgt?
Vermutlich hast du die ersten Parameterwerte wieder mit deinen eigenen Variablen versorgt?
Ja, genau.
Würde mich sehr freuen, wenn das mal klappen würde, alter Schwabe ;-)
Gruß Ralf
Antwort 27 von RalfH
Guten Morgen,
der Code und die Abfrage laufen genauso wie ich das haben wollte, allerdings müsste ich da noch eine Fehlerroutine haben.
Wenn die Parameter ungenau sind, d.h. zuviele oder zu wenig Parameter, bricht Access ab, mit ner Fehlermeldung, bei der Runtimeversion ohne Fehlernummer.
Wie kann ich einen Überlauf bzw. zuwenig Parameter abfangen ?
Hier mal der Code :
Gruß Ralf
der Code und die Abfrage laufen genauso wie ich das haben wollte, allerdings müsste ich da noch eine Fehlerroutine haben.
Wenn die Parameter ungenau sind, d.h. zuviele oder zu wenig Parameter, bricht Access ab, mit ner Fehlermeldung, bei der Runtimeversion ohne Fehlernummer.
Wie kann ich einen Überlauf bzw. zuwenig Parameter abfangen ?
Hier mal der Code :
Function FahrzeugeAnfuegen()
Dim db As Database
Dim rstQuelle As Recordset
Dim qdfZiel As QueryDef
Dim lngBatchCount As Long
Dim lngValueCount As Long
Dim a, b, z As String
Dim m, n, o, p As Long
Dim I, j, ll As Long
Dim Anzahlfahrzeuge As Long
Dim AnzDS As Long
Set db = CurrentDb
Set rstQuelle = db.OpenRecordset("Neue Tabelle", dbOpenDynaset)
Set qdfZiel = db.QueryDefs("qryFahrzeugAnfuegen")
Anzahlfahrzeuge = InputBox("Wieviele Fahrzeuge sollen eingelesen werden )
For lngBatchCount = 1 To Anzahlfahrzeuge
a = InputBox("Neues Fahrzeug erkannt, bitte geben Sie die Produktionsnummer ein:", ")
m = InputBox("Bitte geben Sie ....")
n = InputBox("Bitte geben Sie die Linie als Zahl ein z.B. Linie 3 = 3 Eingeben.")
o = InputBox("Bitte geben Sie den Bereich ein: ")
z = InputBox("Bitte geben Sie den Farbcode ein: ( Falls keiner Vorhanden, bitte 0 eingeben"
rstQuelle.MoveLast
AnzDS = rstQuelle.RecordCount
With qdfZiel
.Parameters("Eingabe am").Value = Date
.Parameters("Uhrzeit").Value = Now
.Parameters("Bereich").Value = o
.Parameters("Linie").Value = n
.Parameters("ProdNr").Value = a
.Parameters("Radstand").Value = m
.Parameters("Farbcode").Value = z
End With
´ For lngBatchCount = 1 To 3
With rstQuelle
.MoveFirst
lngValueCount = 1
Do Until .EOF
qdfZiel.Parameters("Wert" & lngValueCount).Value = .Fields("Batch" & lngBatchCount)
.MoveNext
lngValueCount = lngValueCount + 1
Loop
qdfZiel.Execute
End With
Next
DoCmd.Close acForm, "Fahrzeug"
DoCmd.OpenForm "Fahrzeug", acNormal, , , acFormReadOnly
End Function
Gruß Ralf
Antwort 28 von erik
Guten Morgen Ralph,
wenn es zuwenige Parameter in der Quelltabelle gibt, dann müsste die Abfrage mit Null-Werten an den entsprechenden Stellen gefüllt werden, das wäre soweit kein Problem.
Aber wie kann deine Tabelle zuviele Werte liefern? Insbesondere dann, wenn die Zieltabelle eine fest vordefinierte Anzahl von Spalten hat, um diese Werte aufzunehmen? Und was mit den übrigen Werten geschehen? Vermutlich muss nach Erreichen der 43 Spalten der Schleifendurchlauf abgebrochen werden und damit die restlichen Werte ignoriert werden?
Gruß
erik
wenn es zuwenige Parameter in der Quelltabelle gibt, dann müsste die Abfrage mit Null-Werten an den entsprechenden Stellen gefüllt werden, das wäre soweit kein Problem.
Aber wie kann deine Tabelle zuviele Werte liefern? Insbesondere dann, wenn die Zieltabelle eine fest vordefinierte Anzahl von Spalten hat, um diese Werte aufzunehmen? Und was mit den übrigen Werten geschehen? Vermutlich muss nach Erreichen der 43 Spalten der Schleifendurchlauf abgebrochen werden und damit die restlichen Werte ignoriert werden?
Gruß
erik
Antwort 29 von RalfH
Hallo erik,
Du hast in beiden Punkten recht.
Die Tabelle die Eingelesen wird, kann entweder zuviele oder zuwenig Werte enthalten.
Gruß Ralf
Du hast in beiden Punkten recht.
Die Tabelle die Eingelesen wird, kann entweder zuviele oder zuwenig Werte enthalten.
Gruß Ralf
Antwort 30 von erik
Hallo Ralph,
ich habe die Prozedur an die aktuellen Gegebenheiten angepasst. Fehlende Parameter werden mit NULL gefüttert und übrig bleibende Parameter werden ignoriert. Damit müsste es nun perfekt laufen. Deine eigenen Anpassungen müssten hier ebenfalls komplett integriert sein.
Die letzten zwei Zeilen sehen so aus, als ob du das Formular schließt und öffnest, nur um es zu aktualisieren. Wenn dem so ist, dann müsste ein
Viele Grüße
erik
ich habe die Prozedur an die aktuellen Gegebenheiten angepasst. Fehlende Parameter werden mit NULL gefüttert und übrig bleibende Parameter werden ignoriert. Damit müsste es nun perfekt laufen. Deine eigenen Anpassungen müssten hier ebenfalls komplett integriert sein.
Function FahrzeugeAnfuegen()
Dim db As Database
Dim rstQuelle As Recordset
Dim qdfZiel As QueryDef
Dim lngBatchCount As Long
Dim lngMaxRows As Long
Dim lngCurrentRows As Long
Dim a, b, z As String
Dim m, n, o, p As Long
Dim I, j, ll As Long
Dim Anzahlfahrzeuge As Long
Dim AnzDS As Long
lngMaxRows = 43
Set db = CurrentDb
Set rstQuelle = db.OpenRecordset("Neue Tabelle", dbOpenDynaset)
Set qdfZiel = db.QueryDefs("qryFahrzeugAnfuegen")
Anzahlfahrzeuge = InputBox("Wieviele Fahrzeuge sollen eingelesen werden )
For lngBatchCount = 1 To Anzahlfahrzeuge
a = InputBox("Neues Fahrzeug erkannt, bitte geben Sie die Produktionsnummer ein:", ")
m = InputBox("Bitte geben Sie ....")
n = InputBox("Bitte geben Sie die Linie als Zahl ein z.B. Linie 3 = 3 Eingeben.")
o = InputBox("Bitte geben Sie den Bereich ein: ")
z = InputBox("Bitte geben Sie den Farbcode ein: ( Falls keiner Vorhanden, bitte 0 eingeben"
rstQuelle.MoveLast
AnzDS = rstQuelle.RecordCount
With qdfZiel
.Parameters("Eingabe am").Value = Date
.Parameters("Uhrzeit").Value = Now
.Parameters("Bereich").Value = o
.Parameters("Linie").Value = n
.Parameters("ProdNr").Value = a
.Parameters("Radstand").Value = m
.Parameters("Farbcode").Value = z
End With
For lngBatchCount = 1 To 3
With rstQuelle
.MoveFirst
lngCurrentRow = 1
Do Until lngCurrentRow > lngMaxRows
If .EOF = False Then
qdfZiel.Parameters("Wert" & lngValueCount).Value = .Fields("Batch" & lngBatchCount)
.MoveNext
Else
qdfZiel.Parameters("Wert" & lngCurrentRow).Value = Null
End If
lngCurrentRow = lngCurrentRow+ 1
Loop
qdfZiel.Execute
End With
Next
Next
DoCmd.Close acForm, "Fahrzeug"
DoCmd.OpenForm "Fahrzeug", acNormal, , , acFormReadOnly
End FunctionDie letzten zwei Zeilen sehen so aus, als ob du das Formular schließt und öffnest, nur um es zu aktualisieren. Wenn dem so ist, dann müsste ein
Forms("Fahrzeug").Requery eigentlich reichen. Damit rufst du die Datenherkunft erneut ab, ohne das Formular schließen zu müssen.Viele Grüße
erik
Antwort 31 von RalfH
Guten Morgen erik,
Das sieht ja ganz gut aus, werde ich im laufe des Tages mal Testen- ich gebe dann Feddback.
Bis dahinn, einen richtig netten Tag noch.
Ralf
Das sieht ja ganz gut aus, werde ich im laufe des Tages mal Testen- ich gebe dann Feddback.
Bis dahinn, einen richtig netten Tag noch.
Ralf
Antwort 32 von RalfH
Hallo,
Also hier mal mein Feedback,
Bei :
Also hier mal mein Feedback,
Bei :
qdfZiel.Parameters("Wert" & lngValueCount).Value = .Fields("Batch" & lngBatchCount), sagt Access "Element in dieser Auflistung nicht gefunden"Antwort 33 von erik
Sorry, mal wieder ein Schreibfehler. Tausche "lngValueCount" durch "lngCurrentRow" aus, dann funktioniert es. :-/
Ich hatte die Variable namentlich ersetzt, weil sie mir nicht mehr zugesagt hatte.
Ich hatte die Variable namentlich ersetzt, weil sie mir nicht mehr zugesagt hatte.
Antwort 34 von RalfH
Guten Morgen,
Das läuft super !!!!!!!!!
Herzlichen Dank erik.
Gruß Ralf
Das läuft super !!!!!!!!!
Herzlichen Dank erik.
Gruß Ralf
Antwort 35 von erik
*freu* :-D

