AccessTr.neT
Excel Vba Matematiksel İşlem Hakkında - Baskı Önizleme

+- AccessTr.neT (https://accesstr.net)
+-- Forum: Microsoft Excel (https://accesstr.net/forum-microsoft-excel.html)
+--- Forum: Excel Cevaplanmış Soruları (https://accesstr.net/forum-excel-cevaplanmis-sorulari.html)
+--- Konu Başlığı: Excel Vba Matematiksel İşlem Hakkında (/konu-excel-vba-matematiksel-islem-hakkinda.html)



Excel Vba Matematiksel İşlem Hakkında - Oğuz Türkyılmaz - 13/10/2021

Herkese sağlıklı günler dilerim.
Uygulamada Döviz cinsi seçildiği anda Toplam tutarın (Proje bedeli) Mevcut döviz kurundan karşılığının Döviz Karşılığı Textboxına yazılmasını yapmaya çalıştım. Formülde tutarı döviz kuruna böldüm fakat sonuç resimde görüldüğü gibi 0.6535... şeklinde çıkıyor. Normalde 6.535 usd göstermesi gerekiyor. Sorun nedir.



Kod:
Private Sub ComboBox_DovizCinsi_Exit(ByVal Cancel As MSForms.ReturnBoolean)

If KeyCode = 13 Then KeyCode = 9

If ComboBox_DovizCinsi.Value = "USD" Then
TextBox_DovizKuru.Value = [Kurlar!C2]
TextBox_DovizKarsiligi.Value = TextBox_ProjeBedeli.Value / TextBox_DovizKuru.Value

ElseIf ComboBox_DovizCinsi.Value = "EURO" Then
TextBox_DovizKuru.Value = [Kurlar!C5]

Else

TextBox_DovizKuru.Value = 1

End If


End Sub


[Resim: do.php?img=11340]


RE: Excel Vba Matematiksel İşlem Hakkında - berduş - 13/10/2021

virgül ve nokta farkından kaynaklanan bir sorundur sayıları nokta yerine virgül koyarak dener misiniz?


RE: Excel Vba Matematiksel İşlem Hakkında - Oğuz Türkyılmaz - 13/10/2021

(13/10/2021, 14:00)berduş yazdı: virgül ve nokta farkından kaynaklanan bir sorundur sayıları nokta yerine virgül koyarak dener misiniz?

@berduş hocam ondan kaynaklanıyor evet ama evdeki ile iş deki bilgisayarlarda farklı sonuç veriyor. Sistem ayarlarından . ile , değiştirip yapmaya çalışıyorum.


RE: Excel Vba Matematiksel İşlem Hakkında - feraz - 14/10/2021

Aslında bir kod vardı excelin ondalık ve basamak olaylarını değiştiren.

Yani Excel açılışında kontrol ediyor eğer nokta ise virgül yada tersi bunları çeviriyordu.
Kapanıştada eski haline çeviriyordu.
Bulunca yüklerim sanırım arşivimde olacak.


RE: Excel Vba Matematiksel İşlem Hakkında - feraz - 14/10/2021

Bir modüle alttaki kodları ekleyin abey.Open yada colse varsa içindekileri ekleyin yada excelin açılış yada kapanış yerlerine ekleyin with ile end if olan yerleri.

Sub Auto_Open()
    With Application
        .DecimalSeparator = ","
        .ThousandsSeparator = "."
        .UseSystemSeparators = False
    End With
End Sub

Sub Auto_Close()
    With Application
        .DecimalSeparator = "."
        .ThousandsSeparator = ","
        .UseSystemSeparators = True
    End With
End Sub



RE: Excel Vba Matematiksel İşlem Hakkında - Oğuz Türkyılmaz - 16/10/2021

[quote="feraz" pid="182945" dateline="1634177102"]
Bir modüle alttaki kodları ekleyin abey.Open yada colse varsa içindekileri ekleyin yada excelin açılış yada kapanış yerlerine ekleyin with ile end if olan yerleri.

@feraz hocam maalesef bu şekilde de çalışmadı. Kur sayfasından alınan değeri text olarak alınca formül düzgün çalıştı.
Kod:
Private Sub ComboBox_DovizCinsi_Exit(ByVal Cancel As MSForms.ReturnBoolean)

If KeyCode = 13 Then KeyCode = 9

If ComboBox_DovizCinsi.Value = "USD" Then

TextBox_DovizKuru.Value = [Kurlar!C2].Text
TextBox_DovizKarsiligi.Value = Format(TextBox_ProjeBedeli.Value / TextBox_DovizKuru.Value, "#,##")

ElseIf ComboBox_DovizCinsi.Value = "EURO" Then

TextBox_DovizKuru.Value = [Kurlar!C5].Text
TextBox_DovizKarsiligi.Value = Format(TextBox_ProjeBedeli.Value / TextBox_DovizKuru.Value, "#,##")

Else

TextBox_DovizKuru.Value = 1
TextBox_DovizKarsiligi.Value = Format(TextBox_ProjeBedeli.Value / TextBox_DovizKuru.Value, "#,##")

End If


End Sub


Çok şükür hallettim. Teşekkürler.