• DİKKAT

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

Hesaplama Sonucunun Kuruş Kısmını "00" Olarak Veriyor

  • Konbuyu başlatan Konbuyu başlatan ahmedummu
  • Başlangıç tarihi Başlangıç tarihi
A

ahmedummu

Misafir
Merhaba arkadaşlar.

Aşağıdaki kodlarda kodlardaki hesaplamada kuruş kısmını "00" olarak veriyor. Yardımcı olursanız sevinirim.

ActiveCell.Offset(0, 5).Value = toplam
ActiveCell.Offset(0, 6).Value = saat_ucreti_eski
ActiveCell.Offset(0, 7).Value = saat_ucreti_yeni
'TUTAR HESAPLANIYOR
Dim g15_31, g1_14 As Integer, g15_31_tutar, g1_14tutar, tahakkuk_eden As Long
g15_31 = Format(ActiveCell.Offset(0, 3).Value, "#,##,0")
g1_14 = Format(ActiveCell.Offset(0, 4).Value, "#,##,0")
g15_31_tutar = g15_31 * Format(saat_ucreti_eski, "#,##,0")
g1_14_tutar = g1_14 * Format(saat_ucreti_yeni, "#,##,0")
tahakkuk_eden = g15_31_tutar + g1_14_tutar
 
bunu bir dene

Kod:
Private Sub CommandButton1_Click()
ActiveCell.Offset(0, 5).Value = toplam
ActiveCell.Offset(0, 6).Value = saat_ucreti_eski
ActiveCell.Offset(0, 7).Value = saat_ucreti_yeni

'TUTAR HESAPLANIYOR
Dim g15_31, g1_14 As Integer, g15_31_tutar, g1_14tutar, tahakkuk_eden As Long

g15_31 = Format(ActiveCell.Offset(0, 3).Value, "#,##,0")
g1_14 = Format(ActiveCell.Offset(0, 4).Value, "#,##,0")

g15_31_tutar = Format(ActiveCell.Offset(0, 3).Value * saat_ucreti_eski, "#,##,0")
g1_14_tutar = Format(ActiveCell.Offset(0, 4).Value * saat_ucreti_yeni, "#,##,0")
tahakkuk_eden = Format((ActiveCell.Offset(0, 3).Value * saat_ucreti_eski) + _
(ActiveCell.Offset(0, 4).Value * saat_ucreti_yeni), "#,##,0")

End Sub
 
Merhaba Halit bey, hayırlı sahurlar.

Denedim yine aynı sonucu verdi. Kuruş kısmı 00
 
birde bunu dene

Kod:
Private Sub CommandButton1_Click()
ActiveCell.Offset(0, 5).Value = toplam
ActiveCell.Offset(0, 6).Value = saat_ucreti_eski
ActiveCell.Offset(0, 7).Value = saat_ucreti_yeni

'TUTAR HESAPLANIYOR
Dim g15_31, g1_14 As Integer, g15_31_tutar, g1_14tutar, tahakkuk_eden As Long

g15_31 = Format(ActiveCell.Offset(0, 3).Value, "#,##,00")
g1_14 = Format(ActiveCell.Offset(0, 4).Value, "#,##,00")

g15_31_tutar = Format(ActiveCell.Offset(0, 3).Value * saat_ucreti_eski, "#,##,00")
g1_14_tutar = Format(ActiveCell.Offset(0, 4).Value * saat_ucreti_yeni, "#,##,00")
tahakkuk_eden = Format((ActiveCell.Offset(0, 3).Value * saat_ucreti_eski) + _
(ActiveCell.Offset(0, 4).Value * saat_ucreti_yeni), "#,##,00")

End Sub

olmassa kodu etkileyen başka etkenler olabilir.
 
Merhaba Halit bey.

Yine 00 verdi.

Yalnız daha önce textlerin döngü ile toplamını aldırmak için siz yardım etmiştiniz ve değişken tipi hatası veriyor ve sonucu 0 çıkartıyordu. Aynı kodlarla şimdi düzeldi. Yine text42 için yine aynı hatayı veriyordu ve sonucu 0 çıkıyordu. Yine siz yardımcı olmuştunuz. O zaman denediğimiz ve hata veren kodlar şimdi çalışıyor. Yine düne kadar çalışan aşağıdaki kod bloğundan

p3 = UserForm1.TextBox10.Value
...
...
p31 = UserForm1.TextBox38.Value
p32 = UserForm1.TextBox39.Value
p33 = CDbl(Val(UserForm1.TextBox40.Value))

Text40 değişken hatası vermeye başladı. 1'den 39'a kadar olan texlerde bişey yok. Text40 bu formatta çalışıyor.

Evde Office 2003, işyerinde 2010 kullanıyorum. ondan olabilir mi? Akşamları evde gündüzleri okulda uğraşıyorum.

Bir de Halit bey,

'For i = 10 To 40
'Controls("textbox" & i).Value = ""
'Next

Yukarıdaki kodları Modül içinde yazınca "Controls" kelimesini seçip, "Sub or function not defined" diye hata veriyor. Bunun içinde yardımcı olursanız sevinirim.
 
Moderatör tarafında düzenlendi:
Sayfadaki ActiveX Text Box nesneler bu şekilde kontrol edilmiyor size örnek bir kod ekliyorum.

Kod:
Sub deneme()

Dim s1
Set s1 = Sheets(ActiveSheet.Name)

Dim Picture As Object
For Each Picture In s1.Shapes
If TypeName(s1.Shapes(Picture.Name).OLEFormat.Object) = "OLEObject" Then
If TypeName(s1.Shapes(Picture.Name).OLEFormat.Object.Object) = "TextBox" Then

MsgBox s1.Shapes(Picture.Name).OLEFormat.Object.Object.Text
End If
End If
Next Picture


End Sub
 
Merhaba Halit bey.

Gönderdiğiniz kodlar "controls" içindi heralde. Kendi kodlarıma uyarlayamadım. Ben de controls içeren kodları userform kod bölümüne yazdım. Bu şekliyle çalışıyor.

Kuruşların 00 yazmasını hala çözemedim.
 
Merhaba Halit bey.


'For i = 10 To 40
'Controls("textbox" & i).Value = ""
'Next

Yukarıdaki kodları Modül içinde yazınca "Controls" kelimesini seçip, "Sub or function not defined" diye hata veriyor. Bunun içinde yardımcı olursanız sevinirim.


Userform için modüle yazılan kodların başına userformun adını da yazmak gerekiyor

Userform1.Controls("textbox" & i).Value gibi

Diğer taraftan çözebediğiniz kuruşları etkileyen nesneler olabilir bunun için örnek dosya ekleyin.
 
bende düzgün çalıştı
 
Yanlış değişken isimlendirmesi yapılmış sanırım.tahakkuk_eden değişkeni ÜBORD sayfasında L sütunundaki Tahakkuk Eden değerine değil de J sütunundaki Ücret Tutarına atama yapılıyor.
tahakkuk_eden değişkenini Long yerine Double tanımlayıp Format ın sonunu "#,##0.00" şeklinde bitirince ücret tutarını ondalıklı hesaplıyor.
 
Birşey daha sormak istiyorum.

Dim varArr As Variant, varTemp As Variant
Dim random As Range
Dim x As Long, y As Long
Dim say As Double
say = Range("a65000").End(xlUp).Row
'On Error Resume Next
Set random = Sheets("NÖBET").Cells("a", say) 'BU SATIRDA HATA VERİYOR.
varArr = random.Value
Randomize
For x = 1 To UBound(varArr, 1)
y = Int(Rnd() * UBound(varArr) + 1)
varTemp = varArr(x, 1)
varArr(x, 1) = varArr(y, 1)
varArr(y, 1) = varTemp
Next x
random.Value = varArr

For i = 44 To 68
Controls("textbox" & i).Value = Sheets("NÖBET").Cells(i - 42, "a").Value
Next i

Hücre adresi verince çalışıyor. ("A2:A25") gibi. Ama öğretmen ekleyince veya çıkarınca sorun çıkıyor. En son dolu satıra kadar alması gerekiyor. Değişken tipi hatası veriyor.
 
Moderatör tarafında düzenlendi:
Geri
Üst