combobox ile seçilen sayfayı listbox'ta okutma

Katılım
19 Aralık 2005
Mesajlar
69
combobox'ile sayfaları açabilmem için gereken kodları arama motorunu kullanarak buldum fakat açılan sayfayı listboxa okutmayı bulamadım..
bilen arkadaşlar varsa kodu gönderebilirmi. teşekkürler
 
Katılım
7 Temmuz 2004
Mesajlar
327
Excel Vers. ve Dili
office xp pro türkçe
YAKAKENTİM' Alıntı:
combobox'ile sayfaları açabilmem için gereken kodları arama motorunu kullanarak buldum fakat açılan sayfayı listboxa okutmayı bulamadım..
bilen arkadaşlar varsa kodu gönderebilirmi. teşekkürler
Aşağıdaki kodlama işinizi görmesi lazım
Her Sayfada A Sutunu Dikkate Alınmıştır.
Saygılar Sevgiler.
[vb:1:4553edba1d]Private Sub ComboBox1_Change()
Dim d, son As Integer

son = Cells(65536, 1).End(xlUp).Row

Sheets(ComboBox1.Value).Activate

ListBox1.Clear
For d = 1 To son
ListBox1.AddItem Cells(d, 1)
Next

End Sub

Private Sub UserForm_Initialize()
Dim i As Integer

For i = 1 To Worksheets.Count
ComboBox1.AddItem Worksheets(i).Name
Next
End Sub

[/vb:1:4553edba1d]
 
Katılım
19 Aralık 2005
Mesajlar
69
Sayın abdi:

kodlar sorunsuz çalışıyor alakanız için sağolun fakat sorun bende
kodlar a sütunüna göre demiştiniz ben bunu g sütununa kadar uzatmayı denedim tabiki her zamanki gibi yine beceremedim,birde combobox ile sayfayı açtığımda combo sürekli geriden geliyor ve sayfayı eksik yazdırıyor

tekrar teşekkürler
 
Katılım
7 Temmuz 2004
Mesajlar
327
Excel Vers. ve Dili
office xp pro türkçe
Sayın Yakakentim;
Aşağıdaki kodlamaların tümü bu siteden alınarak derlenen kodlamalardır bu kodlarla probleminiz çözüme kavuşacaktır.
Saygılar sevgiler.
Çalışmalarınızda Başarılar Dilerim.
[vb:1:b4c853831b]Private Sub ComboBox1_Change()
Dim a, son As Integer
ListBox1.Clear
Sheets(ComboBox1.Value).Activate
son = Cells.SpecialCells(xlLastCell).Row
ListBox1.Clear
Debug.Print son
For a = 2 To Cells(65536, 2).End(xlUp).Row
If Cells(a, 2) <> "" Then
c = c + 1
ListBox1.AddItem
ListBox1.List(c - 1, 0) = Cells(a, 2).Value
ListBox1.List(c - 1, 1) = Cells(a, 3).Value
ListBox1.List(c - 1, 2) = Cells(a, 4).Value
ListBox1.List(c - 1, 3) = Cells(a, 5).Value
ListBox1.List(c - 1, 4) = Cells(a, 6).Value
ListBox1.List(c - 1, 5) = Cells(a, 7).Value
End If
Next
End Sub

Private Sub UserForm_Initialize()
Dim i As Integer
ListBox1.ColumnCount = 6
ListBox1.ColumnWidths = "25;25;25;25;25"
For i = 1 To Worksheets.Count
ComboBox1.AddItem Worksheets(i).Name
Next
End Sub
[/vb:1:b4c853831b]

ilgili link
http://www.excel.web.tr/viewtopic.php?p=95130#95130
 
Katılım
19 Aralık 2005
Mesajlar
69
Sayın abdi

verdiğiniz kodlar çok güzel çalışıyor bu kodları comboboxdan çıkarıp sayfa şeçimlerini optionbutton ile yapıp listbox'a okutulması için kodların neresinde değişiklik yapmalıyım

Private Sub ComboBox1_Change()
Dim a, son As Integer
ListBox1.Clear
Sheets(ComboBox1.Value).Activate
son = Cells.SpecialCells(xlLastCell).Row
ListBox1.Clear
Debug.Print son
For a = 2 To Cells(65536, 2).End(xlUp).Row
If Cells(a, 2) <> "" Then
c = c + 1
ListBox1.AddItem

ListBox1.List(c - 1, 0) = Cells(a, 1).Value
ListBox1.List(c - 1, 1) = Cells(a, 2).Value
ListBox1.List(c - 1, 2) = Cells(a, 3).Value
ListBox1.List(c - 1, 3) = Cells(a, 4).Value
ListBox1.List(c - 1, 4) = Cells(a, 5).Value
ListBox1.List(c - 1, 5) = Cells(a, 6).Value
ListBox1.List(c - 1, 6) = Cells(a, 7).Value
End If
Next
End Sub



birde sayfada güncelle butonu kullandım dert yine aynı listbox'da görülen aktif sayfayı okutamıyorum bu kodlardaki hatalarımıda söylerseniz çok sevinirim
Private Sub CommandButton4_Click()

On Error GoTo hata

sıra = WorksheetFunction.CountA(Worksheets("DBT1PORT").Range("A:a"))

If ListBox1.ListIndex = -1 Then MsgBox "Önce listeden çift tıklayarak seçim yapmalısınız!", vbCritical, "Hata": Exit Sub


bul = ListBox1.List(ListBox1.ListIndex, 0)
For Each degistirilen In Range("A1" & ":" & "a" & sıra)


If degistirilen = bul Then
satir_no = degistirilen.Row 'Satır no ile değiştirilecek satır eşleştiriliyor
Range("a" & satir_no).Value = TextBox107.Value
Range("b" & satir_no).Value = TextBox108.Value
Range("c" & satir_no).Value = TextBox109.Value
Range("d" & satir_no).Value = TextBox110.Value
Range("e" & satir_no).Value = TextBox111.Value
Range("f" & satir_no).Value = TextBox112.Value
Range("g" & satir_no).Value = TextBox113.Value

For i = 3 To WorksheetFunction.CountA(Worksheets("DBT1PORT").Range("A:a")) ' A sütundaki başlık ve A2 deki ilk veri kalsın diye 3 ten başlatıldı


Next
MsgBox "Kayıt Değiştirilmiştir!", vbInformation, "İşlem Başarılı": Exit Sub
End If
Next

hata:
MsgBox "Hata oluştu!", vbCritical, "İşlem Başarısız"

End Sub
 
Üst