Bu dosya, çalışma sayfasındaki verilerin bir dizi değişkenine aktarılıp UserForm üzerindeki ListBox nesnesine tek seferde yüklenmesini gösterir. Satır satır AddItem kullanmak yerine ListBox1.Column özelliğine dizi atanır. Benzer bir listeleme ihtiyacı olanlar için kod yapısı örnek olarak kullanılabilir.
Dosya makro içerir (.xlsm); açarken makroları etkinleştirmeniz gerekir.
Dosya makro içerir (.xlsm); açarken makroları etkinleştirmeniz gerekir.
Dosyanın içeriği
- personel sayfası: A1:J53 aralığında örnek personel kayıtları bulunur. Başlıklar Sıra no, TC Kimlik No, E-Posta Adresi, Görev İli ve Görev Yeri şeklindedir. Veriler örnek niteliğindedir.
- UserForm1: Personel kayıtlarının listelendiği 5 sütunlu ListBox1 nesnesini barındırır.
Makrolar
- Workbook_Open (ThisWorkbook): Dosya açıldığında UserForm1 otomatik olarak gösterilir.
- UserForm_Initialize (UserForm1): ListBox1 için ColumnCount değeri 5 yapılır. A sütunundaki son dolu satıra kadar döngü çalışır; her satırdan C, B, G, H ve I sütunlarındaki değerler iki boyutlu Dizi değişkenine yazılır. Dizi, ReDim Preserve ile satır sayısına göre büyütülür ve kayıt varsa tek atamayla ListBox1.Column özelliğine verilir.
- formu_aç (Module1): UserForm1'i Show 0 ile modelsiz açar; form açıkken çalışma sayfası kullanılabilir. Makro Alt+F8 penceresinden çalıştırılır.
- Worksheet_SelectionChange (Sayfa1): Sayfada seçim değiştiğinde B sütunundaki son dolu satır bulunur ve A3 hücresinden itibaren sıra numaraları 1'den başlayarak yazılır.
Nasıl kullanılır
- Dosyayı açın ve makroları etkinleştirin; UserForm1 kendiliğinden görüntülenir.
- ListBox'ta personel kayıtlarının beş sütun halinde listelendiğini görün.
- Formu kapattıktan sonra yeniden açmak için Alt+F8 ile formu_aç makrosunu çalıştırın.
- Kendi verinizle kullanmak için Alt+F11 ile UserForm_Initialize içindeki sütun numaralarını ve ColumnCount değerini verinize göre düzenleyin.