Access yedekleme

Katılım
8 Temmuz 2016
Mesajlar
52
Excel Vers. ve Dili
excell 10
Altın Üyelik Bitiş Tarihi
24-11-2021
Merhabalar,

Aşağıdaki kod ile textboxlardaki bilgileri listview dan tek tek seçerek yedekliyorum. Ancak bunların hepsini topluca tek seferde nasıl yedekleyebilirim/aktarabilirim?

Kod:
Private Sub CommandButton18_Click()
Dim baglan As ADODB.Connection
Dim ks As ADODB.Recordset, yol As String, Dosya As String, i As Long
Dim ks2 As ADODB.Recordset
If ListView1.SelectedItem Is Nothing Then
    MsgBox "Lütfen bir satır seçiniz." & vbLf & "İşlem Yapılmadı.", vbCritical, "UYARI    "
    Exit Sub
End If
yol = ThisWorkbook.path & "\"
Dosya = "Veritabani.mdb"
Set baglan = New ADODB.Connection
Set ks = New ADODB.Recordset
Set baglan = New ADODB.Connection
Set ks2 = New ADODB.Recordset

baglan.Open "provider=microsoft.ace.oledb.12.0;data source=" & yol & Dosya & ";"
ks.Open "select * from [Final_Montaj] where Sıra=" & _
        CLng(ListView1.SelectedItem.Text), baglan, adOpenKeyset, adLockOptimistic
If ks.RecordCount > 0 Then
    ks.Delete
    ks.Update



ks2.Open "select * from YEDEK", baglan, adOpenKeyset, adLockOptimistic

ks2.AddNew

    ks2("Personel") = TextBox2.Text
    ks2("Adet") = TextBox3.Text
    ks2("QrKod") = TextBox4.Text
    ks2("LotNo") = TextBox5.Text
    ks2("Rev") = TextBox6.Text
    ks2("Proje") = TextBox7.Text
    ks2("Operasyon") = TextBox8.Text
    ks2("BaslamaZamani") = TextBox9.Text
    ks2("BitisZamani") = TextBox10.Value
    ks2("OperasyonSuresi") = TextBox11.Value
    ks2("DuraklamaSuresi") = TextBox16.Value
    ks2("Aciklama") = TextBox12.Text
    ks2("Tarih") = TextBox13.Text
    
    ks2.Update

ks.Close
ks2.Close


End If

baglan.Close

Set ks = Nothing: Set baglan = Nothing
ListView1.ListItems.Clear



Call goster
MsgBox "Kaydetme işlemi başarı ile gerçekleşti.", vbOKOnly + vbInformation



End Sub
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,291
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Özel kişi
Ben size Excel'de hazırlanmış bir örnek vereyim, Access'de kendinize uyarlayabilirsiniz....

"Liste" isimli sayfada (tabloda) ID, Ad, Soyad, Şehir sütunlarındaki veriler içerisinden "Şehir" alanı "Trabzon" olan kayıtlar "Yedek" isimli sayfaya (tabloya) aktarılmaktadır.

Capture.PNG Capture2.PNG


C#:
Sub Test()
'   Haluk 22/03/2021
'   E-Posta: sa4truss@gmail.com
'   https://excelhaluk.blogspot.com/

    Dim adoCN   As Object, SourceFile As String, TargetFile As String, strSQL As String
   
    Set adoCN = CreateObject("ADODB.Connection")
   
    SourceFile = ThisWorkbook.FullName
    TargetFile = ThisWorkbook.FullName
   
    adoCN.Provider = "Microsoft.ACE.OLEDB.12.0"
    adoCN.Properties("Data Source") = TargetFile
    adoCN.Properties("Extended Properties") = "Excel 12.0; HDR=Yes"
    adoCN.Open
   
    strSQL = "Insert Into [Yedek$] ([ID], [Ad], [Soyad], [Şehir]) " & _
             "Select [ID], [Ad], [Soyad], [Şehir] From [Liste$] In '' [Excel 12.0;Database=" & SourceFile & "] " & _
             "Where [Şehir]='Trabzon'"
   
    adoCN.Execute strSQL
    adoCN.Close
    Set adoCN = Nothing
End Sub

.
 
Son düzenleme:
Katılım
8 Temmuz 2016
Mesajlar
52
Excel Vers. ve Dili
excell 10
Altın Üyelik Bitiş Tarihi
24-11-2021
Haluk bey cevabınız için teşekkürler ancak uyarlayamadım sanırım

Aşağıdaki kısımda hata alıyorum. Ve belirli bir şarta göre değil verilerin hepsini yedeklemek istiyorum.

adoCN.Execute strSQL


Kod:
Private Sub CommandButton18_Click()

    Dim baglan As ADODB.Connection

    Dim adoCN   As Object, SourceFile As String, TargetFile As String, strSQL As String
    
    Set adoCN = CreateObject("ADODB.Connection")
    
    yol = ThisWorkbook.Path & "\"
    Dosya = "Veritabani.mdb"
    
    adoCN.Provider = "Microsoft.ACE.OLEDB.12.0"
    adoCN.Properties("Data Source") = TargetFile
    adoCN.Properties("Extended Properties") = "Excel 12.0; HDR=Yes"
    
    Set baglan = New ADODB.Connection
    
    baglan.Open "provider=microsoft.ace.oledb.12.0;data source=" & yol & Dosya & ";"

    
    strSQL = "Insert Into [YEDEK$] [Personel], [Adet], [QrKod], [LotNo], [Rev], [Proje], [Operasyon], [BaslamaZamani], [BitisZamani], [OperasyonSuresi], [DuraklamaSuresi], [Aciklama], [Tarih]) " & _
             "Select [Personel], [Adet], [QrKod], [LotNo], [Rev], [Proje], [Operasyon], [BaslamaZamani], [BitisZamani], [OperasyonSuresi], [DuraklamaSuresi], [Aciklama], [Tarih] From [ListView1$] In '' [Excel 12.0;Database=" & SourceFile & "] " & _
             "Where [Şehir]='1/1'"
    
    adoCN.Execute strSQL
    adoCN.Close
    Set adoCN = Nothing

End Sub
 

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,237
Excel Vers. ve Dili
Office 2019 (64 bit) - Türkçe
Kodu dikkatli okumadan yapıştırdınız sanırım. Connection ve SQL komutu hatalı...

.
 
Üst