ListView Yineleme?

Katılım
16 Haziran 2007
Mesajlar
163
Excel Vers. ve Dili
Excel 2003 - Türkçe
merhaba;
Düzenlediğim formda listbox tan seçilen isme göre başka bir sayfadan verileri çekiyor,ve bu veriler ListViewde görüntüleniyor.
Benim problemim Listboxtan başka bir isim seçtiğimde verileri sayfaya aktarıyor ancak ListViewde güncellemiyor güncellemesi için Kapatıp açmam gerekiyor ListView1.Refresh fonksiyonunu denedim ama olmuyor..yardımcı olan arkadaşlara teşekkür ederim....
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
MESALA;

Kod:
'userform lw_Sts de çalışma sayfasını göster
Sub Liste_Alis()
Mdl_00_Acls.DegiskenAl
Dim i%, y%
With uf_isl.lw_Als
     .Sorted = False
     .ListItems.Clear
     .ColumnHeaders.Clear
     .View = lvwReport
     .FullRowSelect = True
     .Gridlines = True
     .LabelEdit = lvwManual
    
    'Fiş No  PİKNİK  EV  LOKANTA SANAYİ
      With .ColumnHeaders
           .Add , , "SrNo", 40
           .Add , , "FşNo", 60, lvwColumnLeft
           .Add , , "Piknik", 60, lvwColumnRight
           .Add , , "Ev", 60, lvwColumnRight
           .Add , , "Lokanta", 60, lvwColumnRight
           .Add , , "Sanayi", 60, lvwColumnRight
      End With
      
      'kolonları doldur
      For i = 4 To ckBU_sfALS.Cells(65536, "b").End(xlUp).Row
          y = y + 1
          .ListItems.Add , , Format(y, "000")
          .ListItems(y).SubItems(1) = Format(ckBU_sfALS.Cells(i, 1), "##")
          .ListItems(y).SubItems(2) = ckBU_sfALS.Cells(i, 2)
          .ListItems(y).SubItems(3) = ckBU_sfALS.Cells(i, 3)
          .ListItems(y).SubItems(4) = ckBU_sfALS.Cells(i, 4)
          .ListItems(y).SubItems(5) = ckBU_sfALS.Cells(i, 5)
      Next i
      'Listwievde sıralamak için
      .SortKey = 0           'Kolon nosu
      .Sorted = True
End With
End Sub
USERFORM
Kod:
'UserForm Açılış Yüklemesi\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
Private Sub UserForm_Initialize()                                                                '||
Application.ScreenUpdating = False                     'yapılan işlemleri gösterme               '||
Call Mdl_00_Acls.DegiskenAl:        Call Mdl_10_Sfr.SifreAc        'genel değişkenleri oku       '||
YeniSatis = True                                       'Açılışta yeni satış kaydı yapmayı açtık  '||
YeniAlis = True                                        'Açılışta yeni satış kaydı yapmayı açtık  '||
'------------------------------------------------------------------------------------------------<<<
DTPicker1.Value = Date                                 'bug&#252;n&#252;n tarihini oku                     '||
Dim i%, j%, x%                                         'D&#246;ng&#252;de kullan&#305;lacak de&#287;i&#351;kenler         '||
'------------------------------------------------------------------------------------------------<<<
Call AyS_kont:             Call AyB_Kont  'Ay sonu ise eskileri kopyalar, Ayba&#351;&#305; ise devir ister.'||
'------------------------------------------------------------------------------------------------<<<
With Toolbar1                                                                                    '||
     .ImageList = ImageList1                                                                     '||
     .Buttons.Add(, , , tbrDefault, 2).TooltipText = "Yeni"                                      '||
     .Buttons.Add(, , , tbrDefault, 1).TooltipText = "G&#246;ster"                                    '||
     .Buttons.Add(, , , tbrDefault, 3).TooltipText = "Sil"                                       '||
     .Buttons.Add , , , tbrSeparator                                                             '||
     .Buttons.Add(, , , tbrDefault, 4).TooltipText = "Yard&#305;m"                                    '||
     .Buttons.Add , , , tbrSeparator                                                             '||
     .Buttons.Add(, , , tbrDefault, 5).TooltipText = "Hakk&#305;nda"                                  '||
End With                                                                                         '||
With Toolbar2                                                                                    '||
     .ImageList = ImageList1                                                                     '||
     .Buttons.Add(, , , tbrDefault, 2).TooltipText = "Yeni"                                      '||
     .Buttons.Add(, , , tbrDefault, 1).TooltipText = "G&#246;ster"                                    '||
     .Buttons.Add(, , , tbrDefault, 3).TooltipText = "Sil"                                       '||
     .Buttons.Add , , , tbrSeparator                                                             '||
     .Buttons.Add(, , , tbrDefault, 4).TooltipText = "Yard&#305;m"                                    '||
     .Buttons.Add , , , tbrSeparator                                                             '||
     .Buttons.Add(, , , tbrDefault, 5).TooltipText = "Hakk&#305;nda"                                  '||
End With
'------------------------------------------------------------------------------------------------<<<
[B][COLOR="GREEN"]Call Liste_Satis[/COLOR][/B]:            Call Liste_Alis           'sat&#305;&#351;lar/al&#305;&#351;lar sayfalar&#305;n&#305; listele     '||
'------------------------------------------------------------------------------------------------<<<
'Text Box Atamalar&#305;                                                                              '||
Call BirmF_Ata:              Call BirmF_kilitle:           uf_isl.Txt_Adt.Value = 1              '||
'------------------------------------------------------------------------------------------------<<<
'comboboxlara se&#231;ilecek de&#287;er al                                                                 '||
'Multipage, Sat&#305;&#351;
With uf_isl
    .cb_stk.RowSource = ckBU_sfTNM.Name & "!e2:e" & ckBU_sfTNM.[e65536].End(3).Row               '||
    .cb_stk.ListIndex = 1                                   'Stok tipleri      ikinci olan       '||
    .cb_isl.RowSource = ckBU_sfTNM.Name & "!f2:f" & ckBU_sfTNM.[f65536].End(3).Row               '||
    .cb_isl.ListIndex = 0                                   'i&#351;lem tipleri    ilk olan           '||
    .cb_mus.RowSource = ckBU_sfSAT.Name & "!d3:d" & ckBU_sfSAT.[d65536].End(3).Row               '||
    .cb_mus.Value = "L&#252;tfen M&#252;&#351;teri Ad&#305;n&#305; Giriniz veya Se&#231;iniz"  'M&#252;&#351;teri adlar&#305;   Se&#231;iniz!!!    '||
    'Multipage, Tan&#305;mlar
    .cb_hes.RowSource = ckBU_sfTNM.Name & "!a2:a" & ckBU_sfTNM.[a65536].End(3).Row               '||
    .cb_hes.ListIndex = 0                                   'hesap sorumlular&#305; ilk olan          '||
    .cb_arc.RowSource = ckBU_sfTNM.Name & "!b2:b" & ckBU_sfTNM.[b65536].End(3).Row               '||
    .cb_arc.ListIndex = 0                                   'ara&#231; sorumlular&#305;  ilk olan          '||
    .cb_sir.RowSource = ckBU_sfTNM.Name & "!c2:c" & ckBU_sfTNM.[c65536].End(3).Row               '||
    .cb_sir.ListIndex = 0                                   'sirketler         ilk olan          '||
    .cb_byi.RowSource = ckBU_sfTNM.Name & "!d2:d" & ckBU_sfTNM.[d65536].End(3).Row               '||
    .cb_byi.ListIndex = 0                                   'Bayiler           ilk olan          '||
End With
'&#199;al&#305;&#351;ma Sayfalar&#305; comboboxu
If ckBU.Worksheets.Count > (UBound(ckBU_Cmb_SfAd) + 1) Then '&#199;al&#305;&#351;ma sayfalar&#305;n&#305; dizideki ile kar&#351;&#305;la&#351;t&#305;r '||
    For i = 1 To ckBU.Worksheets.Count                      '1 den son sayfaya kadar d&#246;ng&#252; kur '||
        For j = 0 To UBound(ckBU_Cmb_SfAd)                  '0 Dizi indeksinden son  dizi indeksine kadar d&#246;ng&#252; kur '||
            'sayfa ad&#305; dizideki sayfa ad&#305;na e&#351;itmi bak evetse x e 1 ekleyerek devam et (Ama&#231;?)
            If Sheets(i).Name = ckBU_Cmb_SfAd(j) Then x = x + 1
        Next j                                   '0 Dizi indeksinden son  dizi indeksine d&#246;ng&#252;s&#252;nden &#231;&#305;k '||
            If x = 0 Then                        'x = 0 sa
                cb_syf.AddItem Sheets(i).Name    'comboxa sayfay&#305; ekle
            End If                               'x = 0 de&#287;ilse &#231;&#305;k
        x = 0                                    'x = 0 yap i d&#246;ng&#252;s&#252;ne d&#246;n
    Next i                                       'i d&#246;g&#252;s&#252;nden &#231;&#305;k
    cb_syf.ListIndex = (cb_syf.ListCount - 1)    'Son eklenen sayfay&#305; comboboxta g&#246;ster
Else
    cb_syf.Value = "G&#246;sterilecek Sayfa Yok"
End If
Application.ScreenUpdating = True
End Sub                                                                                          '||

a&#231;&#305;l&#305;&#351;ta y&#252;kledikten sonra, SAYFAYA YEN&#304; KAYIT YAPINCA G&#220;NCELLER

Kod:
Sub Kaydet_Satis()
Mdl_00_Acls.DegiskenAl
Dim kaysat As Integer
'//us_isl user formunda girilen sat&#305;&#351; bilgilerini sat&#305;&#351; sayfas&#305;na yaz
kaysat = ckBU_sfSAT.Cells(65536, "b").End(xlUp).Row + 1
'StokTipi    Fi&#351; T&#252;r&#252;    fi&#351; AD SOYAD    Adet    BF  Tutar
 ckBU_sfSAT.Cells(kaysat, 1) = Format((uf_isl.cb_stk), "@")
 ckBU_sfSAT.Cells(kaysat, 2) = Format((uf_isl.cb_isl), "@")
 ckBU_sfSAT.Cells(kaysat, 3) = Format((uf_isl.Txt_Fis), "@")
 ckBU_sfSAT.Cells(kaysat, 4) = UCaseTr(uf_isl.cb_mus.Value)
 ckBU_sfSAT.Cells(kaysat, 5) = Format((uf_isl.Txt_Adt), "0")
 ckBU_sfSAT.Cells(kaysat, 6) = Format((uf_isl.Txt_Bf), "#,##0.00") * 1
 ckBU_sfSAT.Cells(kaysat, 7) = Format((uf_isl.Txt_Tut), "#,##0.00") * 1
[B][COLOR="GREEN"]Call Liste_Satis[/COLOR][/B]                                                    'sat&#305;&#351;lar sayfas&#305;n&#305; listele '||
Call Yeni_Satis
End Sub
 
Katılım
16 Haziran 2007
Mesajlar
163
Excel Vers. ve Dili
Excel 2003 - Türkçe
Sn hsayar ilginize &#231;ok te&#351;ekk&#252;r ederim ancak ben bu kodlarda arad&#305;&#287;&#305;m &#351;eyi bulamad&#305;m bir &#246;rnek dosyayla g&#246;ndermeniz m&#252;mk&#252;nm&#252;
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
sn iayd&#305;n
normalde listwiev nesnesine veriler bir kere gelecekse bu verileri Userform_In&#305;talize de tan&#305;mlar&#305;z.

ancak g&#252;ncellemeler yap&#305;lacaksa (Her yeni kay&#305;ttan sonra) listwievi g&#252;ncellemek gerekir.


bunun i&#231;in bir modue listwievi doldurmak i&#231;in kulland&#305;&#287;&#305;n&#305;z kodlar&#305; yaz&#305;n



Kod:
Sub Listwiev_guncelle()

................... (bu araya yaz&#305;n)
end sub
Sonra Userformda


Kod:
private sub useform_Initalize
Call Listwiev_guncelle

End sub
Kod:
private sub Listbox_hangi olayla sayfay yeni bilgi geliyorsa()
Call Listwiev_guncelle
End sub
[/code

&#351;eklinde tan&#305;mlay&#305;n.
 
Katılım
16 Haziran 2007
Mesajlar
163
Excel Vers. ve Dili
Excel 2003 - Türkçe
Hocam te&#351;ekk&#252;r ederim istedi&#287;im gibi oldu ancak yineledik&#231;e ListViewde s&#252;tun say&#305;s&#305;n&#305; artt&#305;r&#305;yor Tan&#305;mlad&#305;&#287;&#305;m ba&#351;l&#305;klar&#305; arka arkaya ekliyor ve ve sayfadaki son sat&#305;r&#305; alm&#305;yor kodlar a&#287;&#351;a&#287;&#305;daki gibi

Sub Listwiev_guncelle()
Dim i As Integer
ListView1.View = lvwReport
'Kolanlara isim ver
With ListView1.ColumnHeaders
.Add , , " Tarih", 60
.Add , , " Evrak No", 60
.Add , , " A&#231;&#305;klama ", 201
.Add , , " Bor&#231; ", 64, lvwColumnRight
.Add , , " Alacak ", 64, lvwColumnRight
.Add , , " Bakiye ", 64, lvwColumnRight
.Add , , " B-A ", 27, lvwColumnCenter
End With
'Kolanlara verileri al
c = WorksheetFunction.CountA(ActiveSheet.Range("A:A"))
With ListView1
.ListItems.Clear
.Refresh
For i = 10 To c
X = X + 1
.ListItems.Add , , Cells(i + 1, 1)
.ListItems(X).SubItems(1) = Cells(i + 1, 2)
.ListItems(X).SubItems(2) = Cells(i + 1, 3)
.ListItems(X).SubItems(3) = Cells(i + 1, 4)
.ListItems(X).SubItems(3) = Format(ListView1.ListItems(X).SubItems(3), "#,##0.00")
.ListItems(X).SubItems(4) = Cells(i + 1, 5)
.ListItems(X).SubItems(4) = Format(ListView1.ListItems(X).SubItems(4), "#,##0.00")
.ListItems(X).SubItems(5) = Cells(i + 1, 6)
.ListItems(X).SubItems(5) = Format(ListView1.ListItems(X).SubItems(5), "#,##0.00")
.ListItems(X).SubItems(6) = Cells(i + 1, 7)
.ListItems(X).SubItems(7) = Cells(i + 1, 8)

Next
End With
ListView1.FullRowSelect = True
ListView1.Gridlines = True
End Sub
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
satır sayısının artması gerekir sütun değil bilemiyeceğim.
 
Katılım
16 Haziran 2007
Mesajlar
163
Excel Vers. ve Dili
Excel 2003 - Türkçe
bencede &#246;le ama yinede &#231;ok te&#351;ekk&#252;r ederim yard&#305;mlar&#305;n&#305;zdan dolay&#305;...
 

teknikyapı

Altın Üye
Katılım
30 Nisan 2007
Mesajlar
396
Excel Vers. ve Dili
Office 365
Altın Üyelik Bitiş Tarihi
13-01-2026
Merhaba.Tahminim yukar&#305;daki kodlar&#305;n ba&#351;&#305;na
ListView1.ListItems.Clear

kodunu ilave ederseniz istedi&#287;iniz olur.Bir deneyin.
 
Katılım
16 Haziran 2007
Mesajlar
163
Excel Vers. ve Dili
Excel 2003 - Türkçe
ilginize te&#351;ekk&#252;r ederim ancak onu denedim bir faydas&#305; olmad&#305; zaten onun fazla bi &#246;nemi yok maksat i&#351;imi g&#246;rmesi benim &#351;uanki as&#305;l problemim sayfan&#305;n veri bulunan son sat&#305;r&#305;n&#305; almamas&#305;
sayg&#305;lar
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
c = WorksheetFunction.CountA(ActiveSheet.Range("A:A"))
yerine
Kod:
Dim ckBU As Workbook
Dim csSR As Worksheet
Set ckBU = ThisWorkbook: Set csSR = ckBU.Sheets("Sayfan&#305;z&#305;nAd&#305;")
c = csSR.Cells(65536, 1).End(3).Row
olarak deneyiniz
 
Katılım
16 Haziran 2007
Mesajlar
163
Excel Vers. ve Dili
Excel 2003 - Türkçe
Sn;hsayar &#231;ok te&#351;ekk&#252;r ederim
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
rica ederim.
 
Üst