Zum Inhalt springen

UPDATE-Funktion funtioniert nicht!


Empfohlene Beiträge

Geschrieben

Hallo Forum,

Ich habe hier VBA-Code in Access 97

Dort wo steht "'Ab diesem . geht N I C H T S mehr!", ab dort geht auch wirklich nichts mehr! Es wird weder eine Fehlermeldung ausgegeben, noch wird irgendein Datensatz in der Tabelle aktualisiert!

Hilfe!


Option Compare Database

Option Explicit



Private Sub KPProduktmerkmal_Click()


Dim X As Recordset

'Dim booNext As Boolean

'Dim intCount As Integer

Dim SC, CC, RPZGrenz, B, A, E, RPZ, ActiveID, query As String

Dim fld As Field

Dim ii As Integer


Set X = CurrentDb.OpenRecordset("Grenzwerte", dbOpenDynaset)

SC = X!SC

CC = X!CC

RPZGrenz = X!RPZGrenz

X.Close

Set X = Nothing



Set X = CurrentDb.OpenRecordset("Fehler", dbOpenDynaset)



X.MoveLast

X.MoveFirst

For ii = 1 To X.RecordCount

For Each fld In X.Fields

If fld.Name = "ID" Then

If fld.Value = [IDx] Then

'MsgBox "" & fld.Name & ": " & fld.Value, vbOKOnly

ActiveID = X!ID

B = X![B ist]

A = X![A ist]

E = X![E ist]

RPZ = B * A * E

End If

End If

Next

X.MoveNext

Next ii

X.Close

Set X = Nothing


MsgBox "SC: " & SC, vbOKOnly

MsgBox "CC: " & CC, vbOKOnly

MsgBox "RPZGrenz: " & RPZGrenz, vbOKOnly

MsgBox "ActiveID: " & ActiveID, vbOKOnly

MsgBox "B: " & B, vbOKOnly

MsgBox "A: " & A, vbOKOnly

MsgBox "E: " & E, vbOKOnly


[b]'Ab diesem . geht N I C H T S mehr![/b]


If [IDx] <> "" Then

If B >= SC Then

DoCmd.RunSQL "UPDATE Fehler SET KPProduktmerkmal='SC' WHERE Fehler.ID=" & ActiveID & ";"

ElseIf B >= CC Then

DoCmd.RunSQL "UPDATE Fehler SET KPProduktmerkmal='CC' WHERE Fehler.ID=" & ActiveID & ";"

ElseIf B < SC And RPZ >= RPZGrenz Then

DoCmd.RunSQL "UPDATE Fehler SET KPProduktmerkmal='KPR' WHERE Fehler.ID=" & ActiveID & ";"

End If

End If

End Sub

Geschrieben

Hi Shellm,

Ich denke, das die Bedingungen von den If-Abfragen einfach nicht erfüllt sind und deswegen die Update nicht ausgeführt werden. Vergleich einfach mal die Werte aus den Messageboxen mit deinen If-Abfragen.

Du hast deine Update's außerhalb von den Schleifen, deswegen können die nur auf den letzten Datensatz, bzw. die letzten Werte in den Variablen reagieren.

So wie es aussieht gehört der ganze untere Bereich, der nicht geht, in die innere Schleife.

Geschrieben

Das programmiertechnische Problem hat sich bereits gelöst!

Ich habe die if-Abfragen falsch angeordnet! *sh..*

Komischerweise stürtzt jetzt Access 97 immer ab, wenn ich diesen Quelltext ganz ausschneiden will! VBA32.dll verursacht immer einen Fehler!!

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...