• DİKKAT

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

Excel çalışma sayfasından liste kutusuna veri aktarmak

  • Konbuyu başlatan Konbuyu başlatan fnryt
  • Başlangıç tarihi Başlangıç tarihi
Katılım
17 Kasım 2011
Mesajlar
8
Excel Vers. ve Dili
türkçe 2007
Arkadaşlar,2 adet userform var.1.sinde comboboxtan seçtirdiğim ürünleri çalışma sayfasındaki ürün bilgileriyle beraber 2.userformdaki listboxa aktarmak istiyorum.yardımlarınızı bekliyorum.
 

Ekli dosyalar

Son düzenleme:
Acilen.. :dusun:

Emredersiniz. :bad:

Dosya hakkında daha fazla detay verin.
Sayfa1'dekiler ne, Sayfa2'dekiler ne ?
Hangi sayfadan alacak ?
Ürün bilgileri dediğiniz hangileri ? Tüm sayfayı mı alacak ?

Kafamızdaki soru işaretlerini ve mesajınızdaki Acilen kelimesini silerseniz size yardımcı oluruz...
 
haklısınız yanlış kelime kullanmışım özür dilerim.sayfa1dekiler şu an için önem arz etmiyor.sayfa2deki ürün sütunundan seçim yapmak istiyorum.programa ekle dediğimde bana bu ürüne ait işlem süresi,ürün gramı,göz sayısı gibi bilgilerle birlikte userform2 de listelemesini istiyorum.
 
userform1'rin sağ tarafında görünse userform 2 ortadan kalksa sorun olurmu ?
 
Hayır sorun olmaz .ben form görüntüsünde çok öge olmaması için çok form kullanmayı tercih etmiştim sadece.
 
kodlara baktıgımda yeni veri eklenmesi halinde yeni veriler sayılamayacak haberiniz varmı ?(a62 ci stundan sonrakiler)
 
küçük verilerle denemek için o düzenlemeleri yapmamıştım ama aralık belirtirken onu dikkate almalıyım zaten uyarınızla hatırladım.
 
Kod:
Private Sub CommandButton1_Click()
Dim i, x As Integer
'On Error Resume Next
Sayfa2.Select
sonsatir = WorksheetFunction.CountA(ActiveSheet.Range("A2:A61"))
With UserForm1.ListBox1
.Clear
.ColumnCount = 5
.ColumnWidths = "2;25;35;45;25"
.ColumnHeads = True


For i = 2 To sonsatir
If x = 1 Then GoTo atla
x = i - i
atla:
' .ListCount
y = ActiveSheet.Range("a2:a61").Cells(i, 1)
If ComboBox1.Value = y Then
.AddItem
.List(x, 1) = ActiveSheet.Range("A" & i + 1)
.List(x, 2) = ActiveSheet.Range("B" & i + 1)
.List(x, 3) = ActiveSheet.Range("C" & i + 1)
.List(x, 4) = ActiveSheet.Range("D" & i + 1)
x = 1
End If
Next
End With
End Sub

userform2 yi silin ve userform 1 re yeni listbox koyun
geliştirilebilir ama şimdilik tam olarak istediğiniz bu kodlardır.
 
süper.tam olarak buydu.sorun değil 2.bir form olması.çok teşekkür ederim.emeğinize sağlık:)
 
Kod:
Private Sub ComboBox1_Change()
sonsatir = WorksheetFunction.CountA(ActiveSheet.Range("A:A"))
With UserForm1.ListBox1
.Clear
.ColumnCount = 5
.ColumnWidths = "2;25;35;45"
.ColumnHeads = True
On Error GoTo theend

For i = 1 To sonsatir
'If x = 1 Then GoTo atla
'x = .ListCount - .ListCount
atla:
x = .ListCount
y = ActiveSheet.Range("a2:a" & sonsatir).Cells(i, 1).Value
If ComboBox1.Text = y Then
.AddItem
.List(x, 1) = ActiveSheet.Range("A" & i + 1)
.List(x, 2) = ActiveSheet.Range("B" & i + 1)
.List(x, 3) = ActiveSheet.Range("C" & i + 1)
.List(x, 4) = ActiveSheet.Range("D" & i + 1)
'x = x + 1
End If
Next
End With
theend:
Exit Sub
End Sub

görünmeyen hatalar düzeltildi ; combobox değişrise anında arar
 
ikinci kodu uyarladım söylediğiniz gibi.ancak ben ürünü seçtikçe listboxun değişmesini istemiorum.yani önce ürün1 i seçip sonra ürün2 yi seçince bilgileri değiştirerek değil alt alta yazarak listelenmesni sağlatmak istiyorum.çünkü birden fazla iş seçmek zorundayım her zaman.
 
Bunu belirtmemiştiniz şimdiye kadar !!! çözüm için userformda yeni bir uzun listboxa ihtiyaç var.Birde aktar butonu koyarsanız her arama sonrası isteginize göre yeni listboxa alt alta aktarırsınız ...
 
ürünler diye çoğul ifade kullandığım için ona gerek duymamıştım.yardımlarınız için tekrar teşekkürler
 
Geri
Üst