اذهب الي المحتوي
أوفيسنا

استخراج الوقت الصباحي والمسائي من عمود الوقت


إذهب إلى أفضل إجابة Solved by بن علية حاجي,

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

السلام عليكم ورحمة الله وبركاته 

لدي جدول يحتوي على عمود فيه وقت ولكن الوقت هو بصيعة TEXT وهو عبارة عن تقرير لجهاز البصمة الالكترونية

انا بحاجة الى دالة تقوم باستخراج الوقت من هذا العمود وهي تعمل كالتالي 

في حالة وجود وقت صباحاً تقوم باعادة الوقت الصباحي لاول وقت وقت مسجل

في حالة وجود وقت مسائي تقوم باعادة الوقت المسائي اخر وقت مسجل 

التفاصيل موضحة في المثال ولكم فائق الشكر والتقدير

المثال.xls

رابط هذا التعليق
شارك

السلام عليكم اخواني الاعزاء ممكن نعمل كود بدل الداله بحيث يعطين نفس النتيجه لكن بدون اعمده اضافيه علماً ان المرفق في المشاركة الاولى

ولكم جزيل الشكر

رابط هذا التعليق
شارك

تم العمل بواسط الماكرو

انظر الى الصفحة salim من هذا الملف

الكود

Option Explicit
Sub find_FirstAndLast_Time()
If ActiveSheet.Name <> "salim" Then Exit Sub
    Dim objReg      As Object
    Dim Match
    Dim objMatches As Object
    Dim a, i, y%: y = 1
    Dim arr()
    Dim m%: m = 2
    Range("D2:e5000").ClearContents
Set objReg = CreateObject("vbscript.regexp")
    With objReg
    .IgnoreCase = False
    .Global = True
    .Pattern = "(\d{2}:\d{2})"
    End With

  Do Until Range("c" & m) = vbNullString
  '============================================
      Set objMatches = objReg.Execute(Range("c" & m))
       If objMatches.Count = 0 Then GoTo Next_m
      For Each Match In objMatches
          a = Match.Submatches.Count
            For i = 0 To a - 1
             ReDim Preserve arr(1 To y)
              arr(y) = Match.Submatches.Item(i)
              y = y + 1
            Next
      Next
      Range("D" & m) = arr(1): Range("E" & m) = arr(y - 1)
       Erase arr: y = 1
Next_m:
      m = m + 1
  '============================================
   Loop
Set objReg = Nothing
End Sub

الملف مرفق

 

BASMA.xlsm

  • Thanks 1
رابط هذا التعليق
شارك

9 دقائق مضت, مستخدم الاوفس said:

 يا اخي اكتب الأوقات التي تريدها

يمكن ان يخرج الموظف من عمله قبل انتهاء الدوام  مثلا دخول الساعة  (08:00) خروج الساعة (10:00)

الكود يستخرح أول وقت  واخر وقت مهما كان عدد الاوقات 

رابط هذا التعليق
شارك

  • 1 month later...

السلام عليكم ورحمة الله وبركاته 

يوجد لدي بيانات في العمود c تحوي على وقت او قد لا تحتوي 

انا بحاجة الى كود يقوم بفحص محتويات الخلية في حالة يوجد بها اكثر من وقت يقوم بالتاكد اذا كان وقت صباحي فيقوم بعرض اول وقت صباحي في عمود الوقت الصباحي d 

و يعرض البصمة المسائية اخر بصمة مسائية في العمود e 

اما في حالة وجود فقط وقت صباحي فيعرض الوقت الصباحي في عمود الوقت الصباحي

اما في حالة وجود وقت مسائي فقط فيعرض الوقت المسائي في عمود الوقت المسائي

اما في حالة عدم وجود اي وقت فلا يعرض اي شي 

البيانات في المثال المرفق 

وفقكم الله لكل خير

 

المثال.rar

رابط هذا التعليق
شارك

وعليكم السلام -اخى الكريم فقد تم الرد على هذا الموضوع من قبل اساتذتنا الكرام ,الأستاذ سليم حاصبيا و الأستاذ بن علية حاجى  من فترة فعليك من فضلك الا تكرر

نفس المشاركات

المشاركة كانت على هذا الرابط

https://www.officena.net/ib/topic/90650-استخراج-الوقت-الصباحي-والمسائي-من-عمود-الوقت/

ولكن تفضل هذا ملفك في هذه المشاركة الجديدة فقد تم العمل عليه بنفس المعادلات السابقة

 

المثال.xls

  • Like 2
  • Thanks 1
رابط هذا التعليق
شارك

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

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

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

Important Information