• DİKKAT

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

Çalışmamda doğru enterpolasyon hesabını alamıyorum.Sorunu bulmak konusunda yardımcı olabilir misiniz?

bkk

Katılım
30 Aralık 2019
Mesajlar
186
Excel Vers. ve Dili
Ofis 2019
Altın Üyelik Bitiş Tarihi
06-12-2025
Merhabalar,

Ekte belirli kurallara göre enterpolasyon hesabı yapmaktayım,
Trim:5 Gauge: 50 girdiğimde doğru kesişime ulaşamıyorum,
Yardımcı olabilir misiniz,
 

Ekli dosyalar

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,755
Excel Vers. ve Dili
2021 Türkçe
Merhaba.
Hesaplama kodlarını aşağıdaki ile değiştirin.
Kod:
Sub Hesaplama()
    Dim gauge_taban As Double, gauge_tavan As Double, sounding_taban As Double, sounding_tavan As Double, hesap As Double
    If TextBox2 <> 0 And TextBox2 Mod 5 <> 0 Then 'Eğer gauge 0 veya 5e böleninden kalan 0 DEĞİL ise hesapla
        gauge_taban = TextBox2.Value - TextBox2.Value Mod 5
        gauge_tavan = 5 + (TextBox2.Value - TextBox2.Value Mod 5)
        sounding_taban = Cells(Range("B5:B85").Find(what:=gauge_taban, lookat:=xlWhole).Row, Range("D4:W4").Find(what:=TextBox1, lookat:=xlWhole).Column).Value
        sounding_tavan = Cells(Range("B5:B85").Find(what:=gauge_tavan, lookat:=xlWhole).Row, Range("D4:W4").Find(what:=TextBox1, lookat:=xlWhole).Column).Value
        hesap = ((sounding_taban - sounding_tavan) / 5) * ((TextBox2.Text - sounding_taban) + sounding_taban)
    ElseIf TextBox2 = 0 Or TextBox2 Mod 5 = 0 Then 'Eğer gauge 0 veya 5e böleninden kalan 0 ise hesapla(tablodan kesişimi bulur)
        hesap = Cells(Range("B5:B85").Find(what:=TextBox2, lookat:=xlWhole).Row, Range("D4:W4").Find(what:=TextBox1, lookat:=xlWhole).Column).Value
    End If
    Label1.Caption = FormatNumber(hesap, 2)
End Sub
 
  • Beğen
Reactions: bkk

bkk

Katılım
30 Aralık 2019
Mesajlar
186
Excel Vers. ve Dili
Ofis 2019
Altın Üyelik Bitiş Tarihi
06-12-2025
Merhaba.
Hesaplama kodlarını aşağıdaki ile değiştirin.
Kod:
Sub Hesaplama()
    Dim gauge_taban As Double, gauge_tavan As Double, sounding_taban As Double, sounding_tavan As Double, hesap As Double
    If TextBox2 <> 0 And TextBox2 Mod 5 <> 0 Then 'Eğer gauge 0 veya 5e böleninden kalan 0 DEĞİL ise hesapla
        gauge_taban = TextBox2.Value - TextBox2.Value Mod 5
        gauge_tavan = 5 + (TextBox2.Value - TextBox2.Value Mod 5)
        sounding_taban = Cells(Range("B5:B85").Find(what:=gauge_taban, lookat:=xlWhole).Row, Range("D4:W4").Find(what:=TextBox1, lookat:=xlWhole).Column).Value
        sounding_tavan = Cells(Range("B5:B85").Find(what:=gauge_tavan, lookat:=xlWhole).Row, Range("D4:W4").Find(what:=TextBox1, lookat:=xlWhole).Column).Value
        hesap = ((sounding_taban - sounding_tavan) / 5) * ((TextBox2.Text - sounding_taban) + sounding_taban)
    ElseIf TextBox2 = 0 Or TextBox2 Mod 5 = 0 Then 'Eğer gauge 0 veya 5e böleninden kalan 0 ise hesapla(tablodan kesişimi bulur)
        hesap = Cells(Range("B5:B85").Find(what:=TextBox2, lookat:=xlWhole).Row, Range("D4:W4").Find(what:=TextBox1, lookat:=xlWhole).Column).Value
    End If
    Label1.Caption = FormatNumber(hesap, 2)
End Sub
çok teşekkür ederim, elinize sağlık
 

bkk

Katılım
30 Aralık 2019
Mesajlar
186
Excel Vers. ve Dili
Ofis 2019
Altın Üyelik Bitiş Tarihi
06-12-2025
Merhaba.
Hesaplama kodlarını aşağıdaki ile değiştirin.
Kod:
Sub Hesaplama()
    Dim gauge_taban As Double, gauge_tavan As Double, sounding_taban As Double, sounding_tavan As Double, hesap As Double
    If TextBox2 <> 0 And TextBox2 Mod 5 <> 0 Then 'Eğer gauge 0 veya 5e böleninden kalan 0 DEĞİL ise hesapla
        gauge_taban = TextBox2.Value - TextBox2.Value Mod 5
        gauge_tavan = 5 + (TextBox2.Value - TextBox2.Value Mod 5)
        sounding_taban = Cells(Range("B5:B85").Find(what:=gauge_taban, lookat:=xlWhole).Row, Range("D4:W4").Find(what:=TextBox1, lookat:=xlWhole).Column).Value
        sounding_tavan = Cells(Range("B5:B85").Find(what:=gauge_tavan, lookat:=xlWhole).Row, Range("D4:W4").Find(what:=TextBox1, lookat:=xlWhole).Column).Value
        hesap = ((sounding_taban - sounding_tavan) / 5) * ((TextBox2.Text - sounding_taban) + sounding_taban)
    ElseIf TextBox2 = 0 Or TextBox2 Mod 5 = 0 Then 'Eğer gauge 0 veya 5e böleninden kalan 0 ise hesapla(tablodan kesişimi bulur)
        hesap = Cells(Range("B5:B85").Find(what:=TextBox2, lookat:=xlWhole).Row, Range("D4:W4").Find(what:=TextBox1, lookat:=xlWhole).Column).Value
    End If
    Label1.Caption = FormatNumber(hesap, 2)
End Sub
Muzaffer bey,
Sayfa belirtmek istedim aşağıdaki gibi ama hata verdi, yardımcı olabilir misiniz?

Sub Hesaplama()
Dim gauge_taban As Double, gauge_tavan As Double, sounding_taban As Double, sounding_tavan As Double, hesap As Double
If TextBox2 <> 0 And TextBox2 Mod 5 <> 0 Then 'Eğer gauge 0 veya 5e böleninden kalan 0 DEĞİL ise hesapla
gauge_taban = TextBox2.Value - TextBox2.Value Mod 5
gauge_tavan = 5 + (TextBox2.Value - TextBox2.Value Mod 5)
sounding_taban = Cells(Worksheets(degerler).Range("B5:B85").Find(what:=gauge_taban, lookat:=xlWhole).Row, Worksheets(degerler).Range("D4:W4").Find(what:=TextBox1, lookat:=xlWhole).Column).Value
sounding_tavan = Cells(Worksheets(degerler).Range("B5:B85").Find(what:=gauge_tavan, lookat:=xlWhole).Row, Worksheets(degerler).Range("D4:W4").Find(what:=TextBox1, lookat:=xlWhole).Column).Value
hesap = ((sounding_taban - sounding_tavan) / 5) * ((TextBox2.Text - sounding_taban) + sounding_taban)
ElseIf TextBox2 = 0 Or TextBox2 Mod 5 = 0 Then 'Eğer gauge 0 veya 5e böleninden kalan 0 ise hesapla(tablodan kesişimi bulur)
hesap = Cells(Worksheets(degerler).Range("B5:B85").Find(what:=TextBox2, lookat:=xlWhole).Row, Worksheets(degerler).Range("D4:W4").Find(what:=TextBox1, lookat:=xlWhole).Column).Value
End If
Label1.Caption = FormatNumber(hesap, 2)
End Sub
 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,755
Excel Vers. ve Dili
2021 Türkçe
Sayfa ismini aşağıdaki gibi çift tırnak içinde yazmalısınız.
Kod:
Worksheets("degerler")
 
  • Beğen
Reactions: bkk
Üst