بحث مخصص من جوجل فى أوفيسنا
![]()
Custom Search
|
-
Posts
9975 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
406
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو jjafferr
-
كود عمل ربط علاقة بين جدولين One To Many
jjafferr replied to حكمت العراقي's topic in قسم الأكسيس Access
كذلك يدويا 😁 اذا كانت المطرقة العادية تؤدي العمل ، فلا داعي لاستعمال المطرقة الكهربائية 🙂 جعفر -
-
كود عمل ربط علاقة بين جدولين One To Many
jjafferr replied to حكمت العراقي's topic in قسم الأكسيس Access
وعليكم السلام 🙂 وحتى نستفيد ، ممكن تخبرنا ليش تريد عمل هذا برمجيا ؟ جعفر -
وعليكم السلام 🙂 لو بحثت في المنتدى ، لوجدت مترجم جميل عمل عليه اخوي حسين @د.كاف يار جعفر
-
وجود أكثر من خطأ في حدث واحد أو أوprocedure
jjafferr replied to حكمت العراقي's topic in قسم الأكسيس Access
هل قرأت مشاركتي بتمعن ، ففيه الجواب على سؤالك 🙂 جعفر -
وجود أكثر من خطأ في حدث واحد أو أوprocedure
jjafferr replied to حكمت العراقي's topic in قسم الأكسيس Access
وعليكم السلام 🙂 اذا فهمت قصدك: في بداية الكود عندك كود هكذا مثلا (اخذته من احد برامجي 🙂 ) : نستعمل On Error Goto err_Form_Close في البداية ، بحيث اي خطأ يحدث في الكود سيذهب الى السطر :err_Form_Close من مكان هناك ، بدل الامر Goto ، نستعمل الامر Resume فبدل عن Goto Exit_Form_Close ، نستعمل Resume Exit_Form_Close Private Sub Form_Close() On Error GoTo err_Form_Close ..... Exit_Form_Close: Exit Sub err_Form_Close: If Err.Number = 2450 Then 'ignor Resume Next 'تخطى هذا الخطأ وانتقل الى السطر التالي ElseIf Err.Number = 52 Then 'Folders don't exist, its a new location, ignor Exit Sub 'اخرج من الحدث ElseIf Err.Number = 76 Then 'path not found MsgBox "مسار مجلد النسخ الاحتياطية غير موجود على حاسبتك" Resume Exit_Form_Close ' Exit_Form_Close اذهب الى السطر Else MsgBox Err.Number & vbCrLf & Err.Description End If Resume Exit_Form_Close End Sub جعفر -
تفضل سيدي الكريم ، نفس المثال السابق ، ولكن بإضافة للنماذج كذلك: وهذا هو الكود: Option Compare Database Option Explicit Dim FC As FormatCondition ' Private Sub Form_Load() Dim Exp1 As Variant Dim Exp2 As Variant Exp1 = "[state]='H'" Exp2 = "[state]='L'" Me.result.FormatConditions.Delete Set FC = Me.result.FormatConditions.Add(acExpression, acEqual, Exp1) 'FC.Enabled = True FC.BackColor = vbRed Set FC = Me.result.FormatConditions.Add(acExpression, acEqual, Exp2) 'FC.Enabled = True FC.BackColor = vbYellow End Sub Private Sub Form_Unload(Cancel As Integer) Set FC = Nothing End Sub جعفر conditional format.zip
-
السؤال في هذا الموضوع عن التقرير 🙂 جعفر
-
وعليكم السلام 🙂 ليش الكود ، هل هناك سبب معين ؟ عادة نعمل الاشياء في الكود اذا كانت طلباتنا متغيرة ، بينما اذا الطلب ثابت ، فالاكسس يوفر لك اسهل الطرق 🙂 بالتنسيق الشرطي العادي ، مثل ما عمل اخي @Eng.Qassim : . والنتيجة : . ويمكنك استعمال هذه الكود بدلا عن التنسيق الشرطي: Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer) If [state] = "H" Then Me.result.BackColor = vbRed ElseIf [state] = "L" Then Me.result.BackColor = vbYellow Else Me.result.BackColor = vbWhite End If End Sub جعفر conditional format.accdb
-
مطلوب اخفاء هذة الرسالة نهائيا او استبدالها
jjafferr replied to Ahmed Fahmy 2022's topic in قسم الأكسيس Access
السلام عليكم 🙂 لإصطياد الخطاء في النموذج: جعفر -
وعليكم السلام 🙂 استخدم خاصية البحث في المنتدى ، فهناك الكثير من الاسئلة المشابهة لسؤالك ، وقد تم رد عليها 🙂 جعفر
-
السلام عليكم اخوي ابو خليل 🙂 في هذا الموضوع كتبت طريقة الحل: جعفر
-
وعليكم السلام 🙂 نعم ، في الفترة الاخيرة صارت تحصل معي بعض الاوقات 😥 الشيء الوحيد الذي يظهر معكوسا هو قائمة اسماء الكائنات بما فيها من نماذج وتقارير واستعلامات وجداول ووحدات النمطية .... ، والمفروض ان الزبون ما يشوف هذه الكائنات اصلا 🙂 ولكن البرنامج يعمل بطريقة صحيحة بكل النماذج والتقارير والاستعلامات والجداول والوحدات النمطية .... ، وعكس اسماء القائمة لا يؤثر على عمله ، حتى عند النقر على الاسماء مباشرة وتشغيل الكائن ، وعند حدوث هذه المشكلة ، اغلق البرنامج وافتحه من جديد ، ترى ان كل شيء رجع طبيعي ، وعادة يحدث هذا اثناء عملية التعديل على النماذج وتجربة التعديل. والسبب هو الوحدة النمطية RTL_Set التي انا عملتها ، والتي تجعل مربع القائمة ListBox (او TreeView) يعطي القائمة من اليمين لليسار : هدية: من اليمين الى اليسار، مربع القائمة ListBox والشجرة TreeView - قسم الأكسيس Access - أوفيسنا (officena.net) . الحل: يا انك تغض النظر عن هذه المشكلة ، وخصوصا ان الزبون لا يرى قائمة كائناتك ، او لا تستعمل هذه الوحدة النمطية 🙂 وبسبب انها نادرا ما تحدث ، ولا تستطيع برمجيا ان تعيد عمل هذه المشكلة لتعرف اين الخلل ، فلم اعرها اي اهتمام ، وبرنامجي لا يزال يعمل كما يجب 😁 جعفر
-
السلام عليكم 🙂 في الكثير من الاحيان لما نكون في وضع التصميم ، في النموذج او التقرير ، نتمنى لو انه بإمكاننا تكبير الشاشة حتى نرى تفاصل الكائنات ونضعها بجوار بعضها بدقة ، ولكن للأسف الاكسس لا يقدم لنا هذه الخاصية (مثل الاكسل والبوربوينت مثلا) 🙂 في الواقع الوندوز يقدم لنا هذه الخدمة ، ولكن كبرنامج مستقل 🙂 يمكنك استخدام برنامج التكبير بطريقة مستقلة ، بإستخدام ازرار الكيبورد: 1. لإغلاق البرنامج ، زر الوندوز + Esc 2. لتكبير الشاشة ، وتكون ثابته ، زر الوندوز + Alt + F 3. لتكبير الشاشة كمكبر يدوي ، زر الوندوز + Alt + L . وهذه هي الاعدادات التي استعملها انا : . والآن اليكم هذه الطريقة في برنامج الاكسس (يمكننا استعمال اختصارات الوندوز اعلاها في عملنا كذلك) : نموذج به نوعين من تكبير الشاشة ، تستعمل الطريقة التي تفضلها لوضعك 🙂 . الكود هو: Private Sub btn_Zoom_Click() 'open/close the magnify glass If Me.btn_Zoom = -1 Then 'turn ON the magnifying glass 'Shell "cmd /c C:\Windows\System32\Magnify.exe /lens", vbHide Shell "cmd /c C:\Windows\System32\Magnify.exe /fullscreen", vbHide Else 'manually close it: ' Win key & Esc key 'call the Function to kill the magnifying glass process Call WMI_KillProcesse("Magnify.exe") End If End Sub Private Sub btn_Zoom_lens_Click() 'open/close the magnify glass If Me.btn_Zoom_lens = -1 Then 'turn ON the magnifying glass Shell "cmd /c C:\Windows\System32\Magnify.exe /lens", vbHide 'Shell "cmd /c C:\Windows\System32\Magnify.exe /fullscreen", vbHide Else 'manually close it: ' Win key & Esc key 'call the Function to kill the magnifying glass process Call WMI_KillProcesse("Magnify.exe") End If End Sub . واما كود اغلاق برنامج التكبير ، اي يوقف تشغيله من الكمبيوتر: '--------------------------------------------------------------------------------------- ' Procedure : WMI_KillProcesse ' Author : Daniel Pineault, CARDA Consultants Inc. ' Website : http://www.cardaconsultants.com ' Purpose : Forcibly kill all the instances of a specified process ' Copyright : The following is release as Attribution-ShareAlike 4.0 International ' (CC BY-SA 4.0) - https://creativecommons.org/licenses/by-sa/4.0/ ' Req'd Refs: Uses Late Binding, so none required ' ' Input Variables: ' ~~~~~~~~~~~~~~~~ ' sProcessName : Name of the process to kill ' sHost : Host computer to query, omit for the local PC ' ' Usage: ' ~~~~~~ ' Call WMI_KillProcesse("explorer.exe") ' Call WMI_KillProcesse("excel.exe") ' Call WMI_KillProcesse("calculator.exe") ' ' Revision History: ' Rev Date(yyyy-mm-dd) Description ' ************************************************************************************** ' 1 2015-05-28 Initial Release ' 2 2020-08-21 Added Proc Header ' Code updated ' Updated Error Handler ' Made it Option Explicit compliant '--------------------------------------------------------------------------------------- Public Function WMI_KillProcesse(sProcessName As String, Optional sHost As String = ".") As Boolean On Error GoTo Error_Handler Dim oWMI As Object 'WMI object to query about the PC's OS Dim sWMIQuery As String 'WMI Query Dim oCols As Object Dim oCol As Object Set oWMI = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & sHost & "\root\cimv2") sWMIQuery = "SELECT Name FROM Win32_Process" Set oCols = oWMI.ExecQuery(sWMIQuery) For Each oCol In oCols If LCase(sProcessName) = LCase(oCol.Name) Then oCol.Terminate ' Kill this instances of the process End If Next oCol WMI_KillProcesse = True Error_Handler_Exit: On Error Resume Next Set oCol = Nothing Set oCols = Nothing Set oWMI = Nothing Exit Function Error_Handler: MsgBox "The following error has occurred" & vbCrLf & vbCrLf & _ "Error Number: " & Err.Number & vbCrLf & _ "Error Source: WMI_KillProcesse" & vbCrLf & _ "Error Description: " & Err.Description & _ Switch(Erl = 0, "", Erl <> 0, vbCrLf & "Line No: " & Erl) _ , vbOKOnly + vbCritical, "An Error has Occurred!" Resume Error_Handler_Exit End Function جعفر Magnify.mdb
-
بدل الشريط (لأن الكود في النموذج سيخفيه) ، اعمل مربع تسمية ، مما سيعطيك انطباع بأن الشريط موجود ، ولكن لن تستطيع تحريكه 🙂 استعمل الماكرو autoexec_Login_Boarder_n_Buttons_Show 🙂 جعفر example_semo.accdb
-
تقدر تستعمل النموذج الذي اعطيتك هنا: جعفر
-
وعليكم السلام 🙂 وبسبب انك ما اعطيتنا معلومات كافية ، فاختر المثال الاول او الثاني ، وكلاهما على حدث "النقر المزدوج" : الاول للنقر المزدوج للنموذج ، والثاني للحقل : جعفر
-
السلام عليكم 🙂 اخوي ابو لين ، المنتدى خلق فينا الحاسة السابعة ، وهي توقع الخطوة التالية 🙂 لذا ، لو من المشاركة التي طلبك منك ان توضح وترفق مرفق فيه المطلوب ، حتى ولو ملف اكسل ، لوفرت على نفسك 15 مشاركة !! ها ، والحاسة السابعة تقول لي ، ان طلبك بعده ما خلص وغير مكتمل باجابة اخوي حسين الاخيرة 🤣 جعفر
-
وعليكم السلام 🙂 رجاء تعطينا صورة من الشكل النهائي الذي تريده في ورقة الباركود المطبوعة 🙂 جعفر
-
سؤال : اذا الارقام كانت : B A 1 111 222 2 222 111 3 333 444 4 555 444 فما هي الارقام التي تريدها في الحقل C ؟ ورجاء ارفاق مرفق فيه بيانات ، فطلبك يحتاج تجربة ، حتى ولو ملف اكسل تحذف منه جميع البيانات ما عدا الارقام ، وحتى لو تستبدل ارقام بدل اخرى 🙂 جعفر
-
هممم كان زين لو كانت مشاركتك الاخيرة ، هي المشاركة الاولى ، لأنها واضحة 🙂 سؤال : اذا الارقام كانت : 1 111 222 2 222 111 3 333 444 فما هي الارقام التي تريدها في الحقل C ؟ ورجاء ارفاق مرفق فيه بيانات ، فطلبك يحتاج تجربة 🙂 جعفر
-
طريقة ثانية : 1. اعمل استعلام تجميعي للحقل A ، 2. اعمل استعلام تجميعي للحقل B ، 3. اعمل استعلام Union يدمج الاستعلام الاول والاستعلام الثاني بالامر Union (وليس Union all) ، حيث الامر Union سيحذف المكرر ، 4. اعمل استعلام الحاقي يأخذ بيانات الاستعلام 3 الى الحقل C 🙂 جعفر
-
وعليكم السلام 🙂 اجعل الحقل C ، مفهرس وغير قابل للتكرار ، ثم اعمل استعلام الحاقي يضيف جميع ارقام الحقل A الى C ، واستعلام الحاقي يضيف جميع ارقام الحقل B الى الحقل C 🙂 العيب في هذه الطريقة ، اذا كان عندك حقل برقم تلقائي AutoNumber ، فإنه سيتم انتاج وحذف بعضها ، المتكررة من الحقل C ، ولكن هذا لا يهم ، فالحقل التلقائي لإستعمال الكمبيوتر ، وهذا عمله 🙂 جعفر
-
كل عام وانتم بخير 🙂 عيدكم مبارك وايامكم سعيدة ان شاء الله 🙂 جعفر