Skip to main content

AccessTr.neT


Listview Nesnesine Kapalı Dosyadan Veri Alma

Listview Nesnesine Kapalı Dosyadan Veri Alma

Çözüldü #1
Değerli Hocalarım, Kıymetli Arkadaşlar Merhaba,

Kapalı bir Excel dosyasından listview nesnesine veri almak istiyorum.

Deneme.xlsm içindeki listview1 e 1111.xlsx kitabındaki verileri nasıl getirebilirim.

Şimdiden teşekkür eder, saygılar sunarım.
.rar Pazaryeri.rar (Dosya Boyutu: 30,15 KB | İndirme Sayısı: 13)
Cevapla
#2
Çözüldü , teşekkürler..
kodlar aşağıdaki gibidir.

Kod:
Sub kayıtlar()
Dim conn As Object, rs As Object, sat As Long
Set conn = CreateObject("Adodb.connection")
Set rs = CreateObject("Adodb.recordset")
ListView1.ListItems.Clear
conn.Open ("provider=microsoft.ace.oledb.12.0;data source=" & ThisWorkbook.Path & _
        "\1111.xlsx;extended properties=""excel 12.0;hdr=yes"";")
sorgu = "select * from [Sipariş Listesi$]"

rs.Open sorgu, conn, 1, 1

ListView1.ListItems.Clear
Dim satir As Integer
    On Error Resume Next
    If Not rs.EOF Then
        Do While Not rs.EOF
Set umit = ListView1.ListItems.Add(, , rs.Fields("Sipariş No"))
umit.SubItems(1) = rs.Fields("Sipariş Tarih")
umit.SubItems(2) = Format(rs.Fields("Sipariş Platform"), "dd.mm.yyyy")
umit.SubItems(3) = rs.Fields("Hediye Çeki")
umit.SubItems(4) = rs.Fields("Kargo Barkodu")
umit.SubItems(5) = rs.Fields("Durum")
umit.SubItems(6) = rs.Fields("Fatura Adı")
umit.SubItems(7) = rs.Fields("Fatura Adresi")
umit.SubItems(8) = rs.Fields("Fatura İl")
umit.SubItems(9) = rs.Fields("Fatura İlçe")
umit.SubItems(10) = rs.Fields("Fatura Seri No")
umit.SubItems(11) = rs.Fields("Fatura Sıra No")
umit.SubItems(12) = rs.Fields("E-Fatura No")
umit.SubItems(13) = rs.Fields("E-Fatura Senaryo")
umit.SubItems(14) = rs.Fields("E-Fatura Tarihi")
umit.SubItems(15) = rs.Fields("E-Fatura ETN")
umit.SubItems(16) = rs.Fields("TC No")
umit.SubItems(17) = rs.Fields("Vergi No")
umit.SubItems(18) = rs.Fields("Vergi Dairesi")
umit.SubItems(19) = rs.Fields("Telefon")
umit.SubItems(20) = rs.Fields("E-Posta")
umit.SubItems(21) = rs.Fields("Üye No")
umit.SubItems(22) = rs.Fields("Ödeme Yöntemi")
umit.SubItems(23) = rs.Fields("Teslimat Adı")
umit.SubItems(24) = rs.Fields("Teslimat Adresi")
umit.SubItems(25) = rs.Fields("Teslimat İl")
umit.SubItems(26) = rs.Fields("Teslimat İlçe")
umit.SubItems(27) = rs.Fields("Toplam Kargo (TL)")
umit.SubItems(28) = rs.Fields("Toplam Tutar (TL)")
umit.SubItems(29) = rs.Fields("Ürün Kodu")
umit.SubItems(30) = rs.Fields("Ürün Adı")
umit.SubItems(31) = rs.Fields("Ürün Varyant 1")
umit.SubItems(32) = rs.Fields("Ürün Varyant 2")
umit.SubItems(33) = rs.Fields("Ürün Varyant 3")
umit.SubItems(34) = rs.Fields("Ürün KDV")
umit.SubItems(35) = rs.Fields("Ürün Adeti")
umit.SubItems(36) = rs.Fields("Ürün Fiyatı")
umit.SubItems(37) = rs.Fields("Ürün Toplam Tutarı")



  rs.MoveNext
            
Refresh.ListView1
        Loop
    End If
    rs.Close: con.Close
    Set rs = Nothing
End Sub

Cevapla
#3
çözümü paylaştığınız için teşekkürler)
Cevapla
#4
(29/10/2020, 21:26)berduş yazdı: çözümü paylaştığınız için teşekkürler)

Rica ederim üstad, birilerinin daha işine yarar umarım.
Cevapla
#5
(29/10/2020, 21:21)kanakan52 yazdı: Çözüldü , teşekkürler..
kodlar aşağıdaki gibidir.

Kod:
Sub kayıtlar()
Dim conn As Object, rs As Object, sat As Long
Set conn = CreateObject("Adodb.connection")
Set rs = CreateObject("Adodb.recordset")
ListView1.ListItems.Clear
conn.Open ("provider=microsoft.ace.oledb.12.0;data source=" & ThisWorkbook.Path & _
        "\1111.xlsx;extended properties=""excel 12.0;hdr=yes"";")
sorgu = "select * from [Sipariş Listesi$]"

rs.Open sorgu, conn, 1, 1

ListView1.ListItems.Clear
Dim satir As Integer
    On Error Resume Next
    If Not rs.EOF Then
        Do While Not rs.EOF
Set umit = ListView1.ListItems.Add(, , rs.Fields("Sipariş No"))
umit.SubItems(1) = rs.Fields("Sipariş Tarih")
umit.SubItems(2) = Format(rs.Fields("Sipariş Platform"), "dd.mm.yyyy")
umit.SubItems(3) = rs.Fields("Hediye Çeki")
umit.SubItems(4) = rs.Fields("Kargo Barkodu")
umit.SubItems(5) = rs.Fields("Durum")
umit.SubItems(6) = rs.Fields("Fatura Adı")
umit.SubItems(7) = rs.Fields("Fatura Adresi")
umit.SubItems(8) = rs.Fields("Fatura İl")
umit.SubItems(9) = rs.Fields("Fatura İlçe")
umit.SubItems(10) = rs.Fields("Fatura Seri No")
umit.SubItems(11) = rs.Fields("Fatura Sıra No")
umit.SubItems(12) = rs.Fields("E-Fatura No")
umit.SubItems(13) = rs.Fields("E-Fatura Senaryo")
umit.SubItems(14) = rs.Fields("E-Fatura Tarihi")
umit.SubItems(15) = rs.Fields("E-Fatura ETN")
umit.SubItems(16) = rs.Fields("TC No")
umit.SubItems(17) = rs.Fields("Vergi No")
umit.SubItems(18) = rs.Fields("Vergi Dairesi")
umit.SubItems(19) = rs.Fields("Telefon")
umit.SubItems(20) = rs.Fields("E-Posta")
umit.SubItems(21) = rs.Fields("Üye No")
umit.SubItems(22) = rs.Fields("Ödeme Yöntemi")
umit.SubItems(23) = rs.Fields("Teslimat Adı")
umit.SubItems(24) = rs.Fields("Teslimat Adresi")
umit.SubItems(25) = rs.Fields("Teslimat İl")
umit.SubItems(26) = rs.Fields("Teslimat İlçe")
umit.SubItems(27) = rs.Fields("Toplam Kargo (TL)")
umit.SubItems(28) = rs.Fields("Toplam Tutar (TL)")
umit.SubItems(29) = rs.Fields("Ürün Kodu")
umit.SubItems(30) = rs.Fields("Ürün Adı")
umit.SubItems(31) = rs.Fields("Ürün Varyant 1")
umit.SubItems(32) = rs.Fields("Ürün Varyant 2")
umit.SubItems(33) = rs.Fields("Ürün Varyant 3")
umit.SubItems(34) = rs.Fields("Ürün KDV")
umit.SubItems(35) = rs.Fields("Ürün Adeti")
umit.SubItems(36) = rs.Fields("Ürün Fiyatı")
umit.SubItems(37) = rs.Fields("Ürün Toplam Tutarı")



  rs.MoveNext
           
Refresh.ListView1
        Loop
    End If
    rs.Close: con.Close
    Set rs = Nothing
End Sub

Kod:
rs.Fields("Sipariş No")
yerine alttaki gibi yazmazsanız eğer hücrelerde boş varsa kayma olup karışıyor diye biliyorum tecrübelerimden.
Tabii diğerleride aynı.
Kod:
IIf(IsNull(rs.Fields("Sipariş No")) = True, " ",rs.Fields("Sipariş No")
Cevapla
#6
(30/10/2020, 01:44)feraz yazdı:
(29/10/2020, 21:21)kanakan52 yazdı: Çözüldü , teşekkürler..
kodlar aşağıdaki gibidir.

Kod:
Sub kayıtlar()
Dim conn As Object, rs As Object, sat As Long
Set conn = CreateObject("Adodb.connection")
Set rs = CreateObject("Adodb.recordset")
ListView1.ListItems.Clear
conn.Open ("provider=microsoft.ace.oledb.12.0;data source=" & ThisWorkbook.Path & _
        "\1111.xlsx;extended properties=""excel 12.0;hdr=yes"";")
sorgu = "select * from [Sipariş Listesi$]"

rs.Open sorgu, conn, 1, 1

ListView1.ListItems.Clear
Dim satir As Integer
    On Error Resume Next
    If Not rs.EOF Then
        Do While Not rs.EOF
Set umit = ListView1.ListItems.Add(, , rs.Fields("Sipariş No"))
umit.SubItems(1) = rs.Fields("Sipariş Tarih")
umit.SubItems(2) = Format(rs.Fields("Sipariş Platform"), "dd.mm.yyyy")
umit.SubItems(3) = rs.Fields("Hediye Çeki")
umit.SubItems(4) = rs.Fields("Kargo Barkodu")
umit.SubItems(5) = rs.Fields("Durum")
umit.SubItems(6) = rs.Fields("Fatura Adı")
umit.SubItems(7) = rs.Fields("Fatura Adresi")
umit.SubItems(8) = rs.Fields("Fatura İl")
umit.SubItems(9) = rs.Fields("Fatura İlçe")
umit.SubItems(10) = rs.Fields("Fatura Seri No")
umit.SubItems(11) = rs.Fields("Fatura Sıra No")
umit.SubItems(12) = rs.Fields("E-Fatura No")
umit.SubItems(13) = rs.Fields("E-Fatura Senaryo")
umit.SubItems(14) = rs.Fields("E-Fatura Tarihi")
umit.SubItems(15) = rs.Fields("E-Fatura ETN")
umit.SubItems(16) = rs.Fields("TC No")
umit.SubItems(17) = rs.Fields("Vergi No")
umit.SubItems(18) = rs.Fields("Vergi Dairesi")
umit.SubItems(19) = rs.Fields("Telefon")
umit.SubItems(20) = rs.Fields("E-Posta")
umit.SubItems(21) = rs.Fields("Üye No")
umit.SubItems(22) = rs.Fields("Ödeme Yöntemi")
umit.SubItems(23) = rs.Fields("Teslimat Adı")
umit.SubItems(24) = rs.Fields("Teslimat Adresi")
umit.SubItems(25) = rs.Fields("Teslimat İl")
umit.SubItems(26) = rs.Fields("Teslimat İlçe")
umit.SubItems(27) = rs.Fields("Toplam Kargo (TL)")
umit.SubItems(28) = rs.Fields("Toplam Tutar (TL)")
umit.SubItems(29) = rs.Fields("Ürün Kodu")
umit.SubItems(30) = rs.Fields("Ürün Adı")
umit.SubItems(31) = rs.Fields("Ürün Varyant 1")
umit.SubItems(32) = rs.Fields("Ürün Varyant 2")
umit.SubItems(33) = rs.Fields("Ürün Varyant 3")
umit.SubItems(34) = rs.Fields("Ürün KDV")
umit.SubItems(35) = rs.Fields("Ürün Adeti")
umit.SubItems(36) = rs.Fields("Ürün Fiyatı")
umit.SubItems(37) = rs.Fields("Ürün Toplam Tutarı")



  rs.MoveNext
           
Refresh.ListView1
        Loop
    End If
    rs.Close: con.Close
    Set rs = Nothing
End Sub

Kod:
rs.Fields("Sipariş No")
yerine alttaki gibi yazmazsanız eğer hücrelerde boş varsa kayma olup karışıyor diye biliyorum tecrübelerimden.
Tabii diğerleride aynı.
Kod:
IIf(IsNull(rs.Fields("Sipariş No")) = True, " ",rs.Fields("Sipariş No")


@feraz hocam selamlar,

Yoğunluktan ancak bakabildim. Dediğiniz gibi revize edeceğim.

sevgiler, saygılar..
Cevapla

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

Yorum yapmak için üye olmanız gerekiyor

ya da