USERFORM VE VERİ SEÇİMİNE GÖRE BİLGİ ALMA

Katılım
19 Ocak 2005
Mesajlar
940
Excel Vers. ve Dili
İŞ : Microsoft Office Excel 2003
EV : Microsoft Office Excel 2003
Arkadaşlar hepinize iyi tatiller öncelikle; çalışanlarada iyi çalışmalar.

Ekli dosyayı inceleyip bana yardım edermisiniz arkadaşlar. şimdiden teşekkürler.
 
Katılım
19 Ocak 2005
Mesajlar
940
Excel Vers. ve Dili
İŞ : Microsoft Office Excel 2003
EV : Microsoft Office Excel 2003
Örneğin aşağıdaki Stok Programındaki kodlar belki bu iş için kullanılabilir. tabi benim bilgim bu kadar geniş olmadığından bu çalışma kodlarını kendi çalışmama uyarlayamadım yardım ederseniz sevinirim

Private Sub CommandButton1_Click()
Set DATA = Worksheets("DATA").Range("A1")
TextBox1.Value = ""
Worksheets("Rapor").Range("A1").CurrentRegion.ClearContents
DATA.AutoFilter Field:=2, Criteria1:=ComboBox1
DATA.AutoFilter Field:=5, Criteria1:=ComboBox2
Worksheets("DATA").Range("A1").CurrentRegion.Copy Worksheets("Rapor").Range("A1")
DATA.AutoFilter
If Worksheets("Rapor").Range("A2").Value = "" Then
MsgBox "Böyle bir veri bulunamadı"
Exit Sub
End If
With ListBox1
.ColumnCount = 10
.ColumnHeads = False
.RowSource = "Rapor!A2:J" & WorksheetFunction.CountA(Worksheets("Rapor").Range("A1:A65000"))
End With
TextBox1.Text = WorksheetFunction.Sum(Worksheets("Rapor").Range("I1:I65500"))
TextBox2.Text = WorksheetFunction.Sum(Worksheets("Rapor").Range("j1:j65500"))
End Sub
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If KeyAscii > 30 And (KeyAscii < 48 Or KeyAscii > 57) Then KeyAscii = 46
End Sub
Private Sub UserForm_Initialize()
TextBox1.Value = ""
Worksheets("Rapor").Range("C2").CurrentRegion.ClearContents
ComboBox1.RowSource = "DATA!C2:B" & WorksheetFunction.CountA(Worksheets("DATA").Range("C1:B65000"))
ComboBox2.RowSource = "DATA!C2:E" & WorksheetFunction.CountA(Worksheets("DATA").Range("C1:e65000"))
ListBox1.ColumnWidths = 25 & ";" & 95 & ";" & 35 & ";" & 35 & ";" & 85 & ";" & 35 & ";" & 35 & ";" & 45 & ";" & 45 & ";"
End Sub

Ayrıca bu kodların yer aldığı programda çok işlevsel ve iyi hazırlanmış. arkadaşların ellerine sağlık.
 
Katılım
19 Ocak 2005
Mesajlar
940
Excel Vers. ve Dili
İŞ : Microsoft Office Excel 2003
EV : Microsoft Office Excel 2003
isteğime uygun örnekde işimi görebilir arkadaşlar.
 
Katılım
19 Ocak 2005
Mesajlar
940
Excel Vers. ve Dili
İŞ : Microsoft Office Excel 2003
EV : Microsoft Office Excel 2003
Bu konuda yorumu olan yokmu arkadaşlar?
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Userforma aşağıdaki kodu;

[vb:1:a807b5ecd1]Private Sub UserForm_Initialize()
For a = 2 To [c65536].End(3).Row
If WorksheetFunction.CountIf(Range("c2:c" & a), Cells(a, "c")) = 1 Then ComboBox1.AddItem Cells(a, "c")
Next
ListBox1.ColumnCount = 9
ListBox1.ColumnWidths = "50;50;50;50;50;50;50;50;50"
End Sub[/vb:1:a807b5ecd1]

comboboxada aşağıdaki kodu kopyalayarak deneyin.

[vb:1:a807b5ecd1]Private Sub ComboBox1_Click()
TextBox1 = WorksheetFunction.SumIf([c:c], ComboBox1, [d:d])
TextBox2 = WorksheetFunction.SumIf([c:c], ComboBox1, [g:g])
TextBox3 = WorksheetFunction.SumIf([c:c], ComboBox1, [i:i])
For sat = 2 To [c65536].End(3).Row
If Cells(sat, "c") = ComboBox1 Then
c = c + 1
For sut = 1 To 9
ListBox1.AddItem
ListBox1.List(c - 1, sut - 1) = Cells(sat, sut)
Next
End If
Next
End Sub[/vb:1:a807b5ecd1]
 
Katılım
7 Temmuz 2004
Mesajlar
327
Excel Vers. ve Dili
office xp pro türkçe
Çalışmanız güncellenmiştir.
ekli dosyaya bakınız

saygılar sevgiler
Çalışmalarınızda başarılar dilerim.
 
Katılım
7 Temmuz 2004
Mesajlar
327
Excel Vers. ve Dili
office xp pro türkçe
Levent ustadım kodlarınızı görmedim gayet güzel şimdi denedim.
yalnız
Kod:
TextBox3 = WorksheetFunction.SumIf([c:c], ComboBox1, [i:i])
kısmında hata verdi
Kod:
TextBox3 = WorksheetFunction.SumIf([c:c], ComboBox1, [I:I])
yapınca düzeldi. çok teşekkür ederim sayenizde bir kode daha öğrenmiş olduk.
saygılar sunar
çalışmalarınızda başarılar temennilerimle üstad
:D :D :D :eek:k:: :eek:k::
 
Katılım
19 Ocak 2005
Mesajlar
940
Excel Vers. ve Dili
İŞ : Microsoft Office Excel 2003
EV : Microsoft Office Excel 2003
SN: leventm hocam ve abdi kardeş çok teşekkür ederim. iyi çalışmalar dileklerimle.
 
Katılım
19 Ocak 2005
Mesajlar
940
Excel Vers. ve Dili
İŞ : Microsoft Office Excel 2003
EV : Microsoft Office Excel 2003
Arkadaşlar aşağıdaki satırda veri görüntüle işleminde bu satırda hata veriyor!!!


Private Sub CommandButton1_Click()
Set DATA = Sayfa1

'TextBox1.Value = ""
Worksheets("Rapor").Range("A2").CurrentRegion.ClearContents
Sayfa1.Select
Selection.AutoFilter Field:=3, Criteria1:=ComboBox1.Value
'DATA.AutoFilter Field:=5, Criteria1:=ComboBox2
Worksheets("Sayfa1").Range("A1").CurrentRegion.Copy Worksheets("Rapor").Range("A1")
'Sayfa1.Range("A1").CurrentRegion.Copy Sayfa2.Range("A1").Paste

Sayfa1.Select
Selection.AutoFilter
If Worksheets("Rapor").Range("A2").Value = "" Then
MsgBox "Böyle bir veri bulunamadı"
Exit Sub
End If
With ListBox1
.ColumnCount = 10
.ColumnHeads = False
.RowSource = "Rapor!A2:I" & WorksheetFunction.CountA(Worksheets("Rapor").Range("A1:A65000"))
End With
TextBox1.Text = WorksheetFunction.Sum(Worksheets("Rapor").Range("d2:d65500")) 'fatura toplamı
TextBox2.Text = WorksheetFunction.Sum(Worksheets("Rapor").Range("g2:g65500")) 'gelecek havale toplamı
TextBox3.Text = WorksheetFunction.Sum(Worksheets("Rapor").Range("ı2:ı65500")) 'iskontolu havale toplamı
'Sayfa2.Visible = xlSheetHidden

Label5.Caption = " FT Tarihi FT No'su FT TUTARI FT VADESİ ÖDEME GÜNÜ GELECEK HVL İSK. ORN İSKONTOLU HAVALE"
Label5.BackColor = &HC0FFFF


'TextBox2.Text = WorksheetFunction.Sum(Worksheets("Rapor").Range("j1:j65500"))
End Sub
 
Katılım
7 Temmuz 2004
Mesajlar
327
Excel Vers. ve Dili
office xp pro türkçe
ocamsul' Alıntı:
Arkadaşlar aşağıdaki satırda veri görüntüle işleminde bu satırda hata veriyor!!!

Kod:
Private Sub CommandButton1_Click()
Set DATA = Sayfa1

'TextBox1.Value = ""
Worksheets("Rapor").Range("A2").CurrentRegion.ClearContents
Sayfa1.Select
[u][b]Selection.AutoFilter Field:=3, Criteria1:=ComboBox1.Value[/b][/u]
'DATA.AutoFilter Field:=5, Criteria1:=ComboBox2
Worksheets("Sayfa1").Range("A1").CurrentRegion.Copy Worksheets
End Sub
aşağıdaki satırı
Kod:
Sayfa1.Select
bu aşağıdaki kod bloğu ile değiştirin
Kod:
Sayfa1.Range("a1").Select
Tümleşik veri olmayan yerde (yani kısacası verilerimizin başlangıç hücresinde olmadığımız için hata veriyor.

saygılar sevgiler
çalışmalarınızda başarılar dilerim.
 
Katılım
19 Ocak 2005
Mesajlar
940
Excel Vers. ve Dili
İŞ : Microsoft Office Excel 2003
EV : Microsoft Office Excel 2003
Sn: abdi çok teşekkür ederim.
 
Katılım
19 Ocak 2005
Mesajlar
940
Excel Vers. ve Dili
İŞ : Microsoft Office Excel 2003
EV : Microsoft Office Excel 2003
Sayın: abdi bu konuyu çözdük. çok teşekkür ederim. ancak. benim şimdiki sorunum şu bu çalışma ofıce 97 de yanlış hatırlamıyosam tabi ofis versiyonunu yani. çalışmıyo uyarı veriyormuş. sizce neden olabilir mesela ilk açılışta hata ayıklama soruyormuş o işlem yapıldıktan sonra bir daha user form açılmışyomuş bunun nedeni ne olabilir sizce?
 
Katılım
7 Temmuz 2004
Mesajlar
327
Excel Vers. ve Dili
office xp pro türkçe
Sanırım filtreleme kodları 97 sürümünde farklı olabilir bu yüzden hata veriyodur büyük ihtimalle office 97 üzerinde herhangi bir sıralı liste üzerinde makro kaydet yaparak veri süz işlemi ni uygulayın daha sonra benim süzme kodlarını yeni elde ettiğiniz değerler ile değiştirin. yapmanız gereken bu elimde 97 sürümü olmadığı için bu şekilde çözüm önerebilirim.




saygılar sevgiler
çalışmalrınızda başarılar dilerim.
 
Katılım
19 Ocak 2005
Mesajlar
940
Excel Vers. ve Dili
İŞ : Microsoft Office Excel 2003
EV : Microsoft Office Excel 2003
teşekkür ederim. bende burada baktım. deniyecektim ama diğer pc lerde ya 2000 yada 2003 var artık başka bir yerden bulup denicem. ilginize teşekkür ederim Sn. Abdi.
 
Katılım
9 Mayıs 2006
Mesajlar
88
Excel Vers. ve Dili
excel 2003
Selamlar,

Yukarıda geçen "TextBox1 = WorksheetFunction.SumIf([c:c], ComboBox1, [d:d])"
kodunun açıklamasını paylaşırsanız sevinirim.

Teşekkürler.
 
Üst