Skip to main content

AccessTr.neT


Tablodan Seçerek Rapor Yazdırma

Tablodan Seçerek Rapor Yazdırma

Çözüldü #7
isim kullanırken alan yada tablo boşluk kullanmayın
ANA TABLO yerine AnaTablo deseydiniz sorun olmazdı ama şu halde [ANA TABLO] derseniz çalışır.
Murat YANDEMİR ( PyramiD YAZILIM Uluslar Arası Nakliye Programları )
Bilgisayar Programcısı (1989'dan beri)

+rep Yollar biter Access bitmez. +rep
Cevapla
Çözüldü #8
Sayın Yandemir, köşeli parantez kullanması gerektiğini örneklerden anladım ama kodlar arasında tablo ismini yazabilecğim ala nı göremedim, bütün tabloları seç anlamına gelen bir bölüm var herhalde kodlar kullanıldığı için çözemedim,

kodlar;
Option Compare Database
Dim TabloAdi As String
Private Sub ListeyiYukle(KaynakAdi As String)
Dim s As String
Dim i As Integer
Dim SutunSay As Integer
'Dim lstItem As ListItem
If Len(KaynakAdi & "xx") <= 2 Then Exit Sub
TabloAdi = KaynakAdi
s = "Select * from " & KaynakAdi
If Not AdoAc1(s) Then
MsgBox "Tablo/Sorgu açılamadı", vbInformation
Exit Sub
End If

With ListView1
.ListItems.Clear
.ColumnHeaders.Clear
.View = lvwReport
.GridLines = True
.FullRowSelect = True
.Checkboxes = True
.ColumnHeaders.Add , , "Alan", .Width - 200
End With
SutunSayisi = Rs1.Fields.Count - 1
For i = 0 To SutunSayisi
Set lstItem = ListView1.ListItems.Add()
lstItem.Text = Nz(Rs1.Fields(i).name, "-")
Next
AdoKapa 1
End Sub
Private Sub ComboyuDoldur()
Dim obj As AccessObject, dbs As Object
Set dbs = Application.CurrentData
Dim s As String
'Önce tabloları al
For Each obj In dbs.AllTables
If Left(obj.name, 4) <> "mSys" Then s = s & obj.name & ";"
Next
'Şimdi de sorguları
For Each obj In dbs.AllQueries
s = s & obj.name & ";"
Next
If s <> "" Then Kaynaklar.RowSource = s
End Sub
Private Sub Form_Load()
ComboyuDoldur
End Sub

Private Sub Kaynaklar_AfterUpdate()
If Len(Kaynaklar.Text & "xx") <= 2 Then Exit Sub
ListeyiYukle Kaynaklar.Text
End Sub

Private Sub Komut3_Click()
Dim Item As ListItem
Dim i As Long
Dim mesaj As String
Dim s As String
mesaj = ""
For i = 1 To Me.ListView1.ListItems.Count
Set Item = Me.ListView1.ListItems.Item(i)
If Item.Checked Then
If Len(mesaj) = 0 Then mesaj = Item.Text Else mesaj = mesaj & "," & Item.Text
End If
Next
If Len(mesaj) = 0 Then Exit Sub
s = "select " & mesaj & " from " & TabloAdi
AdoAcEx s
ExAc
KayittanExcele
End Sub


farkli88, 10-05-2010 tarihinden beri AccessTr.neT üyesidir.
Cevapla
Çözüldü #9
sizin yöntem
s = "Select * from " & KaynakAdi
örnek : bu şekilde deneyin kullanırken
s = "Select * from [" & KaynakAdi &"]"
Murat YANDEMİR ( PyramiD YAZILIM Uluslar Arası Nakliye Programları )
Bilgisayar Programcısı (1989'dan beri)

+rep Yollar biter Access bitmez. +rep
Cevapla
Çözüldü #10
Sayın Yandemir, tablo seçme sorunum düzeldi ama excele vermede halen hata veriyor. "Dim Item As ListItem" kodunda hata veriyor.
farkli88, 10-05-2010 tarihinden beri AccessTr.neT üyesidir.
Cevapla
Çözüldü #11
o kısım bende de hata veriyor excel'i iyi bilen arkadaşlar var istersen onun için yeni bir konu aç.
Murat YANDEMİR ( PyramiD YAZILIM Uluslar Arası Nakliye Programları )
Bilgisayar Programcısı (1989'dan beri)

+rep Yollar biter Access bitmez. +rep
Cevapla
Çözüldü #12
Sayın Yandemir, İlginiz ve yardımlarınız için teşekkür ederim. Peki benim zaten 1 tane tablom var ve burdan bilgileri seçiyorum. Bunu sabitleyebilirmiyiz? Kullanıcı başka tablolara müdahale etmesin.
farkli88, 10-05-2010 tarihinden beri AccessTr.neT üyesidir.
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da
Task