• DİKKAT

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

Çözüldü kodu düzeltme

sirkülasyon

Altın Üye
Katılım
10 Temmuz 2012
Mesajlar
2,543
Excel Vers. ve Dili
2021 LTSC TR
Kod:
ActiveCell.Offset(0, 5)  = IF(ActiveCell.Value<=8,INT(ROUNDUP(((ActiveCell.Value)/7.5),0)),INT(ROUNDUP(((ActiveCell.Value)/7.5),0)))

yukarıda yer alan kodu düzeltebilmek için yardımcı olabilir misiniz?
Saygılarımla
 
Evet ben yardımcı olabilirim.
 
dalgalikur
ActiveCell.Offset(0, 5) = Bu kısma aşağıdaki formülün
1 - Formül şeklinde değil
2 - O54 aktif hücre olacak şekilde makrosunu yazmak istiyorum .

EĞER(O54<=8;TAMSAYI(YUKARIYUVARLA(((O54)/7,5);0));TAMSAYI(YUKARIYUVARLA(((O54)/7,5);0)))
 
Merhaba.
Seçili hücrenin 5 hücre sağına;
-- belirttiğiniz formülün uygulanması için aşağıdaki birinci satırı,
-- belirttiğiniz formülün SONUCUNU DEĞER olarak yazdırmak için ikinci satırı kullanabilirsiniz.
ActiveCell.Offset(0, 5).Formula = "=IF(" & ActiveCell.Value & "<=8,INT(ROUNDUP(" & ActiveCell.Value & "/7.5,0)),INT(ROUNDUP(" & ActiveCell.Value & "/7.5,0)))"
ActiveCell.Offset(0, 5) = Evaluate("=IF(" & ActiveCell.Value & "<=8,INT(ROUNDUP(" & ActiveCell.Value & "/7.5,0)),INT(ROUNDUP(" & ActiveCell.Value & "/7.5,0)))")
 
Ancak; yukarıda sizin verdiğiniz formül ve benim verdiğim cevaba dikkatli bakıldığında;
hücre değeri 8 veya daha küçük ya da 8'den büyük olması halinde de yapılan işlem aynı gibi görünüyor. --- TAMSAYI(YUKARIYUVARLA(.../7,5;0)) ---
Bu nedenle işlem aşağıdaki gibi de yapılabilir.
FORMÜL İÇİN: ActiveCell.Offset(0, 5).Formula = "=INT(ROUNDUP(" & ActiveCell.Value & "/7.5,0))"
DEĞER İÇİN: ActiveCell.Offset(0, 5) = Int(WorksheetFunction.RoundUp(ActiveCell.Value / 7.5, 0))
 
Eyvallah, kolay gelsin.
 
Geri
Üst