Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak Dosya Yükleme tamamen ücretsizdir.
Not : KVKK Nedeni ile dosya silinmistir.Private Sub GUNCELLEME_YAPSANA_Click()
'GÜNCELLE
Dim adoCN As ADODB.Connection
Dim RS As ADODB.Recordset
Dim strSQL As String
Dim i As Long, countRows As Long
On Error GoTo ErrorHandler:
DatabasePath = ThisWorkbook.Path & "\VT.mdb"
Set adoCN = New ADODB.Connection
' Office 2007 ve alt surumler icin Provider olarak "Jet.OLEDB.4.0", sonrasi icin "ACE.OLEDB.12.0" kullan...
If Val(Application.Version) < 14 Then
adoCN.Provider = "Microsoft.Jet.OLEDB.4.0"
Else
adoCN.Provider = "Microsoft.ACE.OLEDB.12.0"
End If
adoCN.ConnectionString = DatabasePath
adoCN.Open
Set RS = New ADODB.Recordset
strSQL = "Select * from [personel] where [ID]=" & ID
RS.CursorType = adOpenKeyset
RS.LockType = adLockOptimistic
RS.ActiveConnection = adoCN
RS.Source = strSQL
RS.Open
guncelle.Value = Date
For Each fld In RS.Fields
RS(fld.Name) = Controls(fld.Name)
Next fld
RS.Update
If RS.State = 1 Then
RS.ActiveConnection.Close
End If
MsgBox "İşlem tamamlandı!...", vbInformation, "...Koruma Şube Personel Bilgi Sistemi..."
If adoCN.State = 1 Then adoCN.Close
Set RS = Nothing
'Call RefreshForm
ExitHere:
temizle
Set RS = Nothing
Set adoCN = Nothing
Exit Sub
ErrorHandler:
MsgBox "Error No: " & Err.Number & vbCrLf & vbCrLf & _
Err.Description & vbCrLf & vbCrLf & "Source: " & Err.Source, vbApplicationModal, "...Koruma Şube Personel Bilgi Sistemi..."
GoTo ExitHere:
End Sub
Hocam çift tırnağı sonra fark edip düzelttim ama yine de çözememiştim.Merhaba, Access ve Excel dosyanızda değiştirmeniz gereken yerler.
Acces
1- Personel isimli tabloyu tasarım görünümünde açıp Nufus_ilce ve guncelle başlıklarının yerini değiştirmelisiniz.
Ekli dosyayı görüntüle 13966
Excel
1-Module2 içindeki kodlarda başlıkları 0 dan sıralama yapmışınız ancak Personel tablosunda 0 ID kolonuna denk gelir.
Buradaki sıralamayı 1 den başlatırsanız sondaki Nufus_ilce başlığı 111. sırada olur ve Nufus_ilce yi çift tırnak içinde yazmalısınız.
2- Kaydet işlemindeki döngüyü de For i = 1 To 111 olarak kullanmalısınız
Hocam çok teşekkür ederim. Zihninize sağlık.sorun; for each kullandığınızda ID alanını da güncellemeye çalışması. oysa ID alanı otomatik tamsayı alanı yani ne eklemede ne de güncellemede siz bu alanın değerini belirleyemezsiniz eğer for each kullanacaksanız kodu aşağıdaki şekilde düzenlemelisiniz
HTML: eğer for x kullanacaksanız
HTML: Not: eğer for x kullanacaksanız alan sayısını RS.Fields.Count - 1 ile otomatik olarak belirleyebilirsiniz
Basliklar makrosu 111 satır tanımlama var ancak dizimiz 0 dan başlıyor ve 110 da bitiyor. Yani yine 111 veri var ama dizi eleman sıralama düzeni gereği böyle olmaktadır.Sn. Balta son alanı eklemeden de 110 du sayı. Son alanı ekledikten sonra 111 yaptım ama hata verdi nerde yanlış yapmışım.
Olay sadece çift tırnakta değildi ki, aşama olarak ne yapmanız gerektiğini yazmıştım.Hocam çift tırnağı sonra fark edip düzelttim ama yine de çözememiştim.