Çözüldü Listivew1'de gösterilen verileri excell sayfasına aktarma

Katılım
12 Ocak 2009
Mesajlar
838
Excel Vers. ve Dili
2003
Altın Üyelik Bitiş Tarihi
07-02-2024
Merhaba arkadaşlar.
Listview1 de gösterilen verileri listview1'in ikinci kolonundan başlarak devam eden diğer kolonlardaki verileri ITK_KARAR_DOSYASI isimli şablona B6 hücresinden başlarak aktarmak istiyorum, forumdaki örnekleri inceledim başaramadım.

Ekran Alıntısı.PNG
 

Ekli dosyalar

  • 176.8 KB Görüntüleme: 9

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Açtığınız son konulardaki, daha doğrusu AGİ değerlerinin 1 artarak hücrelere yazıldığını belirttiğiniz konudan bu yana eklediğiniz belgelerde,
ekran görüntülerini verdiğiniz userformları açmaya çalıştığımda Ms.Excel donup kalıyor ve bu userformları hiç görüntüleyemedim.

Belgeyi indiren başka üye var mıdır, userformu görüntüleyebilmiş midir bilemiyorum.

Zaten benim bilgisayarımda ACCESS olmadığından; acaba hangi sayfadan veri alınıyor diye bakabilmek için,
mdb uzantılı belgeyi excel üzerinden defalarca aç kapat yaparak bakabiliyorum.
.
 
Katılım
12 Ocak 2009
Mesajlar
838
Excel Vers. ve Dili
2003
Altın Üyelik Bitiş Tarihi
07-02-2024
Üstadım bir yerlerde bir sıkıntı olduğu muhakkak.
Çalışmalarımda login olduktan sonra diğer userformların veritabanı bağlantı yolu genellikle excell sayfalarında oluyor. Yani login olmadan userformlar çalıştırılmak istenince yol bulunamadığı için excell kararsız hale geliyor.

Sorunuma gelince sn halit3 hocanın forumdaki çalışmalarından ve sizin yöntemlerinizi harmanlayarak çözdüm.

Kod:
Private Sub CommandButton1_Click()
Application.ScreenUpdating = False

On Error Resume Next

Dim s1, s2 As Worksheet
Dim i, k As Long

Set s1 = Sheets("ITK_KARAR_DOSYASI")
Set s2 = Sheets("ITK_KARAR_TUTANAĞI")

i = WorksheetFunction.Max(s1.[A:A]) + 5
If i > 5 Then s1.Range("A6:M" & i).ClearContents

For n = 1 To Val(ListView1.ColumnHeaders.Count)
Sheets("ITK_KARAR_DOSYASI").Cells(1, n).Value = Sheets("ITK_KARAR_DOSYASI").Cells(1, n).Value
Next

sat1 = Worksheets("ITK_KARAR_DOSYASI").[b65536].End(3).Row + 1
For r = 1 To ListView1.ListItems.Count
For i = 2 To ListView1.ColumnHeaders.Count
Sheets("ITK_KARAR_DOSYASI").Cells(sat1, i).Value = ListView1.ListItems(r).ListSubItems(i).Text
Next i
sat1 = sat1 + 1
Next r
For i = 1 To s1.Cells(Rows.Count, "B").End(3).Row - 5
s1.Range("A" & i + 5) = i
Next
Application.ScreenUpdating = True

End Sub
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
En faydalısı, derleme/uyarlama yööntemi. Kalıcı öğrenmeyi sağlar, benim gibi siz de kodlarla uğraşmaya devam edin.

Kodları düğmelere filan tıklayarak değil, F8 tuşuyla kodları adım adım çalıştırıp
(VBA ekranındaki menü çubuğundaki Locals Window seçeneğini aktif hale getirin derim ben)
kod satırlarının yaptığı işlemleri satır satır takip etmek, kodlarda küçük değişiklikler yapıp bunların işleyişe, değerlere etkisini gözlemlemek
çok faydalı oluyor.
.
 
Üst