Userform üzerinden sayfanın son satırına kopyalamak

Katılım
8 Haziran 2007
Mesajlar
761
Excel Vers. ve Dili
excel- 2003 Türkçe
Ekteki dosyanın şifreleri : 1 dir
 
Son düzenleme:

EKREM1661

Altın Üye
Katılım
10 Kasım 2006
Mesajlar
1,265
Excel Vers. ve Dili
Excel-2016
Altın Üyelik Bitiş Tarihi
03-02-2026
userform üzerinden, son satıra ve son satırın neresine neyi kopyalayacağınız ifade edilmemiş olmakla birlikte, sizi son satıra ulaştıracak kod aşağıdaki gibi olabilir, gerisini devam ettirirsiniz..

Sub SonSatır1()
Dim alan, satırsayısı, SonSatır
Set alan = Cells(1, 1).CurrentRegion
satırsayısı = alan.Rows.Count
SonSatır = satırsayısı + 1
Cells(SonSatır, 1).Select
End Sub

ayrıca eklediğinizi ifade ettiğiniz ekli dosyayı da göremedim..
 
Katılım
8 Haziran 2007
Mesajlar
761
Excel Vers. ve Dili
excel- 2003 Türkçe
Dosya eklenmiştir.

Ekteki dosyanın şifreleri : 1 dir

Bilgi Giriş adlı userform üzerindeki TextBoxlara verileri girdikten sonra Personel_Bilgi sayfasının en sonr satırına kayıt yapsın

form üzerinde bir kaydet butonu var ama o önce sorgu girip bilgileri değiştirdikten sonra kayıt yapıyor.
 
Son düzenleme:
Katılım
8 Haziran 2007
Mesajlar
761
Excel Vers. ve Dili
excel- 2003 Türkçe
Dosya eklenmiştir.

Ekteki dosyanın şifreleri : 1 dir

Bilgi Giriş adlı userform üzerindeki TextBoxlara verileri girdikten sonra Personel_Bilgi sayfasının en sonr satırına kayıt yapsın

form üzerinde bir kaydet butonu var ama o önce sorgu girip bilgileri değiştirdikten sonra kayıt yapıyor.
 
Son düzenleme:

EKREM1661

Altın Üye
Katılım
10 Kasım 2006
Mesajlar
1,265
Excel Vers. ve Dili
Excel-2016
Altın Üyelik Bitiş Tarihi
03-02-2026
Sn.Ferhat Gürbüz..!

örnek dosyanızda, Bilgi_Girişi formu üzerindeki nesne ve butonlara dokunmadım.. Ayrıca bir buton ilave ederek; Buton altındaki kod kalıbı sıra numarası vermek suretiyle, TextBox'lara girilen verileri, son boş satıra serpiştirmektedir, yani eklemektedir. Sizler bu kod kalıbını istediğiniz yerde ve şekilde uyarlayabilirsiniz.

Nitekim, sizin özel mesajınızda belirtmiş olduğunuz, "dosya ekleyememe" sorunu, dosya boyutunun gereğinden çok büyük olmasından kaynaklandığı büyük olası…Sayfaları silmiş olmanıza rağmen 16 MB üzeri bir boyuta sahip.. Yani sun’i bir kabarık var.. Şöyle anlıyorum ki; sorun ile ilgili farklı sebepler olmakla birlikte;

Sizler programı oluştururken; sayfa yapılarında kullanmadığınız tüm alanlarda uygulamış olduğunuz biçim, renk, ayar, resim ekleme gibi eylemler, bellek ve boyut kapsamına girdiği... Bu nedenle, dosya boyutunda meydana gelen sun’i şişme, sayfa silmekle de pek fazla düşmediği bir durum söz konusu olmaktadır.(Tartışılabilir...) Bilinen o ki, çok arkadaşımızın karşılaştığı sorunlardan...
 
Katılım
8 Haziran 2007
Mesajlar
761
Excel Vers. ve Dili
excel- 2003 Türkçe
Sayın EKREM1661 önerileriniz için çok teşekkür ederim. Yani deneme yanılma yoluyla öğrendim çoğu şeyi. Böyle oluncada mantığını kavrayamıyorsunuz. Mantığını kavrayamayınca da kendi düşündüklerinizi uygulamakta zorlanıyorsunuz. misal ben.
Yardımlarınız için de çok teşekkür ederim. Kolay gelsin
 

EKREM1661

Altın Üye
Katılım
10 Kasım 2006
Mesajlar
1,265
Excel Vers. ve Dili
Excel-2016
Altın Üyelik Bitiş Tarihi
03-02-2026
birşey değil...başarılar diliyorum.
Yinede; deneme yanılma yoluyla da olsa bir hayli yol aldığınız, form örneğinizden belli..menüler profesyonelce dizayn edilmiş...tebrik ediyorum...
 
Katılım
8 Haziran 2007
Mesajlar
761
Excel Vers. ve Dili
excel- 2003 Türkçe
Teşekkür ederim. Sayın Ekrem1661 bir sorum daha olacak. Şimdi form üzerine çağırdığım bir kişiye ait bilgileri nasıl silebilirim. Silmek derken satırı tamamen silmek istemiyorum. Sadece Satırdaki veriler silinsin. böyle birşeyi nasıl yapabilirim.
 

EKREM1661

Altın Üye
Katılım
10 Kasım 2006
Mesajlar
1,265
Excel Vers. ve Dili
Excel-2016
Altın Üyelik Bitiş Tarihi
03-02-2026
Satırı silmediğinize göre, bunu düzeltme diye adlandırabiliriz...
Bu durumda, Bilgi_Girişi formuna bir de veri çağır butonu eklemeni öneririm..
TextBox kutularını hem veri eklemede, hem de veri çağırmada kullanmış olursun.

Haliyle çağrılmış olan satıra ait bilgiler görsel olarak göz önüne gelmiş olur,
ve ilgili kututa yapılacak değişiklik ve silme gibi eylemden sonra kaydet butonu ile işlemi sonlandırmış olursun..

Tabii ki bu bir tasarım düşüncesi, herkesin tasarımı kendisine göre farklı olur..
Bunun için, forumda değişik tasarıma sahip örnek çalışmalar mevcuttur.
Bu örneklerden, kendinize en uygun düşen örneği projeniz içerisinde geliştirmeniz gerekir..
 
Katılım
8 Haziran 2007
Mesajlar
761
Excel Vers. ve Dili
excel- 2003 Türkçe
FORM üzerinde zaten çağırma butonu var. çağırdıgım veriler form üzerine geliyor.
BEN BÖYLE BİRŞEY DENEDİM . SİLME İŞLEMİNİ YAPIYOR.
Private Sub CommandButton7_Click()
If MsgBox("Silmek İstediğnden Eminmisin.", vbYesNo) = vbNo Then
Exit Sub
End If
TextBox2.Value = Empty
TextBox3.Value = Empty
TextBox4.Value = Empty
End Sub

HATA VEYA BİR SAKINCA OLABİLİR Mİ
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
FORM üzerinde zaten çağırma butonu var. çağırdıgım veriler form üzerine geliyor.
BEN BÖYLE BİRŞEY DENEDİM . SİLME İŞLEMİNİ YAPIYOR.
Private Sub CommandButton7_Click()
If MsgBox("Silmek İstediğnden Eminmisin.", vbYesNo) = vbNo Then
Exit Sub
End If
TextBox2.Value = Empty
TextBox3.Value = Empty
TextBox4.Value = Empty
End Sub

HATA VEYA BİR SAKINCA OLABİLİR Mİ
Bu kodlarla sadece textboxlardaki değerleri silebilirsiniz.:cool:
 
Katılım
8 Haziran 2007
Mesajlar
761
Excel Vers. ve Dili
excel- 2003 Türkçe
Pekİ Sayfadan Nasil Sİlebİrİm. Form Üzerİne Geldİkten Sonra
 

EKREM1661

Altın Üye
Katılım
10 Kasım 2006
Mesajlar
1,265
Excel Vers. ve Dili
Excel-2016
Altın Üyelik Bitiş Tarihi
03-02-2026
Sn.ferhat gürbüz..!
sanırım ben konuyu farklı anladım..
1-Söylediğiniz, verileri çağırma butonu tam olarak hangisi kullanılacak.. (bilgi_girişi formundaki "terfi bilgilerini temizle" butonumu?
2-Silinecek olan veriler, satırın tamamı mı, yoksa belirli hücreler mi?
 
Katılım
8 Haziran 2007
Mesajlar
761
Excel Vers. ve Dili
excel- 2003 Türkçe
Şimdi Maaş_Bilgi_Girişi formu üzerinde sorgu gir butonu var.
TextBox1 e personel no girip Sorgu Çalıştır butonu var. Onunla çağırıyorum.

Silinecek hücreler ise TextBoxların veriyi aldıkları hücreler silinecek. Satır silinmeyecek.

Örnek TextBox1 Personel_Bilgi sayfasından B sutunundan veri alıyor.

bunun gibi

bu konu iyice can sıkmaya başladı. Ne olur yardım edinde çözelim şu konuyu.
 

EKREM1661

Altın Üye
Katılım
10 Kasım 2006
Mesajlar
1,265
Excel Vers. ve Dili
Excel-2016
Altın Üyelik Bitiş Tarihi
03-02-2026
Sn.Ferhat Bey..!

Konu ile ilgilenmek için biraz geç fırsat buldum, fakat uğraştırdı da..
Konuyu daha kolay kavrayabilmem için, farklı menü altında kendime ait bir tasarım şekli kullandım, mevcut menülere dokunmadım..

Ancak, siz bu çalışmayı kendi tasarımınıza dönüştürmeniz zor olmaz..
Kullandığım mantığı kısaca açıklayayım..
Bilgi_Girişi formunda, Combobox kutusundan isim seçince, o satıra ait bilgiler TextBox kutularına yerleşir..manuel olarak da textboxlara bilgi girilebilir..
"Yeni kayıt Ekle" butonunu; mevcut kayıtların sonuna yeni kayıt ekler..
"Sil" butonu; combobox ile çağrılan verilere ait, ilgili satırın verilerini siler..
"Değiştir" butonu; çağrılan verileri aynı satır üzerinde değiştirmeye yarar..

Sizin anlattıklarınızdan anladığımı bu şekilde uyarladım.. farklı bir şey gerekiyorsa elimden geldiğince yardımcı olurum..Çıkmaza girdiğimiz yerde forumdan yardım isteriz..

Şimdilik, yapılan ilişikteki çalışmayı bir incele, sonucu görelim..
 
Katılım
8 Haziran 2007
Mesajlar
761
Excel Vers. ve Dili
excel- 2003 Türkçe
Sayın Ekrem Bey. İnanın çok üzüldüm. Ben basit birşey diye düşünmüştüm. Sizlere çok zahmet oldu. Çok güzel olmuş. Ellerinize sağlık. Dediğiniz gibi bir benim dosyaya uyarlayayım bakalım ne gibi sorunlar yada eksikler olacak. İnşallah bir sorun çıkmaz. çok teşekkür ederim kolay gelsin.
 

EKREM1661

Altın Üye
Katılım
10 Kasım 2006
Mesajlar
1,265
Excel Vers. ve Dili
Excel-2016
Altın Üyelik Bitiş Tarihi
03-02-2026
Sayın Ferhat Gürbüz..!

Sizin çalışma şeklinizi bilemediğim için, sadece "sil" makrosundan tam randıman alınabileceğinden emin değilim.. Şöyleki,

"Sil" makrosu, comboboxla seçilen veriye bağlı olarak, ait olduğu satırın; şu,
Range("B" & Satir, "BG" & Satir).Activate
kodu ile "B:BG" aralığını silmektedir..

Eğer, dersen ki "satırdaki bilgilerin tamamı silinmesin" işte o zaman farklı bir mantık ve uğraş gerekiyor.. Fakat basit bir mantıkla 2 farklı çözüm şekli uygulanabilir.. Şöyleki,

1-"Bilgi_Girişi" formu üzerindeki TextBox'lar 32 adet, sayfa üzerindeki sütunlar ise 59 adet... Yani 27 adet hücre(veri) form üzerine yansımıyor..
Bilgi_Girişi formu genişletilerek, kalan 27 adet hücre bilgisi için de TextBox oluşturulur ise, sorun kalkar.. Çünkü silme ve kaydetme hücrelerin tamamında olacağı için bir şey farketmiyecek..

2-Veya, TextBox oluşturulmaz.. Fakat buna karşılık, mevcut 32 adet textbox un karşılığı olan sütunlar ilk bir araya getirilir.. o zaman silme kodu ise,
Range("B" & Satir, "AA" & Satir).Activate
şeklinde olur.. Bu defa mevcut textbox lara ait bilgilerin, dışındaki bilgiler silinmemiş olur..

Bunun dışında, başka önemli bir sorun çıkacağını zannetmiyorum.. iyi çalışmalar..
 

EKREM1661

Altın Üye
Katılım
10 Kasım 2006
Mesajlar
1,265
Excel Vers. ve Dili
Excel-2016
Altın Üyelik Bitiş Tarihi
03-02-2026
Sayın Ferhat Gürbüz..!

Dosyanız ilişikte… Gerekli açıklamaları dosya içerisinde yaptım…

Bilgi_Girişi formunda yerleşik combobox ile hem textbox’lara sayfadan veri çağrılabiliyor, hem de aynı textbox’lardan bilgi girişi ile sayfanın son satırına veri aktarımı yapabiliyor, sil butonuyla silinebiliyor, değiş butonuyla istenilen veriler düzeltilebiliyor, formüllere dokunmuyor..

Hayırlı çalışmalar...
 

EKREM1661

Altın Üye
Katılım
10 Kasım 2006
Mesajlar
1,265
Excel Vers. ve Dili
Excel-2016
Altın Üyelik Bitiş Tarihi
03-02-2026
Ferhat bey; sizdeki orijinal dosyayı kullanacaksanız.. sizdeki dosya gereğinden fazla boyuta sahip.. Kullanılmayan tüm alanlar biçimlendirme gibi müdahaleler sonucu bellek kapsamına alınmış.. Bu ise dosyanın yükünü artırarak ileride çalışmasını ağırlaştıracaktır.. Nitekim, sizden ilk indirdiğim dosya boyutu 16 küsür MB iken, bunu 1 küsür MB düzeyine indirdim..

Söylediğimi aynen şu şekilde yapın; Personel_Bilgi sayfasında, verilerden sonra gelen boş satırlardan itibaren, satır başlığına (satır numaralarının bulunduğu başlık) tıklayarak sol tuşu bırakmadan aşağıya doğru seçerek en sona kadar in, ta ki son satır 65536 ya kadar, bu 2-3 dk.sürebilir..(daha kolay yolunu bilirsen fark etmez) Ancak hücre veya sütun değil, satır seçilmesi lazım.. Dikey kaydırma çubuğunu sayfa sekmeleri hizasına doğru çektiğiniz zaman binlerle ifade edilen satırları göstermemesi lazım.. Seçtiğiniz bu boş satırları silin.. boyutun ne kadar aşağıya düştüğünü göreceksiniz.. Bu yöntemi mümkünse diğer sayfalara da uyarlayın..
 
Üst