Skip to main content

AccessTr.neT


Çarpraz Sorgudan Rapor oluşturma

Çarpraz Sorgudan Rapor oluşturma

Çözüldü #19
Örneğinizi Ekte gönderdim.

Biraz acele olduğu ve fazla da zamanım olmadığı için
çok fazla detaya giremedim.

Eğer mantığını anlarsanız,
gerisini kendiniz de geliştirebilirsiniz.

Excel'de yapılacak işlemlerin kodları karışık gelebilir ama
o kodları yine excel'den otomatik olarak alabilirsiniz.

Excel'de iken Araçlar-Makro-Yeni Makro Kaydet dediğinizde
yaptığınız işlemlere karşılık gelen Vba kodları otomatik olarak kaydedilir.
Kaydetmeyi durdurduktan sonra Araçlar-Makro-Makrolar kısmında
kaydedilen kodları görebilirsiniz.

Tek yapacağınız buradaki gerekli kodları Access'e kopyalayıp,
Access'e göre biraz düzenlemek.

ya her komutun başına ExcelDosyasi. ekleyeceksiniz veya
With ExcelDosyasi
End With
bloğu içerisinde tüm komutların başına . ekleyeceksiniz.

Mesela;

With ExcelDosyasi
.Range(.Cells(3, 2).Address, .Cells(SatirSayisi, SutunSayisi + 1).Address).HorizontalAlignment = xlCenter
.Cells.EntireColumn.AutoFit
.Columns("A").EntireColumn.ColumnWidth = 1
.Columns("B").EntireColumn.ColumnWidth = 11

' Çerçeve İşlemleri
.Range(.Cells(3, 2).Address, .Cells(SatirSayisi, SutunSayisi + 1).Address).Select

.Selection.Borders(xlDiagonalDown).LineStyle = xlNone
.Selection.Borders(xlDiagonalUp).LineStyle = xlNone
With .Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With

.Range("A1").Select
End With
.rar HAFTALIK.rar (Dosya Boyutu: 53,03 KB | İndirme Sayısı: 121)
Bildiğini bilenin arkasından git, bildiğini bilmeyeni uyar, bilmediğini bilene öğret, bilmediğini bilmeyenden kaç.
Konfüçyüs
Cevapla
Çözüldü #20
hocam emek harcamışsınız tşk ama mantığı anlayamadım hatırlatmalar tabloma ekleme yaptım ama Excel yine 2 tane çıkıyo çalışma şeklini kısaca anlatabilirmisiniz
hocam kodları bilmediğim için ben bunu hayatta anlayamam kodları öğrenmeye çalışıyorum zorluyacam kendimi
Son Düzenleme: 29/01/2009, 19:34, Düzenleyen: osman06.
Cevapla
Çözüldü #21
Evet, acele acele yapınca oluyor böyle şeyler.

Kriterleri sonradan ekledim ve
Çapraz sorguda kriter seçiminden sonra sorun olmaya başladı.
Make Table yaptım o da sorun oldu.

Neyse, şimdilik kritersiz olarak ekledim.
Yani formda seçeceğiniz Mahalle ve Tarihlere bakmıyor.
Şimdilik böyle kontrol edin.

Yarın bakarım yine.
.rar HAFTALIK2.rar (Dosya Boyutu: 50,69 KB | İndirme Sayısı: 51)
Bildiğini bilenin arkasından git, bildiğini bilmeyeni uyar, bilmediğini bilene öğret, bilmediğini bilmeyenden kaç.
Konfüçyüs
Cevapla
Çözüldü #22
Evet çözüm üretmeye çalışırken bu sefer de ben takıldım.

Çapraz sorguda kriter olmazsa sorun olmuyor,
ancak kriter koyduğum anda
ADO ile çapraz sorguya ulaşamıyorum.

Bu nedenle 2 form yaptım.
Haftalik ve Haftalik_Kritersiz.

Haftalik_Kritersiz adlı form "HAFTALIK_Capraz_Kritersiz"
adlı sorgu üzerinden sorunsuz çalışıyor.

Ancak Haftalik adlı formda, ADO ile open yaparken

Rs.Open "HAFTALIK_Capraz", CurrentProject.Connection, adOpenKeyset, adLockReadOnly

"Invalid Sql Statement; expected 'DELETE','INSERT','PROCEDURE','SELECT', or 'UPDATE' "
hatası veriyor.

satırı;
Rs.Open "SELECT * FROM HAFTALIK_Capraz", CurrentProject.Connection, adOpenKeyset, adLockReadOnly

olarak değiştirdiğimde, bu sefer
"No value given for one or more required parameters"
hatası veriyor.

Çözemedim, yardımlarınızı bekliyorum.
.rar HAFTALIK3.rar (Dosya Boyutu: 56,83 KB | İndirme Sayısı: 31)
Bildiğini bilenin arkasından git, bildiğini bilmeyeni uyar, bilmediğini bilene öğret, bilmediğini bilmeyenden kaç.
Konfüçyüs
Cevapla
Çözüldü #23
Ben genelde çapraz sorguda kriter girmem gerektiğinde önce bir seçme sorgusu yapıp kriteri giriyorum. Sonra da bu sorgudan bir çapraz sorgu yapıp sonuca varıyorum. Sizin konuyu hiç okumadım ama belki yardımı olur diye yazayım dedim.
Kolay gelsin.
İnadına, ille de Accesstr.net...
Cevapla
Çözüldü #24
O şekilde de denedim.
Çapraz sorgu üzerinden başka bir sorgu yapıp
ondan okumayı da denedim.

Çaprazdan sonraki sorgudan Make-Table
Query yapıp denedim, ama onda da elle yapınca çalışıyor,
koddan query'yi çalıştırınca,
bu tablo var üzerine yazayım mı demesi gerekirken,
sadece bu tablo var diyor ve kesiyor.

Bir de çaprazdan önce kriterle MakeTable yapıp,
oluşan tablodan çapraz deneyeyim
Bildiğini bilenin arkasından git, bildiğini bilmeyeni uyar, bilmediğini bilene öğret, bilmediğini bilmeyenden kaç.
Konfüçyüs
Cevapla

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

Yorum yapmak için üye olmanız gerekiyor

ya da