(SATIR VE SÜTUN) DA BİRDEN FAZLA KOŞULLU VERİ ARAMA

Katılım
24 Mayıs 2005
Mesajlar
462
Excel Vers. ve Dili
Excel 2003 Türkçe
(SATIR VE SÜTUN) DA BÝRDEN FAZLA KOÞULLU VERÝ ARAMA

UserForm üzerinde 1 adet TextBox var 1 adette CommontButon var. Textbox yazdığım vergi numarasını veri sayfasının B sütünunda bulacak A sütununda sıra numarası var (ANCAK GİRİLEN VERGİ NUMARASI DEÐİÞTİKÇE SIRA NUMARASIDA DEÐİÞMEKTE)
öRNEK;
A SÜTÜNU B SÜTÜNU C SÜTÜNU D SÜTÜNU F SÜTUNU G SÜTUNU
SIRA NO VERGİ NO ADI SOYADI DÃ?NEMİ
1 7777777 ONGUN
2 7777777 ONGUN
3 7777777 ONGUN
1 5555555 LEVENTM
2 5555555 LEVENTM
3 5555555 LEVENTM
4 5555555 LEVENTM
1 8888888 İSAKARAKUÞ
2 8888888 İSAKARAKUÞ
4 7777777 ONGUN
12 7777777 ONGUN

şeklinde "VERİ" sayfasında bilgiler olacak DİKKAT ETTİÐİNİZ GİBİ SIRA NUMARASI VERGİ NUMARASI DEÐİÞTİKÇE DEÐİÞMEKTEDİR. (Ã?NEMLİ)
Buna göre; benim yapmak istediğim textbox1`e girdiğim vergi numarasını B sütununda bulacak aynı vergi numarasının aynı satırında bulunan A sütunundaki 1.sıra numarayı bulduğunda satırın F sütunun boş olup olmadığını G sütunununda dolu olup olmadığını kontrol edecek, aramayı devam ettirecek bu defa A sütununda 2.sıra numarasını arayacak (aynı vergi numarasının karşısındaki) bu kontrol 12. sıra numarasına kadar odevam edecek;
Fark ettiğiniz gibi A sütununda, B sütununda bulunan her vergi numarasına ait 1,2,3,4,5,6,7,8,9,10,11,12 adet sıra numarası bulunmaktadır. Yani her bir vergi numarasının 1 den 12 ye kadar 12 adet sıra numarası olacak, bu haliyle konuyu tekrar inceler ve bana yardımcı olursanız sevinirim. Çalışmalarınızda Başarılar Dilerim.
H A Y A T G Ü Z E L D İ RRRR. YAÞAMASINI BİLENE ! :hey:
 
Katılım
24 Mayıs 2005
Mesajlar
462
Excel Vers. ve Dili
Excel 2003 Türkçe
BANA YARDIMCI OLABİLECEK KİMSE YOKMU.?
:agla: ARKADAÞLAR LÜTFEN YARDIM EDİN.
 

zafer

Super Moderator
Yönetici
Katılım
8 Mart 2005
Mesajlar
3,288
Excel Vers. ve Dili
OFFICE 2003 TÜRKÇE
OFFICE 2010 TÜRKÇE
Merhaba

Siz textbox' verginoyu yazdığınızda onları listbox'ta A sütunundan G sütununa kadar filtrelemek istiyorsunuz herhande

Yanlız F ve G sütünlarını niçin kontrol ettirmek istiyorsunuz.
 
Katılım
24 Mayıs 2005
Mesajlar
462
Excel Vers. ve Dili
Excel 2003 Türkçe
Sayın Zafer bey, listbox'ta A sütunundan G sütununa kadar filtrelemek istemiyorum.
Bir döngü istiyorum A,B,F,G Sütunlarının oldugu satırlarda arama yapacak arama sonucunda ÞARTLAR UYARSA Ekrana Mesajla"12 DÃ?NEM TAMAMLANMIÞTIR" diye mesaj gelsin istiyorum.
İlgilendigin için çok teşekkür ederim. Yardımcı olabilirsen sevinirim.
 

zafer

Super Moderator
Yönetici
Katılım
8 Mart 2005
Mesajlar
3,288
Excel Vers. ve Dili
OFFICE 2003 TÜRKÇE
OFFICE 2010 TÜRKÇE
Merhaba

Sub aa()

D = Worksheets("AKTAR").Range("A65536").End(xlUp).Row
Sheets("AKTAR").Range("A2:G" & D).ClearContents

Sheets("AA").Select
Range("A1").Select

Selection.AutoFilter
Selection.AutoFilter Field:=2, Criteria1:=UserForm1.TextBox1


Range("A2:G2").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Worksheets("AKTAR").Select
Range("A2").Select
ActiveSheet.Paste
Range("A2").Select
Worksheets("AA").Select
Range("A1").Select
Selection.AutoFilter
Worksheets("AKTAR").Select






g = Worksheets("AKTAR").Range("A65536").End(xlUp).Row - 1
If g < 12 Then GoTo aa:
For i = 2 To g


If Cells(i, 6) <> "" Then GoTo aa
If Cells(i, 7) = "" Then GoTo aa

Next
MsgBox ("işlem tamam")
Sheets("AA").Select
Exit Sub
aa:
MsgBox ("tamamlanmamış")
Sheets("AA").Select

End Sub
 
Katılım
3 Mart 2005
Mesajlar
571
Excel Vers. ve Dili
Excel 2000 Ing.

zafer

Super Moderator
Yönetici
Katılım
8 Mart 2005
Mesajlar
3,288
Excel Vers. ve Dili
OFFICE 2003 TÜRKÇE
OFFICE 2010 TÜRKÇE
Merhaba

Ben de atlamışım , Dün akşam da aynı konu için fazlasıyla uğraşılmış.
 
Katılım
24 Mayıs 2005
Mesajlar
462
Excel Vers. ve Dili
Excel 2003 Türkçe
Arkadaşlar haklısınız. Ã?zür dilerim. Sorunumu bir türlü anlatamadığım için aynı konuda birden fazla mesaj gönderdim.
Konuyla ilgili bir Ã?RNEK DOSYA GÃ?NDERİYORUM. Lütfen incelermisiniz.
Ayrıca bundan böyle aynı konu ile ilgili birden fazla mesaj gördermiyeceğim. çok haklısınız. Sizleri meşgul ettiğim için tekrar özür diliyorum. Sayğılarımla;
 
Katılım
24 Mayıs 2005
Mesajlar
462
Excel Vers. ve Dili
Excel 2003 Türkçe
DOSYA GÃ?NDERMEK İÇİN "ATAÇ EKLE" BÜTONUNU GÃ?REMİYORUM. NE YAPMAM LAZIM.
 
Katılım
24 Mayıs 2005
Mesajlar
462
Excel Vers. ve Dili
Excel 2003 Türkçe
Arkadaşlar, Dosyayı gönderebilme imkanını bulur bulmaz hemen göndereceğim ancak, konuyla ilgili örnekli bir açıklama yapmak istiyorum. belki yeterli olur. Selamlar.
SIRA NO VERGİ NO ADI SOYADI DÃ?NEMİ TUTARI Ã?DEME DURUMU GELİÞ TARİHİ
1 111 AHMET 2000/01 20.000,00 01.01.2005
2 111 AHMET 2000/02 20.000,00 Ã?DENDİ
1 222 MEHMET 2000/02 20.000,00 01.01.2005
3 111 AHMET 2000/03 20.000,00 01.01.2005
2 222 MEHMET 2000/04 150.000,00 02.02.2004
4 111 AHMET 2000/04 1.545.000,00 01.01.2005
5 111 AHMET 2000/05 1.250.000,00 01.01.2005
6 111 AHMET 2000/06 30.000,00 05.01.2005
7 111 AHMET 2000/07 10.000,00 02.01.2005
8 111 AHMET 2000/08 236.000,00 05.02.2004
9 111 AHMET 2000/09 1.452.000,00 04.12.2004
10 111 AHMET 2000/10 12.450.000,00 06.12.2004
3 222 MEHMET 2000/11 25.000,00 03.02.2005
11 111 AHMET 2000/11 1.125.000,00 04.02.2005
12 111 AHMET 2000/12 456.565,00 02.12.1999

1 İLE 12 ARASINDA 2.SIRA NUMARASINA AİT F SÜTUNU "DOLU" YANİ Ã?DENDİ YAZDIÐI İÇİN MESAJ OLMAYACAK
VEYA 1 İLE 12 ARASINDA 2. SIRA NUMARASINA AİT G SÜTUNU "BOÞ" OLMASI DURUMUNDA DA MESAJ OLMAYACAK

AÇIKLAMA: DİKKAT ETTİÐİNİZ GİBİ SIRA NUMARASINI OTAMATİK OLARAK VERGİ NUMARASINA GÃ?RE VERİYOR.
1. KOÞUL AYNI VERGİ NUMARASINDAN SIRA NUMARASININ 12 YE ULAÞMASI HALİNDE
2.KOÞUL F SÜTUNUN İLGİLİ SATIRININ YANİ 1 DEN 12 YE KADAR OLAN SIRA NUMARASI KARÞISINDAKİ SATIRIN "BOÞ" OLMASI HALİNDE
3.KOÞUL G SÜTUNUN İLGİLİ SATIRINININ YANİ 1 DEN 12 YE KADAR OLAN SIRA NUMARASININ OLDUÐU SATIRIN "DOLU" OLMASI HALİNDE
MAKRONUN ÇALIÞMASINI VE EKRANA MESAJLA "12 DÃ?NEM TAMAMLANMIÞTIR." YAZMASINI İSTİYORUM

AYRICA EÐER MÜMKÜNSE KOÞUL SAÐLANDIÐINDA MESAJIN ÇIKMASI SONUCUNDA TAMAMA BASTIÐIMDA
B SÜTÜNUNDA YER ALAN AYNI VERGİ NUMARASININ BULUNDUÐU VE 1 DEN 12 YE KADAR SIRA NUMARASI TAMAMLANAN
SATIRLARIN SİLİNMESİNİ SAÐLAYABİLİRMİYİZ.
ÇALIÞMALARINIZDA BAÞARILAR DİLERİM.

AYRICA,
USERFORM ÜZERİNDEKİ KODLARI GÃ?NDERİYORUM LÜTFEN İNCELERMİSİNİZ.
:hey:
Private Sub CommandButton1_Click()
If TextBox1 = "" Or TextBox2 = "" Or TextBox3 = "" Or TextBox4 = "" Or TextBox6 = "" Then
MsgBox "LÜTFEN VERİ BİLGİLERİNİ GİRİNİZ!", 16, "DİKKAT"
TextBox1.SetFocus
Exit Sub
End If
Dim Cevap As Integer
Cevap = MsgBox("KAYDETMEK İSTİYOR MUSUNUZ.?", _
vbOKOnly + vbYesNo, "UYARI")
If Cevap = vbYes Then
Sheets("VERİ").Select
sonsat = Sheets("VERİ").Cells(65536, 2).End(xlUp).Row + 1
Cells(sonsat, 2) = TextBox1.Value
Cells(sonsat, 3) = TextBox2.Value
Cells(sonsat, 4) = TextBox3.Value
Cells(sonsat, 5) = TextBox4.Value
Cells(sonsat, 6) = TextBox5.Value
Cells(sonsat, 7) = TextBox6.Value
MsgBox "VERİLERİNİZ KAYDEDİLMİÞTİR.", 16, "UYARI"
Range("A2:G65536").Select
ActiveWindow.SmallScroll Down:=-10
Selection.Sort Key1:=Range("D2"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
Range("A2").Select
Sheets("VERİ").Select
Dim No As Long
For i = 2 To Cells(65536, 2).End(xlUp).Row
If Cells(i, 2) = TextBox1.Text Then
No = No + 1
Cells(i, 1) = No
End If
Next
TextBox1.Text = ""
TextBox2.Text = ""
TextBox3.Text = ""
TextBox4.Text = ""
TextBox5.Text = ""
TextBox6.Text = ""
TextBox1.SetFocus
End If
End Sub
 

zafer

Super Moderator
Yönetici
Katılım
8 Mart 2005
Mesajlar
3,288
Excel Vers. ve Dili
OFFICE 2003 TÜRKÇE
OFFICE 2010 TÜRKÇE
Merhaba

Sayfa Adlarını düzenleyip.Makroyu denedinizmi
 
Katılım
24 Mayıs 2005
Mesajlar
462
Excel Vers. ve Dili
Excel 2003 Türkçe
Sayın Zafer bey, yazdığınız kodları uyarladım. Ancak Range sınıfının AutoFilter özelliği başarısız komutu verdi. Düzenlediğim kod aşağıda olduğu gibidir. Selamlar
Private Sub CommandButton22_Click()
Sheets("TERKİN").Select
D = Worksheets("TERKİN").Range("A65536").End(xlUp).Row
Sheets("TERKİN").Range("A2:G" & D).ClearContents
Sheets("TERKİN").Select
Range("A1").Select
Selection.AutoFilter
Selection.AutoFilter Field:=2, Criteria1:=UserForm1.TextBox1
Range("A2:G2").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Worksheets("TERKİN").Select
Range("A2").Select
ActiveSheet.Paste
Range("A2").Select
Worksheets("TERKİN").Select
Range("A1").Select
Selection.AutoFilter
Worksheets("TERKİN").Select
g = Worksheets("TERKİN").Range("A65536").End(xlUp).Row - 1
If g < 12 Then GoTo aa:
For i = 2 To g
If Cells(i, 6) <> "" Then GoTo aa
If Cells(i, 7) = "" Then GoTo aa
Next
MsgBox ("işlem tamam")
Sheets("TERKİN").Select
Exit Sub
aa:
MsgBox ("tamamlanmamış")
Sheets("TERKİN").Select
End Sub
 
Katılım
24 Mayıs 2005
Mesajlar
462
Excel Vers. ve Dili
Excel 2003 Türkçe
Arkadaşlar bir örnek dosya hazırladım ama "ataç" olmadığından gönderemiyorum. Aslında örnek dosyayı çok anlaşılır bir şekilde düzenledim. Ã?rnek Dosyayı incelemiş olsanız sorunumu çözeçeğinize inanıyorum. Ayrıca, karşılaştığım sorunumun (EXCEL VBA) ilginç olduğunu düşünüyorum. Tabi ki bana göre öyle, sizlere göre olmayabilir. Ama yinede örnek dosyamı incelemenizi tavsiye ederim.
Herkese çalışmalarında başarılar dilerim.
EMEK HİÇ BİR ÞEYLE Ã?LÇÜLEMEZ. :hey:
 

zafer

Super Moderator
Yönetici
Katılım
8 Mart 2005
Mesajlar
3,288
Excel Vers. ve Dili
OFFICE 2003 TÜRKÇE
OFFICE 2010 TÜRKÇE
Merhaba

Sizin Terkin dosyanızda Sadece AHMET'ler var olmadığını varsayarak AKTAR adlı bir sayfa oluşturuyoruz.Buraya TERKIN sayfasındaki Sadece başlıkları giriyoruz.

Sub aa()

D = Worksheets("AKTAR").Range("A65536").End(xlUp).Row
Sheets("AKTAR").Range("A2:G" & D).ClearContents

Sheets("TERKİN").Select
Range("A1").Select

Selection.AutoFilter
Selection.AutoFilter Field:=2, Criteria1:=UserForm1.TextBox1


Range("A2:G2").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Worksheets("AKTAR").Select
Range("A2").Select
ActiveSheet.Paste
Range("A2").Select
Worksheets("TERKİN").Select
Range("A1").Select
Selection.AutoFilter
Worksheets("AKTAR").Select






g = Worksheets("AKTAR").Range("A65536").End(xlUp).Row - 1
If g < 12 Then GoTo aa:
For i = 2 To g


If Cells(i, 6) <> "" Then GoTo aa
If Cells(i, 7) = "" Then GoTo aa

Next
MsgBox ("işlem tamam")
Sheets("TERKİN").Select
Exit Sub
aa:
MsgBox ("tamamlanmamış")
Sheets("TERKİN").Select

End Sub


Yani makrodaki AA sayfaları TERKIN oluyor. AKTAR sayfası kalıyor.Üste bahsetiğim gibi o sayfayı siz oluşturuyorsuz.(filtrelemek için)
 
Katılım
24 Mayıs 2005
Mesajlar
462
Excel Vers. ve Dili
Excel 2003 Türkçe
Sayın Zafer bey, test ettim ancak sürekli "tamamlanmamış" mesajı geliyor. Size dosya gönderebilsem eminim çözeçeksiniz ama benim istediğim bu değil. Ã?rnek Dosya hazırladım onu gönderdiğiğimde bakabilirmisiniz. gerekli açıklamayı sayfada yaptım. Saygılarımla,
 

zafer

Super Moderator
Yönetici
Katılım
8 Mart 2005
Mesajlar
3,288
Excel Vers. ve Dili
OFFICE 2003 TÜRKÇE
OFFICE 2010 TÜRKÇE
Merhaba

Ben sütunları karıştırmışım

If Cells(i, 6) = "" Then GoTo aa
If Cells(i, 7) <> "" Then GoTo aa

olacak
 
Katılım
24 Mayıs 2005
Mesajlar
462
Excel Vers. ve Dili
Excel 2003 Türkçe
Ben fark ettim düzelttim ama yine de olmadı en iyisi ben bir örnek dosya göndereyim. "ATAÇ EKLE" Bütonunun düzeltilmesini bekliyorum. Selamlar.
 
Katılım
24 Mayıs 2005
Mesajlar
462
Excel Vers. ve Dili
Excel 2003 Türkçe
Arkadaşlar;
Þöyle bir kod yazmaya çalıştım ama yine olmadı. İnceleye bilirmisiniz. Teşekkürler
Private Sub CommandButton2_Click()
Sheets("VERİ").Select
sayac = 0
For i = 2 To Cells(65536, 2).End(xlUp).Row
If TextBox1.Value = Cells(i, 2) Then
If Cells(i, 6) = "" And Cells(i, 7) <> "" Then
sayac = sayac + 1
Else
sayac = 0
End If
Else
sayac = 0
End If
If sayac = 12 Then MsgBox ("12 D�NEM TAMAMLANMIÞTIR")
Next i
End Sub
 
Katılım
29 Eylül 2004
Mesajlar
1,810
Excel Vers. ve Dili
Excel 2002 TR
Tüm başlıklarınızı okumadım ama bu son yazdığınız kod yerine aşağıdakini denermisiniz.


[vb:1:934885ec77]Private Sub CommandButton2_Click()
Sheets("VERİ").Select
sayac = 0
For i = 2 To Cells(65536, 2).End(xlUp).Row
If TextBox1.Value = Cells(i, 2) and Cells(i, 6) = "" And Cells(i, 7) <> "" Then
sayac = sayac + 1
End If
Next i
If sayac = 11 Then MsgBox ("12 D�NEM TAMAMLANMIÞTIR")
End Sub[/vb:1:934885ec77]
 
Katılım
24 Mayıs 2005
Mesajlar
462
Excel Vers. ve Dili
Excel 2003 Türkçe
Sayın danersin yine olmadı. Bir türlü yapamıyorum. Bu işi çözmem lazım yaptığım proğram için önemli. "ATAÇ EKLE" bütonu olsa örnek dosya göndereceğim, ama yok açılmasını bekliyorum. Sorum biraz karışık olduğu için de tam olarak anlatamıyorum. Oysa örnek dosyada gerekli açıklamaları yaptım. Keşke bir an önce gönderebilsem. Sorunumun çözüleceğine inanıyorum. Sizler gibi üstadlar olduğu sürece çözülemeyecek hiç bir konu olmadığını düşünüyorum. İyi ki varsınız. Hepinize yürekten teşekkür ederim. Saygılarımla.

Not: "ATAÇ EKLE" bütonu açılana kadar beklemekten başka çarem yok galiba.
 
Üst