• DİKKAT !

    Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak Dosya Yükleme tamamen ücretsizdir.

Çözüldü Userform2 Textbox toplama ve kaza zarar hesabı yaptırma

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.
Durum
Konu Çözümlendiği İçin Kapatılmıştır.

arslanbey

Yeni Üye
Katılım
19 Tem 2024
Mesajlar
224
Aldığı beğeni
25
Excel V
Office 2019 TR
Konu Sahibi
İyi akşamlar;

Verimlilik hesabı tuttuğum Excel dosyasında Textbox toplamı aldırmak ve kar zarar hesabını yapmak istiyorum.

Depo çıkış kutu bazında oluyor ama kutu içeriği sıvı (ML) var = TextBox8

Verilmesi Gereken Cal Sayısı=Textbox4 veri girişini ben yapacağım

Giriş toplam için , Textbox2 ve Textbox8 toplayıp Textbox11 ( ML) olarak aldırmak istiyorum.


Verilen CAL Sayısı için, TextBox6 veri girince TextBox4 eksilmesi istiyorum.

İç depoda kalması gereken miktar= Textbox11 ve TextBox6 çıkartıp Textbox9 ( ML) olarak aldırmak istiyorum.

İmha edilince TextBox5 ‘de TextBox4 ve Textbox8 ‘ veriler silinmesini istiyorum.
 
Çözüm
Class içindeki toplama olayını biraz değiştirdim çıkarma olayı aynı.
Topmada Paramarray kullanarak ikiden fazla textbox toplanıyor önceden en fazla 2 adet textbox toplanıyordu.

HTML:
Kod:
İçeriği görebilmek için Giriş yap ya da Üye ol.
Mesela yukardaki kodda Txt11=txt2+txt3+txt33 oluyor.

Alttaki kodda ise kar zarar hesaplama sub ekledim.Zaten kod içinde açıklama yaptım.



HTML:
Kod:
İçeriği görebilmek için Giriş yap ya da Üye ol.

Alttaki kodda 4,6, ve 9 daki verilerden herhangi biri değişince kar zarar hesaplanıyor.
Eğer sadece txt4 de değişiklik olunca istiyorsanız , "TextBox6", "TextBox9" bu kısmı silin.
HTML:
Kod:
İçeriği görebilmek için Giriş yap ya da Üye ol.
İmha edilince TextBox5 ‘de TextBox4 ve Textbox8 ‘ veriler silinmesini istiyorum.

Merhaba.
Yukardaki kısmı anlamadım nasıl imha oluyor mesela?

TextBox6 ya veri girip entere basıp yada başka yere tıklayınca TextBox4 dekinden eksilir.

Alttaki kısımlarıda yaptım.
Sadece rakam giriş için kodda ekledim.
Eksik olanları tam anlaşılır yazarsanız halledebiliriz.

Giriş toplam için , Textbox2 ve Textbox8 toplayıp Textbox11 ( ML) olarak aldırmak istiyorum.
İç depoda kalması gereken miktar= Textbox11 ve TextBox6 çıkartıp Textbox9 ( ML) olarak aldırmak istiyorum.




1.gif
TextBox6
 
Konu Sahibi
Merhaba.
Yukardaki kısmı anlamadım nasıl imha oluyor mesela?

TextBox6 ya veri girip entere basıp yada başka yere tıklayınca TextBox4 dekinden eksilir.

Alttaki kısımlarıda yaptım.
Sadece rakam giriş için kodda ekledim.
Eksik olanları tam anlaşılır yazarsanız halledebiliriz.

Giriş toplam için , Textbox2 ve Textbox8 toplayıp Textbox11 ( ML) olarak aldırmak istiyorum.
İç depoda kalması gereken miktar= Textbox11 ve TextBox6 çıkartıp Textbox9 ( ML) olarak aldırmak istiyorum.




Ekli dosyayı görüntüle 29693
TextBox6
Hocam ilginizden dolayı teşekkür ederim. Yapmak istediğim depo çıkışı kutu bazlı çıkıyor ama kutunun içeriği sıvı olduğu için (ML) 2.5 ml 0.5 ml gibi hesaplamak istiyorum.
İmha da demek istediğim malzemenin son kullanma tarihi geçen malzemedir.
Yapmak istediğim diyelim ki depodan 1 kutu (2.5 ml) malzeme verildi ben diyorum ki bu 2.5 ml 'den 10 kez kullanılabilir dediğimde diyelim ki 3*0,25 =0,75 ml tane kullanıldı kar zarar (-1,25) yazmasını yanı iç depomda (+1,25) kalmasını istiyorum. textbox yanına birer textbox ekleyip biri ML olarak hesaplaması diğer textbox ise adet olarak hesaplama yapabilirmiyiz.
 
Rica ederim.Adet yada ml gibi nesneler eklemedende hesaplama yapılır normalde ama istiyorsanızda eklersiniz yada başlıklarında (adet) gibi yazılırsada anlaşılır.
Eğer örneğin alttaki gibi şu şununla bu bunula topla yada çıkart sonuç şuraya yaz gibi yazarsanız anlaşılır zannediyorum zaten yazmıştınız ama yinede ml ve adet gibi olaylar karıştı.

Örnek.
Txt9=txt2+txt8
Txt11=txt_6-txt4

Vs....
 
Konu Sahibi
Giriş toplam için ;

Adet için TextBox2 +TextBox3 toplayıp TextBox11 yazacak

ML için TextBox16 + TextBox17 toplayıp TextBox22 yazacak

Toplam çıkış için ;

Adet için= TextBox6 + TextBox7 toplayıp TextBox12 yazacak

ML için = TextBox20 + TextBox21 toplayıp TextBox23 yazacak

Adet =İç depo kalması gereken=TextBox11- TextBox4 çıkartıp TextBox9 yazacak

ML= İç depo kalması gereken TextBox18- TextBox22 çıkartıp TextBox24 yazacak

TextBox8 yazdığım TextBox17aynısı yazacak.

Kar zarar için ise ; hesabını yapamadım valla bu işte siz uzmansınız nasıl bir hesap yapılır siz bilirsiniz.
 
Konu Sahibi
Pardon hocam son dosyayı eklememişim özür dilerim. dosyayı ekledim.

Giriş toplam için ;

Adet için TextBox2 +TextBox3 toplayıp TextBox11 yazacak

ML için TextBox16 + TextBox17 toplayıp TextBox22 yazacak

Toplam çıkış için ;

Adet için= TextBox6 + TextBox7 toplayıp TextBox12 yazacak

ML için = TextBox20 + TextBox21 toplayıp TextBox23 yazacak

Adet =İç depo kalması gereken=TextBox11- TextBox4 çıkartıp TextBox9 yazacak

ML= İç depo kalması gereken TextBox18- TextBox22 çıkartıp TextBox24 yazacak

TextBox8 yazdığım TextBox17aynısı yazacak.

Kar zarar için ise ; hesabını yapamadım valla bu işte siz uzmansınız nasıl bir hesap yapılır siz bilirsiniz.
 
Yolladığınız dosyalarda yine bazı textboxlar yok mesela Textbox24 gibi.
Ben siz mantığı yazayım siz ayarlayın.Kar zarar işine bakarız.
Bir modüle toplama,çıkarma ve sadece sayı ve nokta giriş için sublar yazdım bunlarla işiniz yok.


HTML:
C#:
İçeriği görebilmek için Giriş yap ya da Üye ol.
Yukardaki kodda 11 den 4 ü çıkartıp sonucu 9 olan textboxa yazıyor.
Alttaki kodlarda ise 2 ve 3 toplanıp sonucu 11 olan textboxa yazıyor.


HTML:
C#:
İçeriği görebilmek için Giriş yap ya da Üye ol.

KeyAscii olan kodlar sadece rakam ve nokta için extra yazıldı.
Yukardaki kodlar dediğim gibi modül içine ve parametre olarak yollanıyor oraya ve orda işlem yapılıyor.
Bu açıklamalarıma göre dediğim bazı olmayan textboxları siz ayarlayın zaten veri girince hata verir.
 
Son düzenleme:
Konu Sahibi
İyi geceler ;
Biliyorum çok yoruyorum ama bu proje gerçekten çok önemli benim için yapmak istediğimi resimle anlatmak istedim.olması.png
 
İyi geceler.
Sorun değil benim için ama yarın öğleden sonra bakabilirim.

O zamana kadar dediğim gibi toplama çıkarma olaylarını gösterdim belki devam edersiniz aynı kodlara göre.
Öncedende ya,dığım gibi yanlış hatırlamıyorsam usetform2 d2 textbox24 gibi nesneler olmadığı için hata vermişti belki son eklediğiniz dosyada vardır bu textboxlar.
Aslında class ile kodları kısaltacaktım ama biraz karışık olduğu için yapamamıştım.
Resime göre ondalık olarak , yazmışsınız son eklediğimdeki dosyadaki modül içindeki keyascii deki 46 yerine 44 yazılmalı bu durumda.
Neyse yarın bakarım artık.
 
Birde çok uğraşmamak için son mesajınızdaki resimdeki verilerin olduğu yerlere ney nerden geldi hangisi hangisi ile toplandı yada çıkarıldı gibi resimde gösterirseniz belki daha açıklayıcı olur.
 
Konu Sahibi
TextBox16 ile TextBox17 toplayıp TextBox21 yazacak.
TextBox4 ben kaç ml yazarsam TextBox17 yazmasını istiyorum.
Örneğin;
Verilen CAL Sayısı =TextBox6'da 1 yazıyorsa TextBox20'de ise 0,25 ml yazacak
Verilen CAL Sayısı =TextBox6'da 2 yazıyorsa TextBox20'de ise 0,50 ml yazacak

TextBox5 ile TextBox20 toplayıp TextBox22 yazacak (TextBox5'e 1 yazdığımda TextBox22 verileri sıfırlayacak)
TextBox23 ise TextBox9 yapılan işlemin aynısı olacak.
 
TextBox16 ile TextBox17 toplayıp TextBox21 yazacak.

8.Mesaja göre tekrar size yol göstereyim belki mobilden hatam olabilir.
Alttaki keypress olanlar çok önemli değil harf vs.. yazdırmamak için eklendi tekrar hatırlatayım.

Alttaki kodun açıklaması change olanlar;
Textbox16 yada 17 de değişiklik olursa 16 ve 17 toplanıp sonucu textbox21 e yazdırır kısaca mantık bu.
Yani parametre içindeki ilk ikisi toplanır en sona yazılana sonuç gelir.


Private Sub TextBox16_Change(): ToplamlarTextbox Me.TextBox16, Me.TextBox17, Me.TextBox21: End Sub

Private Sub TextBox16_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger): SadeceRakam KeyAscii: End Sub


Private Sub TextBox17_Change(): ToplamlarTextbox Me.TextBox16, Me.TextBox17, Me.TextBox21: End Sub

Private Sub TextBox17_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger): SadeceRakam KeyAscii: End Sub
 
Konu Sahibi
8.Mesaja göre tekrar size yol göstereyim belki mobilden hatam olabilir.
Alttaki keypress olanlar çok önemli değil harf vs.. yazdırmamak için eklendi tekrar hatırlatayım.

Alttaki kodun açıklaması change olanlar;
Textbox16 yada 17 de değişiklik olursa 16 ve 17 toplanıp sonucu textbox21 e yazdırır kısaca mantık bu.
Yani parametre içindeki ilk ikisi toplanır en sona yazılana sonuç gelir.


Private Sub TextBox16_Change(): ToplamlarTextbox Me.TextBox16, Me.TextBox17, Me.TextBox21: End Sub

Private Sub TextBox16_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger): SadeceRakam KeyAscii: End Sub


Private Sub TextBox17_Change(): ToplamlarTextbox Me.TextBox16, Me.TextBox17, Me.TextBox21: End Sub

Private Sub TextBox17_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger): SadeceRakam KeyAscii: End Sub
Hocam Bu kodları yapıştırdım hata aldım. "Private Sub TextBox16_Change(): ToplamlarTextbox"
 
Öncedende yazdığım gibi mesela textbox21 yada 16 yada 17 yoksa hata veriyordur.Öğleden sonra bakarım.
 
Durum
Konu Çözümlendiği İçin Kapatılmıştır.
Geri
Üst