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

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

قام بنشر

الاخوة الاعزاء

فى المرفق استخدمت كود لاغلاف الحقول التى تحتوى على بيانات و السماح بالتحرير فى الحقول الفارغة فقط

ولكنه يعطى النتيجة المرجوة فى بعض السجلات و لا يعطى فى الاخرى

لا ادرى ما السبب

ارجو تصحيح الكود ان كان به خطأ و ان كان هناك حل افضل ارجو توضيحه

شكرا مقدما

last.rar

قام بنشر

مرحباً بك اخي m_orouk بين اخوانك

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

اليك الكود التالي :

Dim cntl As Control
    For Each cntl In Me.Controls
        If cntl.ControlType = acTextBox Then
            If IsNull(cntl) Then
                cntl.Enabled = True
            Else
                cntl.Enabled = flase
            End If
        End If
    Next

تفضل المرفق بعد التعديل

بالتوفيق ومرحباً بك مرة اخرى

last.rar

قام بنشر

أخونا الكريم Youssef

طالما أنت مبدع ... وطالما تطلع علينا بالحلول الرائعة مثلك وهذا أحدها.

لك الشكر حتى تكتفى ...

تحياتى

محمد ندا

قام بنشر

أخى الرائع يوسف

هل من الممكن عمل نفس الطريقة لكن مع الأمر Allow Edits أم لا.

لقد حاولت ولكن لم تنجح معى

تحياتى

محمد ندا

قام بنشر

أخى الكريم m_orouk

أشكرك للحل ... لقد جربتها مراراً وعرفت الآن ماهو خطأى .. لقد كنت أعكس الكود .. ففى المكان الذى يجب أن أضع True كنت أضع False والعكس.

لك التحية على الرد

تحياتى

محمد ندا

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

ونظراً لأننى عند التطبيق وجدت أن عندى بالنماذج كثيراً من الـ Combo Box فقد قمت بالتعديل البسيط لتشمل العملية كائنات الكومبو أيضاً بالنموذج.

بالمرفق

تحياتى

محمد ندا

last_Lock_ComboToo.rar

تم تعديل بواسطه Mohamed Nada
قام بنشر

ممكن كمان اختصار الكود ب

Private Sub Form_Current()
    Dim cntl As Control
    For Each cntl In Me.Controls
        If cntl.ControlType = acTextBox Or cntl.ControlType = acComboBox Then
             cntl.Locked = Not IsNull(cntl)
        End If
Next
End Sub

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

دمتم يا الكرام

ما شاء الله عليكم جميعاً ... اللهم زد لكم فى علمكم ورفع قدركم ... ونحتسب أن نكون معكم إن شاء الله.

تحياتى وتقديرى

محمد ندا

تم تعديل بواسطه Mohamed Nada
قام بنشر (معدل)

وخطرت لى فكرة لزيادة الفائدة من الأداة اللطيفة دى:

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

Private Sub Form_Current()
    Dim cntl As Control
    For Each cntl In Me.Controls
        If cntl.ControlType = acTextBox and User <> "YourGoodUse" Or cntl.ControlType = acComboBox and User <> "YourGoodUse" Then
             cntl.Locked = Not IsNull(cntl)
        End If
Next
End Sub

حيث User هو اسم مربع النص الذى يحتوى على اسم المستخدم الذى ترغب فى السماح له بالتعديل.

وحيث YourGoodUser هو الإسم الفعلى للمستخدم الذى ترغب فى السماح له بالتعديل.

حيث أنه ليس من المعقول أن تغلق الدنيا على المستخدمين وعلى نفسك كمان ... :cool::wink2:

تحياتى

محمد ندا

تم تعديل بواسطه Mohamed Nada

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