Access'ten excel'e raporu sayfa sayfa aktarmak

1 2 3
27/01/2010, 16:44

Nurullah_Serdar

örneğini hazırladım.
şablonunu ve kodları istediğin gibi düzenleyebilirsin. kodlar anlaşılacak seviyede basit.
27/01/2010, 17:04

Seruz

Bir örnek de ben yapmıştım, eklerken baktım Nurullah_Serdar'da bir örnek eklemiş.
Benimki de boşa gitmesin diye benimkini de ekliyorum.

Şanslı bir üyemizsiniz, 2 farklı örneğiniz birden oldu.

Uyarayım, Referanslarla ilgili sorun çıkabilir,
ben "Microsoft Excel 10.0 Object Library" library kullandım.
Kod pencersinde Tools-Reference kısmında bu ismin karşısında missing yazıyorsa onu kaldırıp,
sizde uygun olan "Microsoft Excel ? Object Library" yi eklemelisiniz.
Ayrıca yine aynı şekilde "Microsoft ActiveX Data Object 2.6 Library" kullandım.
Onda da hata varsa, aynı şekilde onu kaldırıp sizde hangisi varsa onu ekleyin.
27/01/2010, 17:08

Nurullah_Serdar

seruz hocam bir yardım ancak bu kadar olabilir. +REP +REP
27/01/2010, 18:46

Seruz

Teşekkür ederim, iyi çalışmalar.

Sn. derebeyi,

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
Kod:
With ExcelDosyasi
  ...
End With
bloğu içerisinde tüm komutların başına . ekleyeceksiniz.

Mesela;
Kod:
With ExcelDosyasi
                .Columns("A").EntireColumn.ColumnWidth = 1
                ' Bold İşlemleri
                .Range(.Cells(SatirNo1 + 1, 2).Address, .Cells(SatirNo1 + 1, 9).Address).Select
                .Selection.Font.Bold = True
                ' Çerçeve ve Ortalama İşlemleri
                .Range(.Cells(SatirNo1, 2).Address, .Cells(SatirNo1 + 1, 9).Address).Select
                .Selection.HorizontalAlignment = xlCenter
            .Range("A1").Select
End With
27/01/2010, 20:20

derebeyi

Sn Nurullah ve Seruz Hocam: Öncelikle ilgilenip cevap verdiğiniz için;
Muhteşem, ultrasüper kelime bulamıyorum yardımlarınız ve açıklamalarınız için binlerce teşekkür. Keşke elinizi sıkma imkanım olsaydı.

Sn Seruz hocam

(27/01/2010, 17:04)Seruz yazdı: Bir örnek de ben yapmıştım, eklerken baktım Nurullah_Serdar'da bir örnek eklemiş.
Benimki de boşa gitmesin diye benimkini de ekliyorum.

Şanslı bir üyemizsiniz, 2 farklı örneğiniz birden oldu.

Uyarayım, Referanslarla ilgili sorun çıkabilir,
ben "Microsoft Excel 10.0 Object Library" library kullandım.
Kod pencersinde Tools-Reference kısmında bu ismin karşısında missing yazıyorsa onu kaldırıp,
sizde uygun olan "Microsoft Excel ? Object Library" yi eklemelisiniz.
Ayrıca yine aynı şekilde "Microsoft ActiveX Data Object 2.6 Library" kullandım.
Onda da hata varsa, aynı şekilde onu kaldırıp sizde hangisi varsa onu ekleyin.

söylediğiniz problemleri yaşamadım. Ben bu siteye üye olmakla zaten şanslıyım. Bir de sizin gibi değerli üstadlar olması extra şans....

Ancak örneğimizdeki programı, aslına monte etmeye çalışıyorum. Kodlarda hata verdi fakat biraz uğraştıktan sonra size sonucu bildiririm. Tekrar teşekkürler.
28/01/2010, 07:34

derebeyi

Sn Seruz hocam kendi programıma uyarlarken aşağıdaki hatayı aldım."Microsoft Excel 10.0 Object Library" yerine "Microsoft Excel 11.0 Object Library" var sizin örneğiniz çalıştığına göre bu problem olmaz değil mi?
Ne yapabiliriz. Teşekkürler..




1 2 3