• DİKKAT

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

Listbox Liste Satırı

Katılım
19 Eylül 2012
Mesajlar
322
Excel Vers. ve Dili
2010 türkçe
Merhaba, Kişiler sayfasından Listbox1'e aldığım veriler üzerine çift tıkladığımda seçili kişiye ait bilgileri değiştirebiliyorum ve Listbox1 yenileniyor. Buraya kadar her şey tamam fakat, Listbox1 yenilenince tıklamış olduğum listbox satırı sıfırlanıyor ve en üste gidiyor. Listbox'ta 200 kişi var ve her tıkladıktan sonra sağdaki kaydırma çubuğundan en son kaldığım yeri tekrar bulmak zorunda kalıyorum. Listbox yenilendiğinde seçili olan satır indexi sıfırlanmasa olur mu? yani tekrar mause işlemi yapmak istemiyorum. Yardımcı olur musunuz.

Kodlarım Bu

Private Sub UserForm_initialize()
ListBox1.RowSource = "Sayfa1!A1:E" & Sheets("duyuru").[A65536].End(xlUp).Row
End Sub

Private Sub ListBox1_Click()
TextBox1.Value = ListBox1.Column(2)
End Sub

Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
On Error Resume Next
Set bul = Sheets("Sayfa1").Range("A1:C200").Find(TextBox1, , xlValues, xlWhole)
If Not bul Is Nothing Then
adres = bul.Address
Do
Sheets("Sayfa1").Cells(bul.Row, "A") = "LİSTEYE KOY"
Set bul = Sheets("Sayfa1").Range("A1:C200").FindNext(bul)
Loop While Not bul Is Nothing And bul.Address <> adres
End If
End Sub
 
Mantık olarak listbox nesnesindeki veriler yenileniyorsa ve değişiyorsa aynı veriyi tekrardan nasıl seçebiliyorsunuz?
 
Vermiş olduğunuz kodlarda listbox a ait yenileme kodu yok sadece açılışta lisbox nesnesini doldurun bölüm var
Kod:
Private Sub UserForm_initialize()
ListBox1.RowSource = "Sayfa1!A1:E" & Sheets("duyuru").[A65536].End(xlUp).Row
End Sub

kodların tamamını veya örnek dosyanızı ekleyiniz.
 
Mantık olarak listbox nesnesindeki veriler yenileniyorsa ve değişiyorsa aynı veriyi tekrardan nasıl seçebiliyorsunuz?
hocam listboxta 5 sütun var ve ben bir sütununda değişiklik yapıyorum. yapmak istediğim şey listboxta o anda hangi satıra çift tıklamış isem listbox yenilenince yine o satırda seçili kalmak istiyorum.


Private Sub UserForm_initialize()
ListBox1.RowSource = "Sayfa1!A1:E" & Sheets("Sayfa1").[A65536].End(xlUp).Row
End Sub

Private Sub ListBox1_Click()
TextBox1.Value = ListBox1.Column(2)
End Sub

Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
On Error Resume Next
Set bul = Sheets("Sayfa1").Range("A1:C200").Find(TextBox1, , xlValues, xlWhole)
If Not bul Is Nothing Then
adres = bul.Address
Do
Sheets("Sayfa1").Cells(bul.Row, "A") = "LİSTEYE KOY"
Set bul = Sheets("Sayfa1").Range("A1:C200").FindNext(bul)
Loop While Not bul Is Nothing And bul.Address <> adres
End If
End Sub
 
Listboxa çift tıkladığımda istediğim makro görevini eksiksiz yapıyor ve güncel değerler listboxta yenileniyor. Buraya kadar herşey normal istediğim şu; Listboxa çift tıkladığımda yenilenen listbox o anda seçili olan satır indexini sıfırlamasın en son nereye tıkladıysam orada seçili kalsın.
 
Buyurun.:cool:
Kod:
Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Dim sat As Long
On Error Resume Next
sat = ListBox1.ListIndex
ListBox1.RowSource = ""
Set bul = Sheets("Sayfa1").Range("A1:C200").Find(TextBox1, , xlValues, xlWhole)
If Not bul Is Nothing Then
adres = bul.Address
Do
Sheets("Sayfa1").Cells(bul.Row, "A") = "LİSTEYE KOY"
Set bul = Sheets("Sayfa1").Range("A1:C200").FindNext(bul)
Loop While Not bul Is Nothing And bul.Address <> adres
End If
ListBox1.RowSource = "Sayfa1!A1:E" & Sheets("Sayfa1").[A65536].End(xlUp).Row
ListBox1.ListIndex = sat
End Sub
 
Buyurun.:cool:
Kod:
Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Dim sat As Long
On Error Resume Next
sat = ListBox1.ListIndex
ListBox1.RowSource = ""
Set bul = Sheets("Sayfa1").Range("A1:C200").Find(TextBox1, , xlValues, xlWhole)
If Not bul Is Nothing Then
adres = bul.Address
Do
Sheets("Sayfa1").Cells(bul.Row, "A") = "LİSTEYE KOY"
Set bul = Sheets("Sayfa1").Range("A1:C200").FindNext(bul)
Loop While Not bul Is Nothing And bul.Address <> adres
End If
ListBox1.RowSource = "Sayfa1!A1:E" & Sheets("Sayfa1").[A65536].End(xlUp).Row
ListBox1.ListIndex = sat
End Sub

sayın hocam denedim ama olmadı. seçili satır sürekli değişiyor. tıkladığım satırda kalmıyor
 
Sayın hocam emeğiniz için teşekkür ederim. Dosyayı indirdim ve denedim fakat kaydırma çubuğunu 160. satırlara getirip tıkladığımda kod işe yaramıyor.
Lisboxın scroll özellikleri yoktur.
Kaydırma çubuğunu kod ile istediğiniz bir konuma normal olarak getiremezsiniz.:cool:
 
Geri
Üst