Listbox.List hata veriyor.

esnaf88

Altın Üye
Katılım
12 Mayıs 2005
Mesajlar
36
Altın Üyelik Bitiş Tarihi
31-01-2026
Private Sub UserForm_Initialize()
ListeyiYenile
End Sub

Sub ListeyiYenile()
Dim wsFirma As Worksheet
Dim SonSatir As Long

Set wsFirma = ThisWorkbook.Sheets("Firmalar")
lstFirmalar.Clear

SonSatir = wsFirma.Cells(Rows.Count, 1).End(xlUp).Row
If SonSatir > 1 Then
lstFirmalar.List = wsFirma.Range("A2:A" & SonSatir).Value
End If
End Sub

Arkadaşlar merhaba.
Yukarıdaki Makroyu çalıştırdığımda eğer "Firmalar" sayfasında kayıtlı firma yoksa kayıt yapıyor, kaydı tamamlar tamamlamaz aşağıdaki resimde görülen hatayı veriyor.
Söz konusu hatayı nasıl çözebilirim?
Yardımcı olacak arkadaşlara teşekkür ederim.
 

Ekli dosyalar

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,683
Excel Vers. ve Dili
2019 Türkçe
Merhaba.
Listaboxun ayarlarında geçersiz bir şey yapmışsınız.
Form üzerindeki Listbox u silin yerine yenisini ekleyip deneyin.
Yeni Listboxun adını "lstFirmalar " yapmayı unutmayın.

Eğer olmazsa dosyanızı ekleyin kontrol edelim.
 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,683
Excel Vers. ve Dili
2019 Türkçe
Sadece bir firma olduğunda lstFirmalar.List ile listboxa veri alınamıyor. Çünkü = dizi değişkeni olmalı.
Tek bir firma olduğunda AddItem ile listeye eklenecek şekilde kodu güncelledim.

Kod:
Sub ListeyiYenile()
    Dim wsFirma As Worksheet
    Dim SonSatir As Long
    
    Set wsFirma = ThisWorkbook.Sheets("Firmalar")
    lstFirmalar.Clear
    
    SonSatir = wsFirma.Cells(Rows.Count, 1).End(xlUp).Row
    If SonSatir > 2 Then
        lstFirmalar.List = wsFirma.Range("A2:A" & SonSatir).Value
    ElseIf SonSatir > 1 Then
        lstFirmalar.AddItem wsFirma.Range("A2").Value
    End If
End Sub
 

esnaf88

Altın Üye
Katılım
12 Mayıs 2005
Mesajlar
36
Altın Üyelik Bitiş Tarihi
31-01-2026
Sadece bir firma olduğunda lstFirmalar.List ile listboxa veri alınamıyor. Çünkü = dizi değişkeni olmalı.
Tek bir firma olduğunda AddItem ile listeye eklenecek şekilde kodu güncelledim.
Tekrar merhaba.
Userform1 içindeki listbox'ta sıralanan tarih bilgileri önce ay sonra gün olarak geliyor. Gün/Ay/Yıl olarak nasıl düzeltebilirim.
Teşekkür ederim.
 

Ouzz_z

Altın Üye
Katılım
19 Nisan 2024
Mesajlar
98
Excel Vers. ve Dili
LTSC Pro Plus 2024
Altın Üyelik Bitiş Tarihi
20-04-2026
Kod:
' Tüm Verileri ListBox'a Getir
Sub VerileriListele()
    Dim SonSatir As Long
    Dim i As Long, x As Long
    
    lstStok.Clear
    SonSatir = ws.Cells(Rows.Count, 1).End(xlUp).Row
    
    If SonSatir < 2 Then Exit Sub
    
    Dim Veri As Variant
    
        Veri = ws.Range("A2:Q" & SonSatir).Value
        
        For i = 1 To UBound(Veri, 1)
            If IsDate(Veri(i, 2)) Then
                Veri(i, 2) = Format(Veri(i, 2), "dd.mm.yyyy")
            End If
        Next i
    
    lstStok.List = Veri
End Sub
 

esnaf88

Altın Üye
Katılım
12 Mayıs 2005
Mesajlar
36
Altın Üyelik Bitiş Tarihi
31-01-2026
Çok teşekkür ederim. İyi çalışmalar.
 
Üst