Microsoft Word

Adres Takip ve Telefon Rehberi Programını Word Programında Yapınız

Yeni bir Paket Programlar dersi makalesi ile birlikteyiz.

Word programında ADODB ile Excel veri tabanına nasıl bağlanıldığını ve veri tabanı işlemlerinin nasıl gerçekleştiğini daha önceki makalelerde anlatmıştık. Öğrendiklerimizin tamamını kapsayan komplike bir uygulama yapalım. Üyelerin adres bilgilerinin tutulduğu bir Excel veri tabanı oluşturalım. Bu veri tabanına erişim ve diğer işlemleri Word programı üzerinden gerçekleştirelim.

Excel veri tabanında adrestakip.xls isimli bir çalışma kitabı oluşturalım. Bu çalışma kitabında rehber isimli bir çalışma sayfası oluşturalım. Bu çalışma sayfasında Durum, AdiSoyadi, Adres, Sehir, Telefon sütunlarını oluşturalım. Çalışma kitabımzın görünümü aşağıdaki gibi olacaktır.

Word programını açalım. Aşağıdaki gibi bir tablo oluşturalım. Belgemizi rehber.docm olarak kaydedlim.

Private Sub btnYeni_Click()
Me.ContentControls(1).Range.Text = ""
Me.ContentControls(2).Range.Text = ""
Me.ContentControls(3).Range.Text = ""
Me.ContentControls(4).Range.Text = ""
Me.ContentControls(1).Range.Select
End Sub
 
Private Sub btnKaydet_Click()
  Dim baglan As ADODB.Connection
 
  Dim kayit As ADODB.Recordset
 
  Dim Nsql As String
 
  Dim yol As String
 
  yol = Me.Path & "\adrestakip.xls"
 
  Set baglan = New ADODB.Connection
 
  baglan.Open "Driver={Microsoft Excel Driver (*.xls)}; DBQ=" & yol & ";Readonly=True"
 
  Set kayit = New ADODB.Recordset
 
  Nsql = "SELECT * FROM [rehber$]"
 
  kayit.Open Nsql, baglan, 1, 3
 
  kayit.AddNew
 
  kayit("Durum") = "K"
 
  kayit("AdiSoyadi") = ActiveDocument.ContentControls(1).Range.Text
 
  kayit("Adres") = ActiveDocument.ContentControls(2).Range.Text
 
  kayit("Sehir") = ActiveDocument.ContentControls(3).Range.Text
 
  kayit("Telefon") = ActiveDocument.ContentControls(4).Range.Text
 
  kayit.Update
 
  baglan.Close
End Sub
 
Private Sub btnListele_Click()
  Dim baglan As ADODB.Connection
 
  Dim kayit As ADODB.Recordset
 
  Dim Nsql As String
 
  Dim yol As String
 
  yol = Me.Path & "\adrestakip.xls"
 
  Set baglan = New ADODB.Connection
 
  baglan.Open "Driver={Microsoft Excel Driver (*.xls)}; DBQ=" & yol & ";Readonly=True"
 
  Set kayit = New ADODB.Recordset
 
  Nsql = "SELECT * FROM [rehber$] WHERE Durum<>'S'"
 
  kayit.Open Nsql, baglan, 1, 3
 
  kayit.MoveFirst
 
  lstListe.Clear
 
  k = 0
  
  Do While Not kayit.EOF
 
      lstListe.AddItem kayit!AdiSoyadi
      lstListe.List(k, 1) = kayit!Adres + " / " + kayit!Sehir
      lstListe.List(k, 2) = kayit!Telefon
 
      kayit.MoveNext
      k = k + 1
  Loop
 
   Set kayit = Nothing
 
  baglan.Close
 
End Sub
 
Private Sub lstListe_Click()
  Dim baglan As ADODB.Connection
 
  Dim kayit As ADODB.Recordset
 
  Dim Nsql As String
 
  Dim yol As String
 
  yol = Me.Path & "\adrestakip.xls"
 
  Set baglan = New ADODB.Connection
 
  baglan.Open "Driver={Microsoft Excel Driver (*.xls)}; DBQ=" & yol & ";Readonly=True"
 
  Set kayit = New ADODB.Recordset
 
  Nsql = "SELECT * FROM [rehber$] Where AdiSoyadi='" & lstListe & "'"
 
  kayit.Open Nsql, baglan, 1, 3
 
  ActiveDocument.ContentControls(1).Range.Text = kayit("AdiSoyadi")
 
  ActiveDocument.ContentControls(2).Range.Text = kayit("Adres")
 
  ActiveDocument.ContentControls(3).Range.Text = kayit("Sehir")
 
  ActiveDocument.ContentControls(4).Range.Text = kayit("Telefon")
 
  Set kayit = Nothing
 
  baglan.Close
 
End Sub
 
Private Sub btnDuzelt_Click()
  Dim baglan As ADODB.Connection
 
  Dim kayit As ADODB.Recordset
 
  Dim Nsql As String
 
  Dim yol As String
 
  yol = Me.Path & "\adrestakip.xls"
 
  Set baglan = New ADODB.Connection
 
  baglan.Open "Driver={Microsoft Excel Driver (*.xls)}; DBQ=" & yol & ";Readonly=True"
 
  Set kayit = New ADODB.Recordset
 
  Nsql = "SELECT * FROM [rehber$] Where adisoyadi='" & lstListe & "'"
 
  kayit.Open Nsql, baglan, 1, 3
  
  kayit("durum") = "D"
 
  kayit("adisoyadi") = ActiveDocument.ContentControls(1).Range.Text
 
  kayit("adres") = ActiveDocument.ContentControls(2).Range.Text
 
  kayit("sehir") = ActiveDocument.ContentControls(3).Range.Text
 
  kayit("telefon") = ActiveDocument.ContentControls(4).Range.Text
 
  kayit.Update
 
  Set kayit = Nothing
 
  baglan.Close
 
End Sub
 
Private Sub btnSil_Click()
  Dim baglan As ADODB.Connection
 
  Dim kayit As ADODB.Recordset
 
  Dim Nsql As String
 
  Dim yol As String
 
  yol = Me.Path & "\adrestakip.xls"
 
  Set baglan = New ADODB.Connection
 
  baglan.Open "Driver={Microsoft Excel Driver (*.xls)}; DBQ=" & yol & ";Readonly=True"
 
  Set kayit = New ADODB.Recordset
 
  Nsql = "SELECT * FROM [rehber$] Where adisoyadi='" & lstListe & "'"
 
  kayit.Open Nsql, baglan, 1, 3
 
  kayit("durum") = "S"
 
  kayit.Update
 
  Set kayit = Nothing
 
  baglan.Close
 
End Sub
 
Projeyi çalıştırdığınızda tüm butonları deneyebilir, kayıt işlemlerini gerçekleştirebilirsiniz.
 
Projeye ait dosyaları buradan indirebilirsiniz.
 
 
 

İlgili Makaleler
Microsoft Word Programında Yer İşareti (BookMarks) Ekleme
Adres Takip ve Telefon Rehberi Programını Word Programında Yapınız
Microsoft Word Programında Visaul Basic For Application (VBA) Kullanımı
Word Programında Hedefe Ok Atışı Oyununu Kodlayınız
Girilen Sayıyı Metne Dönüştüren İşlemi Word Programında Kodlayınız
Word Programında Dosyalama ve Veritabanı İşlemleri
Word Programında Eğik Düzlem Animasyonunu Kodlayınız
İki Sayıdan Büyük Olanı Görüntüleyen Programı Word Programında Kodlayınız
Word Programında Random (Rastgele Erişimli) Dosyalarda Dosya İşlemleri
N Elemanlı Bir Kümenin M Elemanlı Alt Kümelerini Bulan Programı Word Programında Kodlayınız
Word Programında Seçilen Ayın Hangi Mevsime Ait Olduğunu Bulan Programı Yapınız
N Elemanlı Bir Kümenin Alt Kümelerini Bulan Programı Word Programında Kodlayınız
Girilen Sayının Tek mi, Çift mi Olduğunu Bulan Programı Word Programında Kodlayınız
Satır ve Sayfa Sonu Ayarları
Satır Aralığı Oluşturma
Word Programında Kenarlık ve Gölgelendirme
Word Programında Herhangi Bir İle Ait Yerel Seçim Sonuçlarını Grafikle Gösteren Programı Yapınız
Word Programında Madde İşaretleri ve Numaralandırma
Word Programında Çok Düzeyli Listeler
Word Programında Paragrafları Sıralama

Yorum Ekle
   
Kötü İyi