1 saat 40 dakikadır yazdığım kod neden çalışmıyor diye kafayı yerken sağolsun Seruz hocam yardım isteğimi geri çevirmedi. Kodda problem yokmuş sizin YRD_tblILCEKOD alanınızdaki ilçe isimlerinden sonra 1 adet boşluk karakteri varmış.
Örnek olarak EDİRNE KEŞAN kaydında KEŞAN'ın sonundaki boşluk karakterini silip test edebilirsiniz. Boş bir form oluşturun ya da bu iş için uygun bir formunuzda 1 adet buton yerleştirin. Butonun tıklanma olayın aşağıdaki kodu yapıştırın:
Dim kaynak_tablo_sql, hedef_tablo_sql, hedef_id, islem_sql As String
Dim sira As Integer
Dim ks As ADODB.Recordset
Set ks = New ADODB.Recordset
DoCmd.SetWarnings False
kaynak_tablo_sql = "SELECT VATNO, NKO_IL, NKO_ILCE FROM tbl2010"
ks.Open kaynak_tablo_sql, CurrentProject.Connection, adOpenStatic, adLockReadOnly
If Not ks.BOF And Not ks.EOF Then
If ks.EOF <> True Then
Do
With ks
ilimiz = .Fields("NKO_IL")
ilcemiz = .Fields("NKO_ILCE")
hedef_id = Nz(DLookup("ILCEKODU", "YRD_tblILCEKOD", "ILADI='" & ilimiz & "' AND ILCEADI='" & ilcemiz & "'"), "-")
islem_sql = "UPDATE tbl2010 SET NKO_ILCEKOD='" & hedef_id & "' WHERE VATNO='" & .Fields("VATNO") & "'"
DoCmd.RunSQL islem_sql
ks.MoveNext
End With
Loop Until ks.EOF
End If
MsgBox "İşlem başarıyla tamamlandı.", vbInformation + vbOKOnly, "AccessTR.Net"
Else
MsgBox "Tabloda kayıt yok"
End If
AccessTr.Net teknik konular içeren bir sitedir. Bu tip sitelerde en iyi şekilde yardım alabilmeniz için
Site Kurallarını mutlaka okumanız ve buna göre hareket etmeniz lazım.