Aynı isimli verilerden en sonucusunu bulmak?

Katılım
28 Haziran 2007
Mesajlar
206
Excel Vers. ve Dili
Excel 2003 İngilizce
Değerli üyeler
Selamlar.

Bir excel tablosunda D sütununda tanımlı olan Firma bilgisine göre UserForm üzerindeki Combobox vasıtası ile arama yaptırıyorum. Bul butonu istediğim veriyi buluyorum. Ancak bulduğum verilerden aynı firma isminde olanlardan ilk hangisi yukarıda ise onu buluyor. Ben en son girilen aynı firma bilgisinin yer aldığı veriyi bulmasını istiyorum. Çünkü ilk girilen 5. satırda son girilen aynı isimdeki veri satırı 15. sırada. Daha aşğıda aynı veri artık yok. En son girileni bulmasıi için Nasıl kodlarız?
Saygılarımla
 

kulomer46

Altın Üye
Katılım
23 Mart 2007
Mesajlar
1,514
Excel Vers. ve Dili
Microsoft Office LTSC Professional Plus 2021 - Türkçe
Altın Üyelik Bitiş Tarihi
08-06-2027
çalıştığınız dosyayı gönderiniz üzerine kodlayalım..
 
Katılım
28 Haziran 2007
Mesajlar
206
Excel Vers. ve Dili
Excel 2003 İngilizce
Merhaba,
dosyamı ekledim. Dosya ilk açıldığında çıkan form üzerindeki ToolBar yanındaki Comboboxdan çalışılacak sayfa seçimi yapılmaktadır. Seçilen sayfa üzerine veriler, UserForm üzerindeki TextBox ve Combolardan girilerek excel tablosuna aktarılmakta. Bu işlem, "Yeni Kayıt" Butonuna basılarak yapılmaktadır. Daha önce yaratılan verilere, "Bul" yazan ikon yanındaki Combobox'a giriş yapılarak ulaşılmakta. Ancak bir şey dikkatimi çekti bulunan veriler "D" sütunundaki "Firma Adına" göre bulunuyor. Tabloda aynı Firma adındaki veri satırlarından ilk olanı textboxlara çağrılmakta.En son girilen benim için gerekmekte. Bu nasıl olabilir? Söz konusu Forma ait kodlar UserForm5 içersinde yer almaktadır.

Bir de benim sizden bir ıstıramım daha olacak. Kodların zaman zaman run Time Error veriyor. Sanırım detaylarda eksikle var. Hata atlama kodları eksik ya da uyumsuz olan bişeyler var tam bulamadım. Aktarmalar farklı sayfalara farklı butonlarla yapılmakta. Sp1,Sp2,Sp3, Teklif, Olumlu, Kayıp gibi...Görebildiklerinizi düzeltebilir misiniz?

Teşekkür ediyor iyi çalışmalar diliyorum.

Saygılarımla
 
Son düzenleme:
S

Skorpiyon

Misafir
Sayın Araştırıcı,

Bilginiz hangi Sütunda ise, o sütunda aşağıdan yukarıya geliriz.

For a = 5000 To 1 Step -1
If Cells(a, 1).Value = Range("B1").Value Then
Cells(a, 1).Select
GoTo dur
End If
Next a
dur:


olarak bir deneyiniz. Dilerim işinizi görür.

Saygılarımla...
 
Katılım
28 Haziran 2007
Mesajlar
206
Excel Vers. ve Dili
Excel 2003 İngilizce
Sayın SERTKAYA,
Merhaba, bunu "Bul" ile ilgili kodlara mı yazacağız? Yöntemler farklı gibi sanki Bul Combosunu tıklyıp buradaki kodları görürseniz, ben nasıl modifiye edeceğimi bulamadım. Yardımcı olabilir misiniz?
 
S

Skorpiyon

Misafir
Sayın Araştırıcı,

Dosyanız o kadar çok kilitlenmeye neden oldu ki, vazgeçmek zorunda kalıyorum.

Saygılarımla...

Yapmanız gereken, Bul butonu altına aşağıdaki kodları yazarsanız sanırım işinizi görür. Ama kontrol etme şansım kilitlenmelerden dolayı maalesef mümkün olmadı, belirteyim.

if textbox4.value ="" then
msgbox"Önce combo nesnesinden text kutusuna firmanın gelmesini sağlayın"
exit sub
end if

For a = 500 To 1 Step -1
If Cells(a, 4).Value = Textbox4.Value Then
Cells(a, 4).Select
GoTo dur
End If
Next a
dur:
ComboBox9.Value = Cells(ara.Row, 3).Value
ComboBox12.Value = Cells(ara.Row, 2).Value
TextBox4.Value = Cells(ara.Row, 4).Value 'firma adı d
TextBox5.Value = Cells(ara.Row, 5).Value 'yetkili kişi e
TextBox9.Value = Cells(ara.Row, 9).Value 'görüşme tarihi ı
TextBox24.Value = Cells(ara.Row, 7).Value 'adres g
TextBox6.Value = Cells(ara.Row, 6).Value 'telefon f
TextBox8.Value = Cells(ara.Row, 8).Value 'E-MAIL H
TextBox10.Value = Cells(ara.Row, 10).Value 'PROJE KONUSU J
ComboBox8.Value = Cells(ara.Row, 14).Value 'AK. GRUP
TextBox12.Value = Cells(ara.Row, 12).Value 'VERİLEN DOC L
ComboBox10.Value = Cells(ara.Row, 15).Value 'SATIŞ SORUMLUSU
ComboBox4.Value = Cells(ara.Row, 11).Value 'BİTİŞ TARİHİ
ComboBox3.Value = Cells(ara.Row, 13).Value 'SEKTÖR
ComboBox2.Value = Cells(ara.Row, 16).Value 'TEKLİF NO
TextBox18.Value = Cells(ara.Row, 17).Value 'TEKLİF TUTARI Q
TextBox25.Value = Cells(ara.Row, 18).Value 'KUR R
TextBox26.Value = Cells(ara.Row, 19).Value 'KDV S
ComboBox14.Value = Cells(ara.Row, 20).Value 'GRÇ. ORANI T
TextBox19.Value = Cells(ara.Row, 21).Value 'İNDİRİM ORANI U
TextBox20.Value = Cells(ara.Row, 22).Value 'YÜZDE V
TextBox21.Value = Cells(ara.Row, 23).Value 'AÇIKLAMALAR W
ComboBox6.Value = Cells(ara.Row, 24).Value
ComboBox11.Value = Cells(ara.Row, 25).Value
ComboBox7.Value = Cells(ara.Row, 26).Value
 
Katılım
28 Haziran 2007
Mesajlar
206
Excel Vers. ve Dili
Excel 2003 İngilizce
Çok teşekkür ederim sayın sertkaya, ancak il açılışta comboya veri girerken mesaj çıkıyor ve bulunacak veriyi girmek mümkün olmuyor. Ne yapmak gerekir?Diğer konuda ise ben güvenlik ayarlarını orta ayarda tutup açılırken makroları iptal edip inceliyorum. Böylece kapanmıyor ve kodları okuyabiliyorum. Ama hatayı bilgi eksikliğinden göremediğimden kitlenme sebebini henüz bulamadım. Zamanınız olursa bu yöntemle bana yardımcı olabilir misiniz bilemiyorum ama olabilirseniz çok çok önemli olacak benim için.
Saygılarımla
 
Katılım
14 Şubat 2006
Mesajlar
3,426
Excel Vers. ve Dili
(Excel 2016 - İngilizce)
Altın Üyelik Bitiş Tarihi
30-11-2022
Sn.Araştırıcı

Sn.Sertkaya'nın kodlarını BUL butonuna ekleyip, combobox'daki kodları ise silmeniz gerekmektedir.
 
Katılım
28 Haziran 2007
Mesajlar
206
Excel Vers. ve Dili
Excel 2003 İngilizce
Sayın Ripek ve sertkaya
msgbox kısmında, "Önce combo nesnesinden text kutusuna firmanın gelmesini sağlayın" yazıyor. Ama bunu sağlayacak bir kod yok içerikte. Elle textbox4 e manuel gisemde farketmedi. çalıştırınca hata verdi ve Debug göstermeden program off oldu. Sanırım ciddi bir problem var ama anlayamıyorum.

Saygılarımla
 
S

Skorpiyon

Misafir
Sayın Araştırıcı,

Combobox içerisindeki kodları silmeden, BUL butonu altına kodları ekleyerek deneyiniz.

Şu an zaman müsait olmadığından ilgilenemiyorum. Ama dosyanıza bir bakacağım inş.

Saygılarımla...
 
Katılım
28 Haziran 2007
Mesajlar
206
Excel Vers. ve Dili
Excel 2003 İngilizce
Sayın Sertkaya,
Merhaba.

Bu işlemi uyguladım ama "Obje Gerekli" hata raporu verip programı abondone ediyor. Bu tabloyu çözebilirsek çok sevineceğim...
Saygılarımla
 
S

Skorpiyon

Misafir
Sayın Araştırıcı,

Dosyanızda biraz değişiklik yaptım. Bunlar;

- Form üzerinde menü oluşturma komutlarını kaldırdım. Kilitlenmeye neden olan komutlar onlardı.

- Bul butonu yanındaki Combobox13 nesnesi için seçilen sayfada hangi veriler varsa kaynağını oradan alması için gerekli düzenlemeyi yaptım.

- Bul butonuna tıkladığınızda sayfadaki en son girilen verinin gelmesini sağladım.

Buna rağmen,

Problem yaşadığnız bir nokta olursa, elimizden geldiğince yardımcı olmaya çalışırız.

Saygılarımla...
 
Katılım
28 Haziran 2007
Mesajlar
206
Excel Vers. ve Dili
Excel 2003 İngilizce
Sayın Sertkaya

Zahmetlerinizden ve bu çalışmaya ayırdığınız değerli zamanınız için teşekkür ediyorum. Bu dosya kodlamasında bana gösterdiğiniz yol için ne kadar teşekkür etsem azdır. Sizinde çalışmalarınızda herşey rast gitsin. Allah kolaylıklar göstersin. Başarı yolunuzun daim ve istediğinizin üzerinde olmasını dilerim. Bu proje üzerinde devam etmekteyim. Hem öğreniyor hem de belki bu çalışmayı görenlere yardımcı oluyor ve yol gösteriyoruz. Bu sizlerin olağan üstü gayretleriniz ve herkese yetişmeye odaklandığınız yardım severliğinizle oluyor. Sizleri kutluyoruz. Bu çalışmanın yeni versiyonunda olması gerekenleri, "menü kısmını eklemek (iptal ettiğimiz), Teklif ve Satışa dönen rakkamlar üzerinden grafiksel ve tablosal raporlar çıkarmak ve ortakta kullanıma açık olan bu dosyayı "Read Only" siz birden çok kullanıcının aynı anda veri girmesine olanak sağlamak şeklinde özetleyebiliriz. Tekrar görüşmek umudu ile. Bu arada çalışmayı siz tanıdınız; sizle bu çalışmanın devamında da beraber olmayı ümit ediyorum. Size gerektiğinde bu projeyi devam ettirmek adına nasıl ulaşabilirim?

Saygılarımla
 
Katılım
28 Haziran 2007
Mesajlar
206
Excel Vers. ve Dili
Excel 2003 İngilizce
Sayın sertkaya
selamlar.

Yardımınız için tekrar teşekkür ediyorum.

Cursor'un, bu form üzerinden sayfalara girilen veriler sonrası, en son değer girilmiş olan satır altındaki ilk boş B hücresine her defasında dönmesini nasıl sağlayabiliriz?

Saygılarımla
 
S

Skorpiyon

Misafir
Sayın Araştırıcı,

Userform5 - BUL butonu altındaki kodun en son satırlarına (End Sub'un üzerine) şu kodu ekleyiniz. Sanırım işinizi görür. Problem çıkartırsa başka bir yoluna bakarız.

Do While Not IsEmpty(ActiveCell)
ActiveCell.Offset(1, 0).Select
Loop

Cells(ActiveCell.Row, 1).Select
End Sub

Saygılarımla...
 
Katılım
28 Haziran 2007
Mesajlar
206
Excel Vers. ve Dili
Excel 2003 İngilizce
Sayın Sertkaya
iyi çalışmalar,
Kod işe yaradı. Problem yok.
Bir şey düşündüm şimdi. Aktardığım ya da bulup yerleştirdiğim her veri yeni boş satıra atanmakta. Bunda sorun yok zaten bu istediğimiz birşey. Ancak bazen yukarıdaki herhangibir satırı aşağıya aktarmadan yerinde de yani sıra numarasını değiştirmeden üzerinde değişiklik yapma gereği de az da olsa olabiliyor. Şöyle birşey yapabilir miyiz?

Bir düzelt butonuna bağlı olarak "Bul" butonu ile bulduğum veride değişiklik yaptıktan sonra "Düzelt" Butonu ile bu işlemi tamamlayabileyim.

Nasıl bir kod ekleyelim?
 
S

Skorpiyon

Misafir
Sayın Araştırıcı,

Böyle birşey yapmak elbette mümkün ama bu noktada BUL ile ekrana getirdiğiniz bilginin diğerlerinden farklı bir noktası olmalı.

Yani;
Atıyorum aynı kayıttan 5 adet var. Bu 5 kayıttan hangisinde düzeltme yapmak istiyorsunuz ? İşte bu kaydı bulabilmek için diğerlerinden farklı bir kriter olmalı ki, doğru firmada düzenleme yaptığımızı anlayabilelim. Aksi taktirde hep en sondaki kayıt üzerinde değişiklik yapılacaktır.

Eğer bu benim işimi görür derseniz (bu gece değil ama, yarın olabilir) bişeyler yapmaya çalışırız.

Saygılarımla...
 
Üst