access te alt tablodaki bilgileri excele gönderme

21/02/2012, 19:59

afatsum75

Access tablosunda kayıtlı olan Öğretmen 1 ve öğretmen 2 nin girdiği dersleri saati kadar Excel sayfasına yazdırmam mümkün mü? anlatmak istediğimi Excel dosyası olarak gönderiyorum.

Excel’e üstteki tabloyu yazdırırken sınıflar aynı sütunda çakışmasın istiyorum. (fen-a fen-b 1.ders,2.ders ve 4.ders sütununda çakışmış.) ayrıca öğretmen-2 nin 7.ders,8.ders,9.ders,10.derslerinin boş olmasını yani o hücrelere sınıfların yazılamayacağını accesse vb komutlarını kullanarak nasıl anlatabilirim? Bu konuda yardımlarınız için şimdiden teşekkür ederim.



Ek Dosyalar

22/02/2012, 21:27

KingAccess

office 2003 formatında örnek yüklerseniz, belki yardımcı olabirim...
22/02/2012, 21:49

afatsum75

ofice 2003 formatında gönderiyorum.

Ek Dosyalar

22/02/2012, 23:28

KingAccess

Anladığım kadarıyla bir uygulama yaptım. Gün saat tablosunu örnekte gösterdiğim gibi kendi verilerinizle doldurursanız oluşturduğum sorgu size istediğiniz cevabı vereceğini tahmin ediyorum... kolay gelsin....
Ek Dosyalar

23/02/2012, 10:24

afatsum75

sorguyu inceledim.şöyle bir sıkıntı var.aynı sütunda sadece bir sınıf yazılmasına izin veriyor.yani öğretmen 2 fen-b dersinde iken öğretmen 1 in dersi olabilir.yapmaya çalıştığım tam olarak form üzerinde öğretmen sınıflarını ve kaç saat gireceğini yazdıktan sonra hangi öğretmen hangi saatlerde derse girmeyecekse belirtip komut düğmesine tıklayıp aynı sütunda aynı sınıf çakışmayacak şekilde vb komutları ile işlem yaptıktan sonra Excel sayfasına yazsın.yine de uğraştığınız ve emek sarfettiğiniz için teşekkür ederim.
27/02/2012, 15:46

afatsum75

nihayet istediğim oldu.dersp dosyası c nin içinde açılmalı.dersp dosyasının içinde bulunan pers.xlslx Excel dosyasına istediğim şekilde yazdı.nasıl yaptığıma gelince

form1 üzerine aldığım komut düğmesinin tıklama olayına aşağıdaki komutları yazınca her dersi saati kadar Excel sayfasına yazmış oldu.
Set Db = OpenDatabase("C:\dersp\dersp.accdb")
Set Rs = Db.OpenRecordset("tbl_sınıf", dbOpenSnapshot)

Set XLapp = CreateObject("Excel.Application")

Set XLwb = XLapp.Workbooks.Open(CurrentProject.Path & "\pers.xlslx")

Set XLsh = XLwb.Sheets(1)
XLapp.Visible = True

Rs.MoveFirst
Do While Not Rs.EOF

For i = 1 To CInt(Rs!saati)
Dim sayac As Integer

sayac = sayac + 1

XLsh.cells(2, sayac).Value = Rs!sınıfadı

Next i
Rs.MoveNext

Loop








Ek Dosyalar