Merhaba arkadaşlar. Word e yer imi belirleyerek yazdırma işini halletim. Projemde Olay Yeri isminde buton var. Bu butona bastığımızda sadece formda seçili olanın verilerini word e aktarıyor. Ben olması mümkünse şöyle bir şey istiyorum. Örneğin, Olay Yeri butonuna bastığımıza "Hangi sıralar eklensin" diye bir soru sorsun. 1-3 yazıp tamam dediğimizde 1 ve 3 dahil bu sırada bulunan verileri olay yeri isimli word e alt alta eklesin. Böyle bir şey mümkünse yapabilirseniz çok sevinirim. Şimdiden teşekkürler...
Dim rs As New ADODB.Recordset
Set db = CurrentDb
strTemplateLocation = CurrentProject.Path & "\olay_yeri.docx"
GVeri = InputBox("İlk ve Son KAyıt", "Kayit Gir", "")
GIlkKayit = Left(GVeri, InStr(1, GVeri, "-") - 1)
GSonKayit = Mid(GVeri, InStr(1, GVeri, "-") + 1)
On Error Resume Next
Set WordApp = GetObject(, "Word.Application")
If Err.Number <> 0 Then
Set WordApp = CreateObject("Word.Application")
End If
On Error GoTo ErrHandler
WordApp.Visible = True
WordApp.WindowState = 1
Set oWdoc = WordApp.Documents.Add(Template:=strTemplateLocation, NewTemplate:=False)
DoEvents
WordApp.Activate
Sql = "SELECT sirano, * FROM yabancilar WHERE (((sirano) Between " & GIlkKayit & " And " & GSonKayit & "));"
rs.Open SQL, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
With rs
.MoveLast
iRecCount = .RecordCount
.MoveFirst
iFldCount = .Fields.Count
WordApp.ActiveDocument.Bookmarks("adi").Select
WordApp.ActiveDocument.Tables.Add Range:=WordApp.Selection.Range, NumRows:=iRecCount + 1, NumColumns:= _
1, DefaultTableBehavior:=wdWord9TableBehavior, AutoFitBehavior:=wdAutoFitFixed
WordApp.ActiveDocument.Tables(1).Borders.Enable = False
Set oWordTbl = oWdoc.Tables(1)
For i = 1 To iRecCount
oWordTbl.Cell(i, 0) = i & "-) Adı SOYADI " & Nz(rs.Fields("ad_soyad").Value, "") & "; " & Nz(rs.Fields("uyrugu").Value, "") & " uyruklu, Baba Adı-Anne Adı oğlu/kızı, Doğum Yeri - Doğum Tarihi doğumlu, Pasaport No: Pasaport No"
.MoveNext
Next i
End With
ErrHandler:
Set WordApp = Nothing
1-3 yazarsanız sno 1,2,3'ü 2-3 yazarsanız sno 2 ve 3'ü yazar. Sadece adı soyadı ve uyruğu yazar.
bu tür işlemler için accessde Rapor kullanılır. Worde, excele aktarma işlemleri komplike kod gerektirir.
Merhaba şu hatayı alıyorum????
Merhaba referenceden Ado ile ilgili kısmı seçiniz.Yanılmıyorsam microsoft.activex.Data.object 2.6 yada 2.8 gibi.
New anahtarını kullandığınız için öyle gerek.
tamam hallettim. bir de word e aktarırken başına 1-) koymaması ve alt satıra geçmemesi için hangi kodu kaldırmamız gerekiyor? diğer alanlara da yapıyorum 1-) yazmaması ve alt satıra geçmemesi gerekiyor