Skip to main content

AccessTr.neT


Listboxta Filitrelenen Verileri Excel Ortamına Aktarmak

Listboxta Filitrelenen Verileri Excel Ortamına Aktarmak

Çözüldü #1
Merhaba, gerek İnternet ortamında yaptığım araştırmalar gerekse formda yapmış olduğum araştırmalar ve denemeler neticesinde bir sonuç elde edemedim.

Sorum şu olacaktı listboxta filtrelediğim kayıtları ayrı bir Excel kitabında (gerekli görsel düzenlemeleri yapabileceğim sabit bir Excel dosyası olabilir) açmak istiyorum. Bunu nasıl sağlarım. Ekte örnek dosyam mevcuttur.
.rar yardım.rar (Dosya Boyutu: 471,86 KB | İndirme Sayısı: 3)
Cevapla
#2
aşağıdaki kod işinize yarayabilir, yeni kitap açıp ilk sayfaya yapıştırır
   arr = ListBox1.List
Dim wb As Workbook
Set wb = Workbooks.Add
wb.Sheets(1).Range("A2").Resize(UBound(arr, 1) + 1, UBound(arr, 2) + 1) = arr
Cevapla
#3
(31/03/2022, 12:25)berduş yazdı: aşağıdaki kod işinize yarayabilir, yeni kitap açıp ilk sayfaya yapıştırır
  arr = ListBox1.List
  Dim wb As Workbook
Set wb = Workbooks.Add
wb.Sheets(1).Range("A2").Resize(UBound(arr, 1) + 1, UBound(arr, 2) + 1) = arr



çok teşekkürker üstadım istediğim olarak buydu. Gayet güzel çalışıyor.

peki ben klasör içerisine sabit bir Excel tablosu (şablon olarak) koysam ismide atıyorum rapor olsa ve hep o şablona atsa verileri. O zaman nasıl bir düzenleme yaparız kodda.


Aşağıdaki kod örneğinde toplu rapor al butonunda Access veri tabanından sabit Excel dosyasına (RaporlarTablo.xlsx) verileri atıyor. ben bunu listboxta aynı şeyi yapmak istesem.

Kod:
Private Sub CommandButton6_Click()

Dim baglan As New Connection
Dim rs As New Recordset

     baglan.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & ThisWorkbook.Path & "\master.accdb;"

     rs.Open "SELECT tckn,ad,soyad, FROM personel", baglan, adOpenKeyset, adLockPessimistic

Set objxl = CreateObject("excel.application")
With objxl
.Visible = True
.Workbooks.Open "C:\Users\m.hakan.ergun\Desktop\PERSONEL B.S - Kopya\Raporlar\RaporTablo.xlsx"
.Range("A1") = "TC KİMLİK NO"
.Range("B1") = "ADI"
.Range("C1") = "SOYADI"
.ActiveSheet.Range("A2").CopyFromRecordset rs

End With

    rs.Close
    baglan.Close
End Sub

Cevapla
#4
Workbooks.Open ( yol & "\Rapor.xlsx") benzeri bir kod ile açabilirsiniz
Cevapla
#5
Sayenizde bir problemim daha çözüldü. Çok teşekkürler.
Cevapla
#6
Iyi çalışmalar
Kolay gelsin
Cevapla

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

Yorum yapmak için üye olmanız gerekiyor

ya da