اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

الردود الموصى بها

قام بنشر

الاخوة الكرام ...

انا بحاجة الى معادلة لحساب مجموع الساعات بشكل عدد صحيح

مثلا :

9:30 ( تسع ساعات وثلاثون دقيقة ) = 9.5

بحيث يكون اجمالي ساعات اليوم = 24 ساعة

مع أطيب تمنياتي لكم بالتوفيق .

  • أفضل إجابة
قام بنشر

استخدم الدالة الآتية :

Function Mytimediff(t1, t2)

  tdif = Abs(Hour(t2) - Hour(t1) + Minute(t2) / 60 - Minute(t1) / 60)

  Mytimediff = tdif

End Function

أدرجها فى موديول جديد

و استدعها كما تتستدعي الدوال و لكن من مجموعة

user defined functions

مرفق المثال

تم تعديل المثال باضافة الطريقة المباشرة فى مشاركة أبو هادي

Timediffhours.zip

قام بنشر

الاخ / محمد طاهر

مشكور على هذا الجهد الرائع .

ولكني لم اعرف كيفية استخدام الكود اعلاه . ارجو مساعدتي في هذه الحالة مثلا :

3.45 (ثلاث ساعات وخمسة واربعون دقيقة وليس الساعة الثالثة وخمسة واربعون دقيقة AM,PM )

اريد معادلة تحولها لي الى 3.75 وهكذا .

مع جزيل الشكر .

قام بنشر

السلام عليكم

لم أجرب مثال أخي محمد طاهر ولكني أعتقد أنك بحاجة إلى تغيير تنسيق الخلية إلى رقمي .

كما يمكن أن تحصل على المطلوب بدون كود وذلك بضرب الخلية في 24 وتغيير تنسيق الخلية كذلك إلى رقمي .

مثلا لو الوقت موجود في خلية A1 ففي خلية أخرى نضع المعادلة التالية :

A1*24=

تحياتي .

  • Like 1
قام بنشر

نعم :) هذا أسهل

يبدو أن الكود أصبح هو أول ما أفكر فيه فى الاكسيل ، و ليس العكس كما هو مفترض :)

تم تعديل المثال فى أول مشاركة باضافة الطريقة التي تفضل بها أبو هادي مرة و مرة أخري باضافة الدالة abs التي تعيد القيمة بدون اشارات لكل لا تقلق من الاكبر عند الطرح

بالنسبة للكود ، يوجد في قسم خلاصة مشاركات الاكسيل ، مقدمة بسيطة للتعامل معه بعنوان مقدمة الي vba

زائر
هذا الموضوع مغلق.
  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information