- Katılım
- 2 Mart 2005
- Mesajlar
- 2,960
- Excel Vers. ve Dili
- ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
Kod:
Private Sub ComboBox85_Change()
On Error Resume Next
Call DegiskenTani
Dim i As Integer, SQLStr As String
Spreadsheet1.Rows("2:" & [a65536].End(3).Row).Interior.ColorIndex = xlNone
Spreadsheet1.Rows("2:" & [a65536].End(3).Row).Font.Bold = False
Spreadsheet1.Rows("2:" & [a65536].End(3).Row).Font.ColorIndex = 0
If ComboBox85.Value = "" Then Exit Sub
Set RecTcNo = New ADODB.Recordset
basliklar = "TCK_NO, ADI, SOYADI,ILKSOYADI, BABAADI, ANNEADI,"
basliklar = basliklar & "DOGUM_Y, DOGUM_T, MD_HAL, CNS,"
basliklar = basliklar & "SIG_NO"
sayfaadi = "[DATA$]"
sorgu = "TCK_NO = " & ComboBox85.Value
SQLStr = "SELECT " & basliklar & " FROM " & sayfaadi & " WHERE " & sorgu
With RecTcNo
.Open SQLStr, bagTCKMLK, adOpenKeyset, adLockOptimistic
.MoveFirst
ComboBox86.Value = .Fields("ADI")
TextBox3.Value = .Fields("SOYADI")
TextBox15.Value = .Fields("ILKSOYADI")
TextBox4.Value = .Fields("BABAADI")
TextBox5.Value = .Fields("ANNEADI")
TextBox6.Value = .Fields("DOGUM_Y")
TextBox7.Value = .Fields("DOGUM_T")
TextBox16.Value = .Fields("SIG_NO")
If .Fields("CNS") = "Erkek" Then
OptionButton1.Value = 1
ElseIf .Fields("CNS") = "Kadın" Then
OptionButton2.Value = 1
Else
OptionButton1.Value = 0: OptionButton2.Value = 0
End If
If CBool(.State And adStateOpen) = True Then .Close
End With
Set RecTcNo = Nothing
Set RecYkTcNo = New ADODB.Recordset
basliklar = "TCK_NO, AD_SOYAD, YK_DRC, YKN_TCK_NO, YKN_AD_SOYAD, YKN_CNS, YKN_DOGUM_Y, YKN_DOGUM_T"
sayfaadi = "[DATA$]"
sorgu = "TCK_NO = " & ComboBox85.Value
SQLStr = "SELECT " & basliklar & " FROM " & sayfaadi & " WHERE " & sorgu
With RecYkTcNo
.Open SQLStr, bagYKN, adOpenKeyset, adLockOptimistic
If .RecordCount > 0 Then
Spreadsheet1.Range("a1:f100").ClearContents
Spreadsheet1.Cells(1, 1) = "YK_DRC"
Spreadsheet1.Cells(1, 2) = "YKN_TCK_NO"
Spreadsheet1.Cells(1, 3) = "YKN_AD_SOYAD"
Spreadsheet1.Cells(1, 4) = "YKN_CNS"
Spreadsheet1.Cells(1, 5) = "YKN_DOGUM_Y"
Spreadsheet1.Cells(1, 6) = "YKN_DOGUM_T"
Spreadsheet1.Columns(1).ColumnWidth = 6
Spreadsheet1.Columns(2).ColumnWidth = 15
Spreadsheet1.Columns(3).ColumnWidth = 20
Spreadsheet1.Columns(4).ColumnWidth = 6
Spreadsheet1.Columns(5).ColumnWidth = 20
Spreadsheet1.Columns(6).ColumnWidth = 15
sat = 1
.MoveFirst
[B] For i = 1 To .RecordCount
Spreadsheet1.Cells(sat + i, 1).Value = .Fields("YK_DRC")
Spreadsheet1.Cells(sat + i, 2).Value = .Fields("YKN_TCK_NO")
Spreadsheet1.Cells(sat + i, 3).Value = .Fields("YKN_AD_SOYAD")
Spreadsheet1.Cells(sat + i, 4).Value = .Fields("YKN_CNS")
Spreadsheet1.Cells(sat + i, 5).Value = .Fields("YKN_DOGUM_Y")
Spreadsheet1.Cells(sat + i, 6).Value = .Fields("YKN_DOGUM_T")
.MoveNext
Next i[/B] .MoveFirst
End If
If CBool(.State And adStateOpen) = True Then .Close
End With
Set RecYTcNo = Nothing
End Sub
Arkadaşlar yukarıdaki kodlar ile birden fazla kayıtları spreadsheet getiridim yalnız
şöyle bir sorun var iki tane kayıt varsa spread shetteki iki kayıtta aynı
kayıtnoyu yazmak mümkün değilmi
adı (i) gibi
