• DİKKAT

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

Makro için saat formaına ihtiyacım var.

Katılım
25 Nisan 2005
Mesajlar
35
Excel Vers. ve Dili
Excel 2010 Türkçe
Aramalarda bulamadım.
Saatlerle ilgili bir çalışmam için makro yazdım.Bir hücrede saat olarak daha doğrusu zaman olarak türkçe :dd:nn formatına göre 24:16:15 bir süre var.Bunu makro kodunda bir değişkene atadığımda hh:mm:ss formatına göre 00:16:15 olarak alıyor.Oysa benim ihtiyacım 24:16:15 olarak veriyi kullanmak.
Makroda hangi format ile bu veriyi isediğim şekliyle atayabilirim.
Uzmanlardan yardım istiyorum.
Sevgiler.
 
tam olarak ne yapmak istiyorsunuz.

bir yere veri girmek?
hesap yapmak?

hesap yapmak istiyorsanız:


D6: 13.02.2011 15:00
D7: 10.02.2011 13:00
Fark: 74:00:00


Kod:
Sub zmn()

Dim z
z = (CDate(Range("D6")) - CDate(Range("D7"))) * 24
MsgBox z

End Sub
 
Kod:
Cells(1, 1).NumberFormat = "[h]:mm:ss"

şeklinde kullanabilirsin.

Buradan
Kod:
b = cells(1,1).value
şeklinde b' yi alırsan 24:16:15 için 1,01128472222222 şeklinde bir sayı döner.

Bu sayıyı da 24 saat x 60 dk x 60 sn ile çarparak analiz edebilirsin.

Kod:
c = b * 24 * 60 * 60
saat = Fix(c / 60 / 60)
dak = Fix((c - (saat * 60 * 60) + 1) / 60)
san = c Mod 60
 
Son düzenleme:
Yapmak istediğim;bir işyerinde çalışanların bir ay içinde her gün çalıştıkları normal mesai süresi ile fazladan çalıştıkları süreleri gösteren bir matris tablo düşünün.Tablonun en sağında her personelin o ay içinde normal ve fazla çalışma süreleri toplamları var.Bir makro yardımıyla bu tabloyu tarayıp ay içinde 1 saatten daha fazla fazla mesai yapanları ayrı bir tabloya aktarmak ve bu sayfadan yeni bir aylık fazla çalışan personel ve bunların fazla çalışma sürelerini gösteren bir fazla çalışma icmali yaratmak.Excel tabloda hücre formatı ":dd:nn" olarak işe yarıyor.
Ancak makroya bu zamanı al ve 1 saatten az ise liseye aktarma demem lazım.Ancak bir personelin aylık fazla çalışma süresi 24:16:15.başka bir personelin ise 25:35:15 gibi.Makro 25 saatin üzerinde olan personel için sorun çıkarmıyor.Ancak 24 ile 25 saat arasındaki zaman için saat kısmını atıyor.Yukarıdaki 1.personelin fazla çalışma süre toplamını 00:16:15 olarak dikkate alıyor.[h]:mm:ss formatının tüm versiyonlarını denedim,olmadı.Gerçi hücre değerini ".Value" olarak alıyorum belki burda hata yapıyorum bilemiyorum.
Eğer tek satirda çözmezsem İzmir'li arkadaşımın önerisini deneyeceğim.
Teşekkürler
 
Hala Bu konuda daha pratik bir çözüm bekliyorum.
 
Geri
Üst