Butona Basarak Accessteki Bazı Verileri Word'e Eklemek

1 2
09/10/2018, 20:49

prestij06

Merhaba ustalar. Ekte göndermiş olduğum projemde açılır menü olarak bulunan "Yazısı" kısmında 4 seçenek mevcut. Ben bu seçeneklerden birini seçip Yazdır butonuna bastığımda yine word olarak ekte yolladığım kırmızı olarak yazdığım yerlere mümkünse Access projemdeki kısımların eklenmesini istiyorum. Açılır menüdeki her seçeneğe göre ekte word dosyası var. Ayrıca "sorulacak tarih" yerine ise yazdır butonuna bastığımızda bana sorsun ben manuel olarak yazıyım. Örnekle açıklayacak olursam: Kullanıcı; Yazısı kısmındaki 4 seçenekte birini mesela "Aslı" seçsin ve Yazdır butonuna bassın. Ardından "Hangi Tarih" diye bir bölüm çıksın. Ben oraya tarihi yazıp tamam deyince o tarihle beraber belirtmiş olduğum kısımları word e yazsın. Umarım anlatabilmişimdir. Şimdiden teşekkürler. Elinize sağlık.
09/10/2018, 22:00

ozanakkaya

Merhaba, bu işlem için word şablonu oluşturmalı ve şablonda ilgili yerlere yer imi eklemelisiniz.

Aslı için oluşturulan örnek şablon ektedir.

Aslı.dotx isimli şablonu uygulama ile aynı dizine ekledikten sonra butonun tıklandığında olayına 

Dim GSorulacakTarih, GGecerliBelgeYolu, GSablonYolu As String
Dim WordApp, oWdoc As Object

GSablonYolu = CurrentProject.Path & "\" & Me.yazisi & ".dotx"

GGecerliBelgeYolu = CurrentProject.Path & "\" & Replace(Me.dosyano, "/", "-") & " dosya numaralı evrakın " & Me.yazisi & ".docx"

GSorulacakTarih = InputBox("Sorulacak Tarihi Yazınız", "Tarih Bilgisi")


Set WordApp = CreateObject(Class:="Word.Application")
WordApp.Visible = True
AppActivate "Microsoft Word"
             
Set oWdoc = WordApp.Documents.Add(Template:=GSablonYolu, NewTemplate:=False)

WordApp.ActiveDocument.Bookmarks("sayisi").Select
WordApp.Selection.Text = Me.sayisi

WordApp.ActiveDocument.Bookmarks("isim").Select
WordApp.Selection.Text = Me.isim

WordApp.ActiveDocument.Bookmarks("evraktarihi").Select
WordApp.Selection.Text = Me.Metin90

WordApp.ActiveDocument.Bookmarks("dosyano").Select
WordApp.Selection.Text = Me.dosyano

WordApp.ActiveDocument.Bookmarks("dosyano2").Select
WordApp.Selection.Text = Me.dosyano

WordApp.ActiveDocument.Bookmarks("isim2").Select
WordApp.Selection.Text = Me.isim

WordApp.ActiveDocument.Bookmarks("sorulacaktarih").Select
WordApp.Selection.Text = GSorulacakTarih

oWdoc.SaveAs2 GGecerliBelgeYolu

kodu eklemeniz gerekli.
10/10/2018, 13:40

prestij06

(09/10/2018, 22:00)ozanakkaya yazdı: Merhaba, bu işlem için word şablonu oluşturmalı ve şablonda ilgili yerlere yer imi eklemelisiniz.

Aslı için oluşturulan örnek şablon ektedir.

Aslı.dotx isimli şablonu uygulama ile aynı dizine ekledikten sonra butonun tıklandığında olayına 

Dim GSorulacakTarih, GGecerliBelgeYolu, GSablonYolu As String
Dim WordApp, oWdoc As Object

GSablonYolu = CurrentProject.Path & "\" & Me.yazisi & ".dotx"

GGecerliBelgeYolu = CurrentProject.Path & "\" & Replace(Me.dosyano, "/", "-") & " dosya numaralı evrakın " & Me.yazisi & ".docx"

GSorulacakTarih = InputBox("Sorulacak Tarihi Yazınız", "Tarih Bilgisi")


Set WordApp = CreateObject(Class:="Word.Application")
WordApp.Visible = True
AppActivate "Microsoft Word"
             
Set oWdoc = WordApp.Documents.Add(Template:=GSablonYolu, NewTemplate:=False)

WordApp.ActiveDocument.Bookmarks("sayisi").Select
WordApp.Selection.Text = Me.sayisi

WordApp.ActiveDocument.Bookmarks("isim").Select
WordApp.Selection.Text = Me.isim

WordApp.ActiveDocument.Bookmarks("evraktarihi").Select
WordApp.Selection.Text = Me.Metin90

WordApp.ActiveDocument.Bookmarks("dosyano").Select
WordApp.Selection.Text = Me.dosyano

WordApp.ActiveDocument.Bookmarks("dosyano2").Select
WordApp.Selection.Text = Me.dosyano

WordApp.ActiveDocument.Bookmarks("isim2").Select
WordApp.Selection.Text = Me.isim

WordApp.ActiveDocument.Bookmarks("sorulacaktarih").Select
WordApp.Selection.Text = GSorulacakTarih

oWdoc.SaveAs2 GGecerliBelgeYolu

kodu eklemeniz gerekli.

Merhaba dediğiniz gibi ekteki word dosyasını Access ile aynı klasöre attım. Dediğiniz kodu butonun tıklandığında kısmına ekledim ama hata veriyor. Hatanın resmi 



10/10/2018, 14:16

ozanakkaya

Ekteki uygulamayı deneyip sonuç hakkında olumlu/olumsuz bildirimde bulununuz.
10/10/2018, 14:32

prestij06

aynı hatayı alıyorum hocam
10/10/2018, 14:55

ozanakkaya

Kodu aşağıdaki ile değiştirerek deneyiniz

Dim GSorulacakTarih, GGecerliBelgeYolu, GSablonYolu As String
Dim WordApp As Word.Application
Dim oWdoc As Word.Document

GSablonYolu = CurrentProject.Path & "\" & Me.yazisi & ".dotx"

GGecerliBelgeYolu = CurrentProject.Path & "\" & Replace(Me.dosyano, "/", "-") & " dosya numaralı evrakın " & Me.yazisi & ".docx"

GSorulacakTarih = InputBox("Sorulacak Tarihi Yazınız", "Tarih Bilgisi")


Set WordApp = CreateObject(Class:="Word.Application")

WordApp.Visible = True

WordApp.Activate
WordApp.WindowState = wdWindowStateMaximize

             
Set oWdoc = WordApp.Documents.Add(Template:=GSablonYolu, NewTemplate:=False)

WordApp.ActiveDocument.Bookmarks("sayisi").Select
WordApp.Selection.Text = Me.sayisi

WordApp.ActiveDocument.Bookmarks("isim").Select
WordApp.Selection.Text = Me.isim

WordApp.ActiveDocument.Bookmarks("evraktarihi").Select
WordApp.Selection.Text = Me.Metin90

WordApp.ActiveDocument.Bookmarks("dosyano").Select
WordApp.Selection.Text = Me.dosyano

WordApp.ActiveDocument.Bookmarks("dosyano2").Select
WordApp.Selection.Text = Me.dosyano

WordApp.ActiveDocument.Bookmarks("isim2").Select
WordApp.Selection.Text = Me.isim

WordApp.ActiveDocument.Bookmarks("sorulacaktarih").Select
WordApp.Selection.Text = GSorulacakTarih

oWdoc.SaveAs2 GGecerliBelgeYolu
1 2