• DİKKAT

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

UserForm stok exceli

Katılım
30 Haziran 2012
Mesajlar
116
Excel Vers. ve Dili
2010 excel ingilizce
Selamlar,
“Gönderimler” ve “Kayıtlar” başlıkları altında iki Userform bulunmaktadır.
“Gönderimler” formunu doldurduğumuz zaman “Aksiyon” sayfasında “GÖNDERİMLER” başlığının altına verileri kayıt alıyor.
“Kayıtlar” formunu doldurduğumuz zaman “Aksiyon” sayfasında “KAYITLAR” başlığının altına verileri kayıt alıyor.
Sizden arzum;
•“Gönderimler” formunda “Tdrk Edilen Bölge” nin karşısına girilen bölgeye göre, “Genel Stok” sayfasında malzeme numarasını bulsun ve adedini de, formumuza girilen adete göre eksiltsin ve yine forma girilen bölgeye göre sayfaların arasından o bölgenin sayfasına, formumuza girilen verileri kaydetsin.
Örn. “Gönderimler” formumuza verileri giriyorum,
Malzeme No. : 86.4R564.500
Adet : 5
Tdrk Edilen Bölge : Beşiktaş
İrsaliye No : A670054
Yukarıdaki örneğe göre, 86.4R564.500 malzeme numarasını “Genel Stok” sayfasında bulsun, şu anki adeti 20, 20’den 5 eksiltsin 15 olsun. Bu 5 adeti de, “Beşiktaş” sayfasında “Eldeki Mikt.” kolonunda 86.4R564.500 varsa karşısına eklesin, yoksa son boş olan hücreye yazsın ve karşısındaki “Son Tedarik Tarihi”ne de tarih varsa güncellesin yoksa, formu doldurduğu tarihi koysun (Örn. Bugün yaptıysa sürekli 17.12.2012 olarak kalsın).
Formlarımızda yapılan herhangi bir işleminde “ Aksiyon” sayfasında kayıdı olsun.
Örn. “Gönderimler” formumuza yukarıdaki girilen verileri baz alırsak,
“Tarih” başlığının altında yer alan hücrelere de kayıt alınan tarihi otomatik olarak atsın.
Aynı şekilde “Kayıtlar” formumuza girilen verileri de “Aksiyon” sayfamızın “KAYITLAR” konu başlığının altında yer alan “Tarih” kolonunun altındaki hücrelere kayıt tarihini yazsın (Örn. Bugün yaptıysa sürekli 17.12.2012 olarak kalsın). Aynı zamanda “Kayıtlar” formumuza girilen veri de, “Genel Stok” sayfasında varsa adetini ve tarihini güncellesin yoksa, son boş olan satıra verileri yazsın.
Ayrıca, "Genel Stok" sayfası haricinde tüm sayfalardaki malzeme numaralarının karşısında yer alan tanımıda "Genel Stok" sayfasındaki verilerden bulsun (Exceldeki "Düşeyara "mantığı).
Tarihi ve tanımları özellikle Userform’larımda almadım ki Excelimizin de bir kolaylığı olsun istedim. :)
İlgili arkadaşlarım ve saygı değer üstatlarım yardımlarınız benim için çok önemli olacak.
Şimdiden teşekkür ederim. :mutlu:
 

Ekli dosyalar

Ekteki dosyanızı inceleyin. Tarih ile ilgili eksikler var ama bir yerden sonra oku oku sıkıldım. Sayfalardaki tarihleri koydum ordan bakıp diğerlerii yaparsınız olmazsa yine yardımcı olurum.

Kolay Gelsin
 

Ekli dosyalar

Son düzenleme:
İlginize minnettarım

Sayenizde bilmediğim birşey öğrendim, saolun (.Value = Date).:mutlu:

Şimdi, "UserForm1"in işlevi tamamlandı. Şu an üç sorunum kaldı.
•UserForm2'nin içeriğinde yazan kodlarda bir sorunum var.
•Daha sonra "UserForm2"de kayıt alınan bir ürün, "Genel Stok" sayfasında var ise "Son Geliş Tarihi" başlığı altındaki tarihi güncellesin yoksa, "Genel Stok" sayfasında boş olan hücreye yeni verileri yazsın.
•Birde, eğer herhangi bir sayfaya yeni bir veri eklenirse, hangi sayfa olursa olsun ("Genel Stok" sayfası haricinde), "Malzeme No." karşısında bulunan tanımı, "Genel Stok" sayfasından bularak karşısına otomatik olarak yazsın.

Şimdiden teşekkür ederim.
 
Sayenizde bilmediğim birşey öğrendim, saolun (.Value = Date).:mutlu:

Şimdi, "UserForm1"in işlevi tamamlandı. Şu an üç sorunum kaldı.
•UserForm2'nin içeriğinde yazan kodlarda bir sorunum var.
•Daha sonra "UserForm2"de kayıt alınan bir ürün, "Genel Stok" sayfasında var ise "Son Geliş Tarihi" başlığı altındaki tarihi güncellesin yoksa, "Genel Stok" sayfasında boş olan hücreye yeni verileri yazsın.
•Birde, eğer herhangi bir sayfaya yeni bir veri eklenirse, hangi sayfa olursa olsun ("Genel Stok" sayfası haricinde), "Malzeme No." karşısında bulunan tanımı, "Genel Stok" sayfasından bularak karşısına otomatik olarak yazsın.

Şimdiden teşekkür ederim.

* Userform2 nin tüm kodlarını değiştirdim. Sorun Kalmadı.
* Userform2 ile kayıt alan bir ürün Genel stok sayfasında aranıyor var ise tarih güncelleniyor yok ise liste altına ilave ediliyor.
- Burada ürün var ise adedininde güncellenmesi gerekmiyor mu ? Bununla ilgili bir şey yazmamışsınız. Ama benzer yapı zaten userform1 de var gerekirse oradan uygularsınız.

* Herhangi bir sayfaya veriyi biz Userform1 ile ilave ediyoruz. Bu ilaveyi yaparkende bakıyoruz daha önce bu malzeme var mı diye yoksa alta ilave ediyoruz. Bu ilave yapılırken de malzeme tanımı bilgisi yok. Malzeme Tanımı stok sayfasına userform2 ile yapılıyor. Ben yinede bunun için userform1 e ilaveyi yaptım, yeni malzemenin tanımı yazıldığında bu diğer sayfaların hangisine yapılmışsa orada görünecek.

Yukarıdaki mesajımdaki dosyayı güncelledim. Tekrar indirip değişiklikleri incelersiniz.

Kolay Gelsin
 
İlgili excele bir kaç basit kodlarda ekleyerek tarafınıza sunuyorum.
Yalnız, Bedri Bey son olarak, sizinde bahsettiğiniz gibi stoğa girilen malzeme stokta var ise adetininde güncellenmesi gerekiyordu. Ben bir kod yazdım ama yazdığım kodlamada, stokda "A" kodundan 15 adet var diyelim, yeni gelen partide "A" kodundan 5 adet daha stoğa aldığım zaman adet 155 oluoyor. Yani adetlerı toplayacağına yanyana getiriyor.
Bunun dışında unuttuğum bir şey daha "Aksiyon" sayfasının "Gönderimler" başlığı altında yer alan kodların karşısına tanım gelmiyor (Birkaç şey denedim ama yapamadım:frown:).
 

Ekli dosyalar

Çok saolun

Tam istediğim gibi, süper oldu.:mutlu:
 
Sorun...

Bedri Bey, birkaç sorun daha çıktı.
UserForm2'nin sorunu,
Yeni gelen ürünü stoğa alırken "Gönderen" kutucuğunu doldurmadan kayıt alırsam, bir sonraki kayıtta da "Gönderen" kutucuğunu doldurduğumuz zaman bir önceki kayıdı siliyor.
UserForm2 için "Malzeme No." kutucuğunu doldurmadığımız sürece hiç bir işlem yapılmasın, "Lütfen Malzeme Numarasını Giriniz" gibi,

UserForm1'in sorunu,
"Malzeme No." kutucuğunu doldurmadan devam edersen karşına direk VBA'nın hata mesajı geliyor. Onun yerine "Lütfen Malzeme Numarasını Giriniz" mesajını görüntüleyebilir miyiz?

Yardımlarınızı rica ederim.
 
Bedri Bey, birkaç sorun daha çıktı.
UserForm2'nin sorunu,
Yeni gelen ürünü stoğa alırken "Gönderen" kutucuğunu doldurmadan kayıt alırsam, bir sonraki kayıtta da "Gönderen" kutucuğunu doldurduğumuz zaman bir önceki kayıdı siliyor.
UserForm2 için "Malzeme No." kutucuğunu doldurmadığımız sürece hiç bir işlem yapılmasın, "Lütfen Malzeme Numarasını Giriniz" gibi,

UserForm1'in sorunu,
"Malzeme No." kutucuğunu doldurmadan devam edersen karşına direk VBA'nın hata mesajı geliyor. Onun yerine "Lütfen Malzeme Numarasını Giriniz" mesajını görüntüleyebilir miyiz?

Yardımlarınızı rica ederim.

Userform2 ile ilgili Malzeme no girme zorunluluğu ve Gönderen kutucuğu boş girişinden sonraki giriş ile ilgili eklemeler yapıldı.
Userform1 ile ilgili ben hata mesajı almadım. Buradaki kodların % 90 ı sizin zaten. Hatanın ne olduğu Debug tıklayınca hangi satıra yönlendirildiğinizi söylerseniz bakayım.
Kolay Gelsin
 

Ekli dosyalar

Userform1'de "Malzeme No." kutucuğuna birşey yazmadan adet kutucuğuna herhangi birşey yazdığım zaman direk hata veriyor Debug butonunu tıklayıncada beni "TextBox2 = TextBox1 - ComboBox2" koduna götürüyor.
Teşekkürler.
 
Teşekkürler

Öğretmiş olduğunuz aşağıdaki kodu,
If ComboBox3.Value = Empty Then
MsgBox "LÜTFEN MALZEME NUMARASI GİRİŞİ YAPINIZ!", vbExclamation, "": Exit Sub
End If

İki yere daha ekleyerek sorun çözüldü.
Teşekkürler Bedri Bey,
 

Ekli dosyalar

Userform1'de "Malzeme No." kutucuğuna birşey yazmadan adet kutucuğuna herhangi birşey yazdığım zaman direk hata veriyor Debug butonunu tıklayıncada beni "TextBox2 = TextBox1 - ComboBox2" koduna götürüyor.
Teşekkürler.

Hemen bu hata satırının üstüne
On Error Resume Next

Kolay Gelsin
 
Sorun...

UserForm2 ile ilgili,

-Yeni gelen ürünün ilk başta "İrsaliye No." kutucuğunu doldurmadan kayıt alıyorum, bir başka ürünüde irsaliye numarasını girerek stoğa aldığım zaman yeni ürünün kaydını eski ürünün kayıdını silerek yerine koyuyor .
(Sanırım "satır = Range("C65536").End(3).Row + 1" kodu ile ilgili ama bu sorunu çözemedim.)
Birde, UserForm1 ile UserForm2'de "Adet" kutucuğuna yalnızca rakam girilmesi mümkün müdür?

Teşekkürler.
 
UserForm2 ile ilgili,

-Yeni gelen ürünün ilk başta "İrsaliye No." kutucuğunu doldurmadan kayıt alıyorum, bir başka ürünüde irsaliye numarasını girerek stoğa aldığım zaman yeni ürünün kaydını eski ürünün kayıdını silerek yerine koyuyor .
(Sanırım "satır = Range("C65536").End(3).Row + 1" kodu ile ilgili ama bu sorunu çözemedim.)
Birde, UserForm1 ile UserForm2'de "Adet" kutucuğuna yalnızca rakam girilmesi mümkün müdür?

Teşekkürler.

Evet bahsettiğiniz satır ile ilgili bu satır C sutununa bakıp son veri olan hücreyi bulup buna bir satır ekliyor ve bunuda satır olarak tanıtıyor.
Ben hızla Malzeme no 3. sütunda diye C yazmışım aslında tabloda A sütunu boş bırakıldığı için bu D olacak. Zaten Malzeme No girişi yapmadan kayıt almadığımız için bu sutun sürekli dolu olacak ve üst üste kayıt oluşmayacak.

Kolay Gelsin
 
Az önce "C" yi "D" yapmıştım bir sorun oldu, şimdi yeniden exceli açıp yaptım sorun göremedim.
Peki onun haricinde, UserForm1 ile UserForm2'de "Adet" kutucuğuna yalnızca rakam girilmesi mümkün müdür Bedri Bey?
 
Az önce "C" yi "D" yapmıştım bir sorun oldu, şimdi yeniden exceli açıp yaptım sorun göremedim.
Peki onun haricinde, UserForm1 ile UserForm2'de "Adet" kutucuğuna yalnızca rakam girilmesi mümkün müdür Bedri Bey?

evet yanlızca rakam girilmesi mümkündür. Formu araştırın bu konuyla ilgili pek çok örnek mevcut.

Kolay Gelsin
 
Geri
Üst