If Data3.Recordset(\"Udvalgt\") = True Then Data3.Recordset.Edit Data3.Recordset(\"Udvalgt\") = False Data3.Recordset.Update End If Data3.Recordset.MoveNext Loop
For i = 0 To 3 lblMaGrøn(i) = \"\" lblTiGrøn(i) = \"\" Next
End Sub
Private Sub cmdUdvælg_Click()
Dim i As Integer
For i = 0 To 3 If Not Data1.Recordset.EOF Then lblMaGrøn(i) = Data1.Recordset(\"navn\") Data1.Recordset.Edit Data1.Recordset(\"Udvalgt\") = True Data1.UpdateRecord Data1.Recordset.MoveNext End If Next i
\'Data2.Recordset.MoveFirst For i = 0 To 3 If Not Data2.Recordset.EOF Then lblTiGrøn(i) = Data2.Recordset(\"navn\") Data2.Recordset.Edit Data2.Recordset(\"Udvalgt\") = True Data2.UpdateRecord Data2.Recordset.MoveNext End If Next i
The updaterecord method is the same as the edit and an update, so I think you should change it to Update instead. This is just a guess as I have never used it.
If Data3.Recordset(\"Udvalgt\") = True Then Data3.Recordset.Edit Data3.Recordset(\"Udvalgt\") = False Data3.Recordset.Update End If Data3.Recordset.MoveNext Loop
For i = 0 To 3 lblMaGrøn(i) = \"\" lblTiGrøn(i) = \"\" Next
End Sub
Private Sub cmdUdvælg_Click()
Dim i As Integer
\'Data1.Recordset.MoveFirst For i = 0 To 3 If Not Data1.Recordset.EOF Then lblMaGrøn(i) = Data1.Recordset(\"navn\") Data1.Recordset.Edit Data1.Recordset(\"Udvalgt\") = True Data1.Recordset.Update Data1.Recordset.MoveNext End If Next i
\'Data2.Recordset.MoveFirst For i = 0 To 3 If Not Data2.Recordset.EOF Then lblTiGrøn(i) = Data2.Recordset(\"navn\") Data2.Recordset.Edit Data2.Recordset(\"Udvalgt\") = True Data2.Recordset.Update Data2.Recordset.MoveNext End If Next i
Der er en fejl i VB der gør, at der ikke kan opdateres når du bruger DAO under visse omstændigheder. Blandt andet hvis recordset er baseret på join af to tabeller eller hvis et krævet felt får en Null.
Problemet kan løses ved at slette join i tabellen (hvis det er muligt) eller checke at der er værdier i de rette felter.
Umiddelbart ser det ud til at du skal skifte fra DAO til ADO i stedet for. Så har du ikke problemet længere.
Det er vel ikke sådan, at der i koden er anvendt \'On error resume next\'? Prøv i det tilfælde, at kommentere denne linie ud. Det jeg er ude efter er, at når kommandoen .edit udføres, prøver Jet at udføre en lock på den Access page indenfor hvilken datarecorden ligger. Denne lock går ikke altid godt, og .edit returnerer en fejl, hvorved .update heller ikke kan lade sig gøre.
Ingen af de afgivne svar har indtil nu været til megen gavn.
Faktisk har kommentaren fra Kaffe (17/07 2001 19:14:43) været den mest anvendelige. Jeg er nemlig nu skiftet til ADO men er stødt på andre problemer. Så Kaffe >> Hvis du laver din kommentar om til et svar får du pointene
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.