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

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

قام بنشر

السلام عليكم

اذا اردت ادخال بيانات وقت في خانات تم تنسيقها كـ "وقت" وبعد كتابة الارقام وضغط ادخال (enter)...يتحول ما كتبته الى 00:00:00 بصرف النظر عما كتبته

مثال:

اذا كتبت:"124033" مما يعني الساعة "الثانية عشرة واربعون دقيقة وثلاثة وثلاثون ثانية" بعد ان ان اضغط "Enter" يظهر في الخانة:"00:00:00"

حدث ذلك في اوفيس 2007 والآن استخدم أوفيس 2013 نفس المشكلة

أقوم بذلك لأنني اقوم بادخال بيانات كثير ولا أريد ان اقوم بكتابة ":" بين كل رقمين اكتبهم في حالة تركت التنسيق للخلية "عام"

فـــــهل اجد لدى الزملاء الافاضل تفسير وحل لذلك

مع جزيل الشكر والعرفان

عاطف

QC_NORTHEAST@YAHOO.COM

قام بنشر

أخي الكريم عاطف

أهلا ومرحباً بك في المنتدى ونورت بين إخوانك

نتمنى لك قضاء أمتع الأوقات في التعلم والاستفادة والإفادة لك ولغيرك

جرب الكود التالي في حدث ورقة العمل (يمكنك تغيير النطاق في الكود)

النطاق الذي ستجربه هو النطاق A1:A20 ويمكنك تغييره

برجاء الاطلاع على رابط التوجيهات في الموضوعات المثبتة في المنتدى للضرورة (حتى يمكنك التعامل بكفاءة مع المنتدى)

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim str1 As String, str2 As String, str3 As String
    If Target.Cells.CountLarge > 1 Then Exit Sub
    If Not Intersect(Target, Range("A1:A20")) Is Nothing Then
        Application.EnableEvents = False
            str1 = Mid(Target, 1, 2)
            str2 = Mid(Target, 3, 2)
            str3 = Mid(Target, 5, 2)
            Target.Value = str1 & ":" & str2 & ":" & str3
        Application.EnableEvents = True
    End If
End Sub

تقبل ترحيبي وتحياتي

  • Like 1
قام بنشر (معدل)

بارك الله فيك احي ياسر كنت محضر نفس الكود ولكن ظهرت مشكلة

ماذا لو كان عدد الدقائق  اصغر من عشرة ولا اريد كتابة 170325 بل (17325)

او 7:18:25 مثلاً

تم تعديل بواسطه سليم حاصبيا
  • Like 1
قام بنشر

مشكور أخي سليم على المداخلة

جرب الكود بهذا التعديل

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim str As String
    If Target.Cells.CountLarge > 1 Then Exit Sub
    If Not Intersect(Target, Range("A1:A20")) Is Nothing Then
        Application.EnableEvents = False
            str = Format(Target.Value, "000000")
            Target.Value = Mid(str, 1, 2) & ":" & Mid(str, 3, 2) & ":" & Mid(str, 5, 2)
        Application.EnableEvents = True
    End If
End Sub

 

  • Like 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