• DİKKAT

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

Formül sorunu hakkında.

Katılım
2 Aralık 2013
Mesajlar
401
Excel Vers. ve Dili
Microsoft Office Standard 2013-Türkçe
Merhaba Arkadaşlar,

EK' li dosyadaki G20:L20 hücreleri arasındaki ve M7:M19 hücreleri arasındaki toplama işlemini doğru formül ile nasıl yaparım.
 

Ekli dosyalar

Son düzenleme:
Merhabalar,

Hata nerede? Zaten doğru hesaplamışsınız. Olması gereken nedir?
 
Merhabalar,

Hata nerede? Zaten doğru hesaplamışsınız. Olması gereken nedir?

Sayın @relaxim

Sorun yeşil dolgu ile gösterdiğim yerlerdeki formülün gerçek değerleri göstermemesi. Örnek H20 hücresindeki değerin 70 saat olması gerekirken 26 saat göstermesi.
 

Ekli dosyalar

Sayın @relaxim

Sorun yeşil dolgu ile gösterdiğim yerlerdeki formülün gerçek değerleri göstermemesi. Örnek H20 hücresindeki değerin 70 saat olması gerekirken 26 saat göstermesi.

Merhaba,

7+3,5 şeklinde veri girerseniz o artık metinsel ifade olduğundan işleme dahil etmez. Onun yerine =7,5+3,5 olarak girerseniz; sonuç 11 görünür ve toplamı alır.
 
Merhaba,

7+3,5 şeklinde veri girerseniz o artık metinsel ifade olduğundan işleme dahil etmez. Onun yerine =7,5+3,5 olarak girerseniz; sonuç 11 görünür ve toplamı alır.
Sayın @relaxim bir öneride bulunmuş olumlu olumsuz dönüş yapabilirdiniz.

Bence de yerinde bir öneri.
 
Merhaba,

7+3,5 şeklinde veri girerseniz o artık metinsel ifade olduğundan işleme dahil etmez. Onun yerine =7,5+3,5 olarak girerseniz; sonuç 11 görünür ve toplamı alır.

Sayın @relaxim

Çözüm öneriniz maalesef benim işimi görmüyor. Soruna çözüm internetten araştırıyorum. Belki de eğer formülü ile çözülebilir. Vakit ayırdığınız için teşekkür ederim.
 
Deneyiniz. 7,5+3,5 olan kısımları toplayabilirsiniz.

Belki çözüm olmaz ama fikir verebilir. Geliştirilebilir.
Kod:
=TOPLA.ÇARPIM((SOLDAN(H16:H19;BUL("+";H16:H19;1)-1)+PARÇAAL(H16:H19;BUL("+";H16:H19;1)+1;UZUNLUK(H16:H19))))
 
Son düzenleme:
Deneyiniz. 7,5+3,5 olan kısımları toplayabilirsiniz.

Belki çözüm olmaz ama fikir verebilir. Geliştirilebilir.
Kod:
=TOPLA.ÇARPIM((SOLDAN(H16:H19;BUL("+";H16:H19;1)-1)+PARÇAAL(H16:H19;BUL("+";H16:H19;1)+1;UZUNLUK(H16:H19))))

Sayın @Mahir64

Sizin fikrinizi geliştirebilecek arkadaşlara ihtiyacımız var. Teşekkür ederim.
 
Tüm alan için kurgulayamadım. Yazabilirsem paylaşırım.
Gelecek çözüm benim içinde örnek olacak.
 
Merhaba,

G20: (dizi formülüdür.)
Kod:
=TOPLA(EĞERHATA(0+PARÇAAL(YERİNEKOY(G7:G19;"+";YİNELE(" ";10));10*({0;1})+1;10);0))
 
.

Dosyanız ekte.

Dosyanızda Macro4 fonksiyonlarından EVALUATE fonksiyonu kullanılmıştır.

Ad tanımlamalarına bakarsanız orada görürsünüz.

Değer taraftan yaptığım bir sütun ve bir satır çalışması kırmızı olarak gösterilmiştir. Onların rengini beyaz yapıp gizleyebilirsiniz.

Not: Mümkünse boş yerlere 0 kullanınız ki; formülün hata verme olasılığını ortadan kaldırabiliriz. 0'ları da gizlemek mümkün.

.
 

Ekli dosyalar

Son düzenleme:
Makro ile yapılmak istenirse H sütunu için örnek,
Hücreye yazdıkça toplama işlemi yapar.
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
h20 = Range("H20").Value
If Target.Column <> 8 Or Target.Row < 7 Or Target.Row > 19 Then Exit Sub
    say = WorksheetFunction.CountIf(Range("H" & Target.Row & ":H" & Target.Row), "*" & "+" & "*")
        If say > 0 Then
            x = Left(Target.Value, WorksheetFunction.Find("+", Target.Value) - 1) * 1
            y = Right(Target.Value, WorksheetFunction.Find("+", Target.Value) - 1) * 1
            t = x + y
        Else
            Z = Target.Value
        End If
    Range("H20").Value = t + Z + h20
End Sub
 
Merhaba,

G20: (dizi formülüdür.)
Kod:
=TOPLA(EĞERHATA(0+PARÇAAL(YERİNEKOY(G7:G19;"+";YİNELE(" ";10));10*({0;1})+1;10);0))

Sayın @Ömer

Çözüm öneriniz yatay olan G:20 ile L:20 hücrelerinde doğru sonucu veriyor. M:7 ile M19 arası dikey hücreler içinde formül paylaşır mısınız.
 
.

Dosyanız ekte.

Dosyanızda Macro4 fonksiyonlarından EVALUATE fonksiyonu kullanılmıştır.

Ad tanımlamalarına bakarsanız orada görürsünüz.

Değer taraftan yaptığım bir sütun ve bir satır çalışması kırmızı olarak gösterilmiştir. Onların rengini beyaz yapıp gizleyebilirsiniz.

Not: Mümkünse boş yerlere 0 kullanınız ki; formülün hata verme olasılığını ortadan kaldırabiliriz. 0'ları da gizlemek mümkün.

.

Sayın @İdris SERDAR

Çözüm öneriniz çok başarılı. Bir ara ad tanımlamalarına çalışmalıyım. Zaman ayırdığınız için çok teşekkür ederim.
 
Makro ile yapılmak istenirse H sütunu için örnek,
Hücreye yazdıkça toplama işlemi yapar.
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
h20 = Range("H20").Value
If Target.Column <> 8 Or Target.Row < 7 Or Target.Row > 19 Then Exit Sub
    say = WorksheetFunction.CountIf(Range("H" & Target.Row & ":H" & Target.Row), "*" & "+" & "*")
        If say > 0 Then
            x = Left(Target.Value, WorksheetFunction.Find("+", Target.Value) - 1) * 1
            y = Right(Target.Value, WorksheetFunction.Find("+", Target.Value) - 1) * 1
            t = x + y
        Else
            Z = Target.Value
        End If
    Range("H20").Value = t + Z + h20
End Sub

Sayın @faye_efsane

Makro hakkında çok fazla bir bilgim olmaması nedeniyle dosyada çalıştıramadım. Zaman ayırdığınız için çok teşekkür ederim.
 
Son düzenleme:
Sayın @Ömer

Çözüm öneriniz yatay olan G:20 ile L:20 hücrelerinde doğru sonucu veriyor. M:7 ile M19 arası dikey hücreler içinde formül paylaşır mısınız.

Yatayda kullanırken;

{0;1}

Diziyi yukarıdaki yazım yerine aşağıdaki gibi yazmanız yeterli olacaktır.

{0\1}
 
Geri
Üst