Çalışmak için bir veri tabanı oluşturdum ve bir şeyler eklemek için bir form hazırladım, böylece işçiler tablolarla uğraşmazlar. Verileri her zaman ekleyecektir, ancak bazen bunu aşağıya eklemek yerine, başka bir veri satırı üzerine yazacaktır. Bazen bir satır bile değil, sadece birkaç sütun. Kodu iki farklı şekilde yapmaya çalıştım. Vba tabloya veri ekleyerek diğer verilerin üzerine yazıyor
Dim rst As Recordset
Set rst = CurrentDb.OpenRecordset("Service Calls")
With rst
.AddNew
.Fields("Project Name") = Me.proj
.Fields("Service Address") = Me.address
.Fields("Date of Service") = Me.doS
.Fields("Technician") = Me.tech
.Fields("Total Billed") = Me.billed
.Fields("Zip Code") = Me.zip
.Fields("Description of Work") = Me.work
.Fields("Type of Call") = Me.toC
.Fields("Invoice Number") = Me.invoiceNum
.Fields("Ticket Number") = Me.ticketNum
.Update
End With
rst.Close
Set rst = Nothing
CurrentDb.Execute " INSERT INTO [Service Calls] " _
& "([Project Name], [Phone Number], [email], [Source], [Service Address], [Zip Code], [Date of Service], [Type of Call], [Technician], [Ticket Number], [Invoice Number], [Total Billed], [Description of Work]) VALUES " _
& "('" & Me.proj & "', '" & Me.phone & "', '" & Me.email & "', '" & Me.source & "', '" & Me.address & "', '" & Me.zip & "', '" & Me.doS & "', '" & Me.toC & "', '" & Me.tech & "', '" & Me.ticketNum & "', '" & Me.invoiceNum & "', '" & Me.billed & "', '" & Me.work & "');"
CurrentDb.Close
ve
Bir diğerinden daha fazla veri içerdiğini değilim. Formu güncellediğimde üst kodu kullandım.Çözüldü: Formdaki bazı alanlar ciltlendi. Yani, bu öğeler bazen üzerine yazacaktı. Bu alanları bağladığımda, üzerine yazmayı durduracaktı.
.AddNew veya 'Insert into', varolan verileri tablolarda kaplayacak. Formunuzdaki denetimler BOUND veya UNBOUND mu? BOUND, meselenin, formunuzda bir veri satırı görüntülediğinden ve veriyi değiştiren o satırın içine birisi girdiğinden oldukça eminim. Bunu yapabilecek başka bir yer var mı? –
Bazıları BOUND, bazıları UNBOUND. Hepsini UNBOUND ve bunun düzeltip düzeltmeyeceğine bakacağım. Başka bir kod var, ama sadece bir sorguyu çekiyor, bu yüzden bir şey yapmadığını düşünmüyorum. – Chris
@ WayneG.Dunn formdaki UNBOUND öğelerine bir yanıt ekleyin, böylece cevabı bana verdiğini söyleyebilirim. Teşekkürler. – Chris