• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

listbox'a hücreleri listeleme

Katılım
7 Ağustos 2006
Mesajlar
472
Excel Vers. ve Dili
EXCEL 2003 TÜRKÇE
merhaba
sayfa1 de A sutununda tarihler, B,C,D,E,F,G sutununda bilgiler var.Örneğin bugün 10.02.2010 , a sütününda da 10.02.2010 daki satırdaki bilgileri listboxa yazsın.
ÖRNEK
A1=10.02.2010 B1=X GIDA C1=500 TL D1=Y GIDA E1=200 TL F1=Z GIDA G1=100 TL

olsun listbox eğer bugün 10.02.2010 ise
şöyle listeleme yapsın
10.02.2010 X GIDA 500 TL
10.02.2010 Y GIDA 200 TL
10.02.2010 Z GIDA 100 TL
olarak listelesin.yani tarih ne ise a1 sütünunda o tarihi bulacak ve o bilgileri listelicek.
yardımlarınızı bekliyorum.forumda gerekli aramaları yaptım ama tam olarak bulamadım sorumun cevabını.şimdiden teşekkürler.
 
merhaba
sayfa1 de A sutununda tarihler, B,C,D,E,F,G sutununda bilgiler var.Örneğin bugün 10.02.2010 , a sütününda da 10.02.2010 daki satırdaki bilgileri listboxa yazsın.
ÖRNEK
A1=10.02.2010 B1=X GIDA C1=500 TL D1=Y GIDA E1=200 TL F1=Z GIDA G1=100 TL

olsun listbox eğer bugün 10.02.2010 ise
şöyle listeleme yapsın
10.02.2010 X GIDA 500 TL
10.02.2010 Y GIDA 200 TL
10.02.2010 Z GIDA 100 TL
olarak listelesin.yani tarih ne ise a1 sütünunda o tarihi bulacak ve o bilgileri listelicek.
yardımlarınızı bekliyorum.forumda gerekli aramaları yaptım ama tam olarak bulamadım sorumun cevabını.şimdiden teşekkürler.

Örnek dosya ekleyin.Bizmi ekleyelim örnek dosyayı.:cool:
Üzerine bir miktar veri giriniz.:cool:
 
yanıt

Kod:
Private Sub ComboBox1_Change()
Dim sat, s As Long
ListBox1.Clear
ListBox1.ColumnCount = 7
ListBox1.ColumnWidths = "60,60,60,60,60,60,60"
    For sat = 1 To Cells(65536, "A").End(xlUp).Row
        If Cells(sat, "a") Like ComboBox1 Then
            ListBox1.AddItem
            ListBox1.List(s, 0) = Format(Cells(sat, "a"), "dd.mm.yyyy")
            ListBox1.List(s, 1) = Cells(sat, "b")
            ListBox1.List(s, 2) = Cells(sat, "c")
            ListBox1.List(s, 3) = Cells(sat, "d")
            ListBox1.List(s, 4) = Cells(sat, "e")
            ListBox1.List(s, 5) = Cells(sat, "f")
            ListBox1.List(s, 6) = Cells(sat, "g")
            s = s + 1
        End If
    Next
End Sub
Kod:
Private Sub UserForm_Initialize()
Dim sat, s As Long
ComboBox1.Clear
    For sat = 1 To Cells(65536, "a").End(xlUp).Row
        If Not WorksheetFunction.CountIf(Range("a1:a" & sat), Cells(sat, "a")) > 1 Then
        ComboBox1.AddItem
        ComboBox1.List(s, 0) = Format(Cells(sat, "a"), "dd.mm.yyyy")
        s = s + 1
        End If
    Next
End Sub
 

Ekli dosyalar

teşekkürler ama bu combobox ile listbox u sayfaya koyarsak nasıl olacak.yani userformda olmayacak.
 
dosya eklenmiyor tekrar yazıyorum nasıl bişe olacağını.

A B C D E F G
10.02.2010 x gıda 300 y gıda 200 z gıda 50
11.02.2010 g gıda 150 x gıda 200 k gıda 225

benim istediğim bu sayfa1 adlı sayfadaki listboxa bugünün tarihine göre listeleme yapılsın
listeleme şöyle olacak.

10.02.2010 x gıda 300
10.02.2010 y gıda 200
10.02.2010 z gıda 50

olarak listelicek.
 
Dosyanız ektedir.:cool:
Kod:
Sub listele()
Dim i As Long, sat As Long, k As Range, adr As String, sut As Integer
Dim ilk As Long
ListBox1.Clear
sat = Cells(65536, "A").End(xlUp).Row
sut = Cells(1, 256).End(xlToLeft).Column - 1
Set k = Range("A1:A" & sat).Find(Date, , xlValues, xlWhole)
If Not k Is Nothing Then
    adr = k.Address
    Do
        ilk = x
        For i = 2 To sut Step 2
            ListBox1.AddItem
            ListBox1.List(x, 1) = Format(Cells(k.Row, "A").Value, "dddd")
            ListBox1.List(x, 2) = Cells(k.Row, i).Value
            ListBox1.List(x, 3) = Format(Cells(k.Row, i + 1).Value, "#,##0.00")
            x = x + 1
        Next
        ListBox1.List(ilk, 0) = Format(Cells(k.Row, "A").Value, "dd.mm.yyyy")
        Set k = Range("A1:A" & sat).FindNext(k)
    Loop While Not k Is Nothing And k.Address <> adr
End If
End Sub
 

Ekli dosyalar

hocam çok teşekkürler.tek sorun kaldı.örneğin 11.2.2010 da 2 bilgi var ozman listboxtaki 3. sadece tarih yazan satırı listelememesini nasıl sağlarız

1 de hocam listele butonuna tıklamadan çalışmayı açınca otomatik gelebilirmi??
 
hocam çok teşekkürler.tek sorun kaldı.örneğin 11.2.2010 da 2 bilgi var ozman listboxtaki 3. sadece tarih yazan satırı listelememesini nasıl sağlarız

1 de hocam listele butonuna tıklamadan çalışmayı açınca otomatik gelebilirmi??
7 numaralı mesajda dosyayı güncelledim.Bakın bakalım istediğiniz gibi olmuşmu. :D :cool:
 
hocam dosyanızı indirdim ama yine sorun var.
şimdi bizim sorunumuz şuydu.örneğin 11.02.2010 tarihinde iki alacaklıya borcumuz var.
o zaman listbox şöyle listeleme yapsın.
11.02.2010 perşembe x gıda 100 tl
11.02.2010 perşembe y gıda 200 tl

ama 3 kayıt varsa 3 satır da yazacak.
 
hocam dosyanızı indirdim ama yine sorun var.
şimdi bizim sorunumuz şuydu.örneğin 11.02.2010 tarihinde iki alacaklıya borcumuz var.
o zaman listbox şöyle listeleme yapsın.
11.02.2010 perşembe x gıda 100 tl
11.02.2010 perşembe y gıda 200 tl

ama 3 kayıt varsa 3 satır da yazacak.
Zaten ilk yolladdığım o şekilde idi.Siz sonra onu istemediniz.Yaptığım gibi istediniz.:cool:
 
hocam şimdi örneğin bugünün tarihinde 2 borcumuz var.sizin programda şöyle listeliyordu

11.02.2010 perşembe x gıda 100 tl
11.02.2010 perşembe y gıda 50 tl
11.02.2010 perşembe
yani 3. bir borcumuz yok ama listboxta 3 satır var ve 3.tarihte borç yazmadan sadece tarih yazıyor.benim istediğim yani o gün kaç tane borcum varsa o kadar satır olsun listboxta.
 
hocam dosyanızı indirdim ama yine sorun var.
şimdi bizim sorunumuz şuydu.örneğin 11.02.2010 tarihinde iki alacaklıya borcumuz var.
o zaman listbox şöyle listeleme yapsın.
11.02.2010 perşembe x gıda 100 tl
11.02.2010 perşembe y gıda 200 tl

ama 3 kayıt varsa 3 satır da yazacak.
Ekteki dosya gibimi?:cool:
Kod:
Sub listele()
Dim i As Long, sat As Long, k As Range, adr As String, sut As Integer
ListBox1.Clear
sat = Cells(65536, "A").End(xlUp).Row
sut = Cells(1, 256).End(xlToLeft).Column - 1
Set k = Range("A1:A" & sat).Find(Date, , xlValues, xlWhole)
If Not k Is Nothing Then
    adr = k.Address
    Do
        For i = 2 To sut Step 2
            If Cells(k.Row, i).Value <> "" Then
                ListBox1.AddItem
                ListBox1.List(x, 0) = Format(Cells(k.Row, "A").Value, "dd.mm.yyyy")
                ListBox1.List(x, 1) = Format(Cells(k.Row, "A").Value, "dddd")
                ListBox1.List(x, 2) = Cells(k.Row, i).Value
                ListBox1.List(x, 3) = Format(Cells(k.Row, i + 1).Value, "#,##0.00")
                x = x + 1
            End If
        Next
        Set k = Range("A1:A" & sat).FindNext(k)
    Loop While Not k Is Nothing And k.Address <> adr
End If
End Sub
 

Ekli dosyalar

Geri
Üst