اخوي
انسخ الكود التالي وضعه في وحده نمطيه و احفظها
كود
Function SortForm(frm As Form, ByVal sOrderBy As String) As Boolean
If Len(sOrderBy) > 0 Then
If frm.OrderByOn And (frm.OrderBy = sOrderBy) Then
sOrderBy = sOrderBy & " DESC"
End If
frm.OrderBy = sOrderBy
frm.OrderByOn = True
End If
End Function
بعدين انشأ زر امر و في حدث عند النقر او On Click ضع الكود التالي مع تغير اسم الحقل الذي تريدان تستخدمه في عمليه الترتيب
كود
=SortForm([Form], "[اسم الحقل]")
طبعا اذا كان اسم الحقل مكون من كلمتين بينهم مسافه فا ضعه بين قوسين [ ]
اخوي
هل الملف على ملجلد مشاركه؟؟!! اذا نعم
من قائمه ادوات او Tools روح على Share workbook ثم ضع علامه صح على الخيار Allow changes……..time
وهناك طريق اخرى للحفظ التلقائي وهي كالتالي:
من قائمه ادوات او Tools روح على خيارات ثم اختر Save وسوف تجد مؤقت بالدقائق يعمل على الحفظ التلقائي حسب ماتحدد له.
اختي
النموذج الي في الصوره فوق مو موجود في قاعده البيانات
ثاني شي
هل مربع النص 6 او text6 هل هو قيمه الدفعه او الباقي من الدين
اذا كان قيمه الدفعه فيجب اضافه جدول ونضع فيه رقم المدين و قيمه الدفعه ثم نظهرها في النموذج السابق ولكن في نموذج فرعي اي سوف يكون كالتالي:
النموذج الاساسي يحتوي على:
رقم المدين
اسم المدين
قيمه الدين
ثم في النموذج الفرعي
رقم المدين
قيمه الدفعه
ثم نقوم بربط النموذج الاساسي و النموذج الفرعي برقم المدين
ثم نقوم بعمل مربع نص يجمع القيم المسدده و نضعه في ذيل النموذج
ثم ننشأ مربع نص يقوم بطرح القيم المسدده من القيمه الاصليه للدين ونضعه اسفل مربع قيمه الدين مع استخدام داله iif الشرطيه
شوفي المثال المرفق
Loan.rar
اخوي
قم بعمل مربعي نص
الاول سميه inputdate وهذا لادخال التاريخ رقما
الثاني سميه day هذا للاظهار اليوم
في حدث المربع inputdate بعد التحديث اكتب الكود التالي:
Me.day = Format(Me.inputdate, "dddd")
اخوي
اولا قم بنسخ الخليه التي يوجد بها هذا الكود
لنفترض a1
ثم بعد ذالك اضغط
Shift
+
Crtl
+
السهم اسفل
بعد ذالك سوف تلاحظ ان العمود كاملا تم تظليله
ثم قم بعمليه اللصق
اخوي
في الحقول(مربع نص ، قائمه.....) التي تحتوي على حروف مثل الاسماء وغيرها استخدم داله Len لتأكد من عدم تركها فارغه كالتالي:
If Len(Trim$(Me!fristname & vbNullString)) = 0 Then
MsgBox "الرجاء تعبئه حقل الاسم", vbOKOnly + vbCritical, "بيانات مفقوده!!"
Me.fristname.SetFocus
بالنسبه لداله isNull فهذه تستخدم للارقام
طبعا مكان وضع الكود مهم مثلا
في حدث عند النقر في زر الامر وغيرها
بعد اذن اخوي mas123
اخوي
تحتاج الى فصل قاعده البيانات الى جزئين كالتالي:
1- الواجهه الاماميه
تحتوي على النماذج، الاستعلامات، الماكرو و الوحدات النمطيه
يجب عليك ربطه بالواجهه الخلفيه الي اسفل من قائمه Tools
>>Database Utilities
>>> Linked Table Manager
ضع نسخه في القرص الصلب في كل جهاز من اجهزه المستخدمين
2- الواجهه الخلفيه
تحتوي على الجداول
تكون موجوده في المجلد المشترك
طبعا بمكانك استخدام المعالج ليقوم بفصل قاعده البيانات لك تلقائيا وذالك من:
> Tools
>> Database Utilties
>>> Database Splitter
طبعا دائما احفظ نسخه احتياطيه من قاعده البيانات قبل تطبيق اي شي على قاعده بياناتك
اخوي
شوف المرفق
المشكله ليست بالكود وليس لها علاقه بالXP
الكود الي بالعلى هو كود يقوم بدمج ثلاث خلايا في خليه وحده وهذا لتسهيل العمليه عليك بدلا من وضع كود لخليه اليوم وكود لخليه الشهر وكود لخليه السنه الكود هذا يقوم بدمجها مع بعض.
_______________.rar
اخوي
اكتب الكود التالي في الخليه التي تريدها ان تظهر لك الناتج:
=DATEDIF(D9,E9,"y") & "سنوات"&DATEDIF(D9,E9,"ym")&"شهور"&DATEDIF(D9,E9,"md")&"يوم"
حيث D9 هو تاريخ البدأ
و
E9 هو تاريخ الانتهاء
اخوي
لا يمكن نسيق نص داخل هذا المربع وترك الباقي
الحل الوحيد هو انشاء حقل نص ثالث وتنسيقه كما تريد وتجعله بجانب الحقل الاول ثم ازاله الحدود عن كلا الحقلين لكي تظهر انها مربع واحدوغير ذالك اعتقد انه غير ممكن.
اذا ممكن اخوي تقولي ايش الفائده من هذا التنسيق ومن السؤال بشكل عام؟؟؟!!!
اخوي
انت تبغى عمليه الطباعه تكون مره واحده لجميع الفواتيراو ايش؟؟ الصراحه مو مفهوم الي تبغاه؟؟!!
حتى الشرح السابق غير مفهوم!! انا الحين عندي زبون جديد و ابغى اعمله فاتوره ، ايش هي الخطوه التاليه؟؟
اخوي سعيد
سبق و ان سالت نفس السؤال هذا !!!
بالنسبه لهذا السؤال فلا يمكن عمل ذالك بالاستعلام الجدولي وعرضها على تقرير
و السبب في ذالك ان الورقه لها عرض معين ،اي انه كلما اضفت عمود فان الاعمده سوف تتجه يمينا او يسارا في التقرير ، وهذا غير منطقيا و لايمكن عمله في تقرير لانه في حاله طباعه التقرير لايمكنك طباعه التقرير بشكل عرضي في حاله استمرت البيانات بعرض التقرير
يمكن عرضها فقط في الاستعلام فقط
اخوي
هل كل مشروع يجب ان يبدأ الترقيم فيه متسلسل اي من واحد الى ملا نهايه او جميع المشاريع تاخذ رقم متسلسل يبدأ با1؟؟!!
ياليت توضح تنسيق الترقيم؟؟
وهل تعتمد الانشيل Initial كا مختصر للاسماء او الاسماء كامله؟؟!!
اخوي
بالنسبه للسؤال الاول وهو اخفاء مربع السعر عليك كتابه هذين الكود كالاتي:
* في حدث النموذج On Current و عند الحالي اكتب الكود التالي
If Me.free = True Then
Me.price.Visible = False
Else
Me.price.Visible = True
End If
حيث ان free هو اسم مربع الاختيار و price هو مربع نص السعر قم بتغير اسمائها حسب الاسماء الموجوده عندك
** ثم تذهب لحدث مربع الاختيار وتكتب التالي في حدث بعد التحديث او After update
If Me.free = True Then
Me.price.Visible = False
Else
Me.price.Visible = True
End If
الان السؤال الثاني
* في نفس حدث النموذج on Current اكتب الكود التالي:
If Me.agree = True Then
Me.Command2.Enabled = False
Me.Command3.Enabled = False
Else
Me.Command2.Enabled = True
Me.Command3.Enabled = True
End If
حيث ان Agree هو اسم مرع الاختيار و command2 و command3هي اسماء ازرار الامر
طبعا اضف اسماء الازرار كما هو موجود لديك
* * طبعا بعد ذالك نذهب الى حدث بعد التحديث او after update لمربع الاختيار و نكتب الكود التالي
If Me.agree = True Then
Me.Command2.Enabled = False
Else
Me.Command2.Enabled = True
End If
طبعا غير الاسماء كما هو موجود عندك في النموذج
اخيرا
لابد ان يكون عندك خطوتين لابد من تنفيذها في كل سؤال من اسالتك
اذا صعب عليك شي ارجوا اضافه قاعده بياناتك لتوفير الوقت ونتمكن من الاجابه على سؤالك باسرع وقت