UserForm

Katılım
23 Ekim 2007
Mesajlar
1,135
Excel Vers. ve Dili
Excel 2003 TR
Merhabalar
Sayın hocalarım burada açıklama yapmak yerine dosya içinde açıklama yaptım bi göz atarda yardımcı olursanız şimdiden teşekkürler.
 

Ekli dosyalar

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,739
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

Ekteki örnek dosyayı incelermisiniz.
 

Ekli dosyalar

Katılım
23 Ekim 2007
Mesajlar
1,135
Excel Vers. ve Dili
Excel 2003 TR
Merhabalar
Sayın Korhan Ayhan bey.
İlgi ve yardımlarınıza teşekkürler,inceleme yaparken yeni vardım farkına 100*2=200 geliyor ama 100*2,5=200 veriyor acaba hatam nerede 2,5 yazıncada sayfaya metin olarak geliyor.Gecenin bu saatinde yardımlarınız için tekrar teşekkürler.Beyninize sağlık.
 
Katılım
23 Ekim 2007
Mesajlar
1,135
Excel Vers. ve Dili
Excel 2003 TR
Pardon özür dilerim comboboxtan firmayı seçince 2,3,4 textboxlara değilde 5,6,7-ye kayacak ama firma tam olduğu yerde kalacak yani textbox1
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,739
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

Aşağıdaki komutu (Val) kullandığınız için küsüratlı sayılarda sıkıntı yaşıyorsunuz.

Kod:
TextBox4 = [COLOR=red]Val[/COLOR](TextBox2) * [COLOR=red]Val[/COLOR](TextBox3)
Bu komut sadece tamsayıları değerlendirir. Bu komutun yerine (Cdbl) kullanmalısınız.

Kod:
TextBox4 = Cdbl(TextBox2) * Cdbl(TextBox3)
 
Katılım
23 Ekim 2007
Mesajlar
1,135
Excel Vers. ve Dili
Excel 2003 TR
Hocam sonuna geldik ve sonunda kodlar sarıya boyandı.Kaydet dediğim zaman bakın sarı oluyor kodlar.
 

Ekli dosyalar

Katılım
23 Ekim 2007
Mesajlar
1,135
Excel Vers. ve Dili
Excel 2003 TR
Değerli hocalarım,bu dosyada ki hatayı nasıl kaldırırız.Kaydet deyince kod sarı renge dönüyor.Teşekkürler iyi çalışmalar.
 
Katılım
23 Ekim 2007
Mesajlar
1,135
Excel Vers. ve Dili
Excel 2003 TR
Çözümü buldum ama ben bunu Properties ile değil kodla çözmek istiyorum.Propertieste textte "0"değeri verince oluyor.Bunu kodla nasıl çözecez.Çünkü girişleri çıkışsız kaydetmiyor.İyi çalışmalar
 

Orion1

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

Ofis-2010-TR 32 Bit
Kodklarınızın en başına koyunuz.:cool:
Kod:
On Error Resume Next
 
Katılım
23 Ekim 2007
Mesajlar
1,135
Excel Vers. ve Dili
Excel 2003 TR
Sayın Evren bey sizlere ve forumdaki diğer hocalarıma allah unutkanlık vermesin.
Elinize sağlık.Teşekkürler
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,739
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

Hataya sebep olan kısımları kontrol altına alarakta sorunu çözebilirsiniz.

Kaydet kodunu aşağıdaki şekilde değiştirip denermisiniz.

Kod:
Private Sub cmdKayit_Click()
    Dim SATIR As Long
    Dim BUL As Range
    Sheets("Veri").Select
    SATIR = Range("A65536").End(3).Row + 1
    Cells(SATIR, 1) = SATIR - 1
    If TextBox2 = Empty Then TextBox2 = 0
    If TextBox3 = Empty Then TextBox3 = 0
    If TextBox8 = Empty Then TextBox8 = 0
    If TextBox9 = Empty Then TextBox9 = 0
    TextBox4 = CDbl(TextBox2) * CDbl(TextBox3)
    TextBox10 = CDbl(TextBox8) * CDbl(TextBox9)
    Cells(SATIR, 2) = TextBox1.Text
    Cells(SATIR, 3) = CDbl(TextBox2.Value)
    Cells(SATIR, 4) = CDbl(TextBox3.Value)
    Cells(SATIR, 5) = TextBox4.Value
    Cells(SATIR, 6) = CDbl(TextBox8.Value)
    Cells(SATIR, 7) = CDbl(TextBox9.Value)
    Cells(SATIR, 8) = TextBox10.Value
        
    With Sheets("Rapor")
    Set BUL = .Range("B:B").Find(TextBox1.Text)
    If Not BUL Is Nothing Then
    .Cells(BUL.Row, "C") = WorksheetFunction.SumIf([Veri!B:B], .Cells(BUL.Row, "B"), [Veri!C:C])
    .Cells(BUL.Row, "D") = WorksheetFunction.SumIf([Veri!B:B], .Cells(BUL.Row, "B"), [Veri!F:F])
    .Cells(BUL.Row, "E") = .Cells(BUL.Row, "C") - .Cells(BUL.Row, "D")
    Else
    SATIR = .Cells(65536, 2).End(3).Row + 1
    .Cells(SATIR, "B") = TextBox1.Text
    .Cells(SATIR, "C") = WorksheetFunction.SumIf([Veri!B:B], .Cells(SATIR, "B"), [Veri!C:C])
    .Cells(SATIR, "D") = WorksheetFunction.SumIf([Veri!B:B], .Cells(SATIR, "B"), [Veri!F:F])
    .Cells(SATIR, "E") = .Cells(SATIR, "C") - .Cells(SATIR, "D")
    End If
    Set BUL = Nothing
    End With
    
    MsgBox "Kayıt İşlemi Tamamlandı."
End Sub
 
Katılım
23 Ekim 2007
Mesajlar
1,135
Excel Vers. ve Dili
Excel 2003 TR
Selamlar,

Hataya sebep olan kısımları kontrol altına alarakta sorunu çözebilirsiniz.

Kaydet kodunu aşağıdaki şekilde değiştirip denermisiniz.
Merhabalar.
Sayın Korhan bey,ilgi ve yardımlarınıza teşekkürler.
Ben bu kodları denedim oldu elinize sağlık.Kafama şu cümle takıldı,"Hataya sebep olan kısımları kontrol altına alarakta sorunu çözebilirsiniz." Bunu nasıl yapacam.Teşekkürler.İyi çalışmalar.
 

Orion1

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

Ofis-2010-TR 32 Bit
Merhabalar.
Sayın Korhan bey,ilgi ve yardımlarınıza teşekkürler.
Ben bu kodları denedim oldu elinize sağlık.Kafama şu cümle takıldı,"Hataya sebep olan kısımları kontrol altına alarakta sorunu çözebilirsiniz." Bunu nasıl yapacam.Teşekkürler.İyi çalışmalar.
Korhan bey aşağıdaki kodlarla hatayı engellemiş.:cool:
Ama bu seferde textboxlara Metin girilirse hata oluşacak.
Onun içinde if not isnumeric(textbox2.text) then textbox2.text=0 kullanmak daha doğru olacaktır.
Kod:
If TextBox2 = Empty Then TextBox2 = 0
    If TextBox3 = Empty Then TextBox3 = 0
    If TextBox8 = Empty Then TextBox8 = 0
    If TextBox9 = Empty Then TextBox9 = 0
 
Katılım
23 Ekim 2007
Mesajlar
1,135
Excel Vers. ve Dili
Excel 2003 TR
Sayın Evren Bey,tek kelime"Harikasınız"
Bayramınızı kutlar mutluluklar dilerim.İyi çalışmalar.
 

Orion1

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

Ofis-2010-TR 32 Bit
Sayın Evren Bey,tek kelime"Harikasınız"
Bayramınızı kutlar mutluluklar dilerim.İyi çalışmalar.
O sizin harikalığınız.
İyi bayramlar.:cool:
 
Üst