بحث مخصص من جوجل فى أوفيسنا
![]()
Custom Search
|
-
Posts
9911 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
404
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو jjafferr
-
والتكملة هنا
-
السلام عليكم 🙂 عندما لا توجد علاقات في الاستعلام ، وبدون علاقة بين الجداول (او الاستعلامات) في الاستعلام: 1. فالاستعلام يعطيك نتيجة كل جدول بطريقة مستقلة ، ثم 2. عدد سجلات الاستعلام تكون: عدد سجلات الجدول الاول X عدد سجلات الجدول الثاني X عدد سجلات الجدول الثالث X عدد سجلات الجدول الرابع .... مثلا ، حول استعلام 1_infoEmp الى استعلام عادي ، فيكون . والنتيجة 254,464 سجل : . اذا افترضنا عندك 3 سجلات في كل جدول ، فالاستعلام يعرض السجلات حسب ترتيب تسلسل هذه الجداول في الاستعلام ، ويبدأ من الجهة اللي فيها مسميات . ويعرض النتائج هكذا : ولاحظ عدد السجلات : 3x3x3x3 فالعدد يكون 81 سجل . جعفر
-
في الواقع مثل ما قال ابوخليل في مشاركته ، انت محتاج استعلام واحد ويحل جميع مشاكلك ، بس لأن سؤالك كان عن مجموعة من الاستعلامات ، فاتجهت في اجابتي نحو استعلام التوحيد!! ولا محتاج جدول مؤقت ، ولا ولا ، إلا هذا الاستعلام 🙂 هذا الاستعلام اللي تريده: . SELECT Dwam_Emp_ALL.Emp_No_A, Emp_Info.Emp_Ar_Name, Sum(IIf([Emp_ABSCENT]=Yes,1,0)) AS SumAbsentYes, Sum(IIf([sick]=Yes,1,0)) AS SumsickYes, Sum(Dwam_Emp_ALL.OTH) AS SumOfOTH FROM Emp_Info INNER JOIN Dwam_Emp_ALL ON Emp_Info.Emp_No = Dwam_Emp_ALL.Emp_No_A WHERE (((Dwam_Emp_ALL.Dwam_Date) Between [Forms]![frmPrintSalary]![txtdate1] And [Forms]![frmPrintSalary]![txtdate2])) GROUP BY Dwam_Emp_ALL.Emp_No_A, Emp_Info.Emp_Ar_Name HAVING (((Dwam_Emp_ALL.Emp_No_A)=IIf([Forms]![frmPrintSalary]![OP]=1,[Emp_No_A],[Forms]![frmPrintSalary]![cbEmpNo]))); . . والتقرير: . ما عليك من التقرير الآن ، لأنه تحصيل حاصل ، رجاء استعمل الاستعلام اللي اعطيتك ، واخبرني اذا عندك مشكلة فيه 🙂 جعفر
-
احذف كلمة [Text]. من الحقول .
-
وعليكم السلام 🙂 اعمل الخلفية بالالوان التي تحب في احد برامج الرسومات ، مراعي حجم الصورة يكون حجم A4 ، في التقرير ، اختار الصورة ، اجعلها مربوطة ولبس مضمنه: جعفر
-
تفضل يا سيدي: النموذج يظهر لك جميع البيانات ، ولكن يجب ان تكون متصل بالانترنت . كود حدث "عند النقر" على الزر في النموذج : Private Sub cmd_IP_Country_Click() Dim city_IP As String Dim public_IP As String Me.my_PC_MAC = GetMyMACAddress Me.my_Local_IP = GetMyLocalIP Me.my_country_IP = IPcountry(city_IP, public_IP) Me.my_country_IP = DLookup("[Country_A]", "tbl_Countries_Currency_Codes", "Country_Code_E2='" & Me.my_country_IP & "'") Me.my_Public_IP = public_IP Me.my_city_IP = city_IP End Sub . والوحدات النمطية التي تقوم بالعمل: Option Compare Database Option Explicit '---------------------------------------------------------------------------- 'This module contains 3 functions for determing the public IP, the local IP 'and the MAC address of the computer that runs those functions. ' 'Written By: Christos Samaras 'Date: 22/11/2014 'E-mail: xristos.samaras@gmail.com 'Site: http://www.myengineeringworld.net '---------------------------------------------------------------------------- Function GetMyPublicIP() As String Dim HttpRequest As Object On Error Resume Next 'Create the XMLHttpRequest object. Set HttpRequest = CreateObject("MSXML2.XMLHTTP") 'Check if the object was created. If Err.Number <> 0 Then 'Return error message. GetMyPublicIP = "Could not create the XMLHttpRequest object!" 'Release the object and exit. Set HttpRequest = Nothing Exit Function End If On Error GoTo 0 'Create the request - no special parameters required. HttpRequest.Open "GET", "http://myip.dnsomatic.com", False 'Send the request to the site. HttpRequest.send 'Return the result of the request (the IP string). GetMyPublicIP = HttpRequest.responseText End Function Function GetMyLocalIP() As String 'Declaring the necessary variables. Dim strComputer As String Dim objWMIService As Object Dim colItems As Object Dim objItem As Object Dim myIPAddress As String 'Set the computer. strComputer = "." 'The root\cimv2 namespace is used to access the Win32_NetworkAdapterConfiguration class. Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2") 'A select query is used to get a collection of IP addresses from the network adapters that have the property IPEnabled equal to true. Set colItems = objWMIService.ExecQuery("SELECT IPAddress FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = True") 'Loop through all the objects of the collection and return the first non-empty IP. For Each objItem In colItems If Not IsNull(objItem.IPAddress) Then myIPAddress = Trim(objItem.IPAddress(0)) Exit For Next 'Return the IP string. GetMyLocalIP = myIPAddress End Function Function GetMyMACAddress() As String 'Declaring the necessary variables. Dim strComputer As String Dim objWMIService As Object Dim colItems As Object Dim objItem As Object Dim myMACAddress As String 'Set the computer. strComputer = "." 'The root\cimv2 namespace is used to access the Win32_NetworkAdapterConfiguration class. Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2") 'A select query is used to get a collection of network adapters that have the property IPEnabled equal to true. Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = True") 'Loop through all the collection of adapters and return the MAC address of the first adapter that has a non-empty IP. For Each objItem In colItems If Not IsNull(objItem.IPAddress) Then myMACAddress = objItem.MACAddress Exit For Next 'Return the IP string. GetMyMACAddress = myMACAddress End Function Function IPcountry(IPcity As String, IPPublic As String) As String ' 'from: https://www.mrexcel.com/board/threads/need-to-get-location-based-on-ip-address-in-vba.1115981/ 'edited by jjafferr 20-01-22 'we don't send any values when calling the Function, but return 3 values ' Dim http As Object Dim xmlDoc As MSXML2.DOMDocument60 Dim strURL As String ' requires reference to Microsoft XML 6.0 IPPublic = GetMyPublicIP strURL = "https://ipapi.co/" & IPPublic & "/xml/" Set http = CreateObject("MSXML2.XMLHTTP") http.Open "GET", strURL, False http.send Set xmlDoc = New MSXML2.DOMDocument60 xmlDoc.LoadXML http.responseText 'Debug.Print http.responseText IPcity = xmlDoc.SelectSingleNode("//root/city").Text IPcountry = xmlDoc.SelectSingleNode("//root/country").Text End Function . والدالة الاخيرة هي التي يتم مناداتها من النموذج ، اضفت شيء فيه لإرجاع البيانات للنموذج ، فعند مناداة الدالة ، لا نرسل لها اي قيمة ، وانما هي تُرجع 3 قيم للنموذج ، فالطريقة لطيفة للنظر فيها 🙂 اسم الدولة التي تُرجعه الدالة هو اختصار اسم الدولة ، فأرفقت احد جداول من احد برامجي فيه بقية بيانات الدوله ، وبقية الدول (الجدول عمره حوالي 8 سنوات ، فقد تكون هناك دول جديدة نشأة من وقتها ، فعليه ، يجب عليك تحديث الجدول 🙂) جعفر 1452.IP Country.accdb.zip
-
في الواقع هذه الجملة استوقفتني ، وظليت افكر فيها طويلا ، ووصلت لهذه النتيجة: اللحم والدجاج والسمك والخضار والتوابل موجودة من آلاف السنين ، ولكن هذا ما منعنا ان نكون مميزين في طبخاتنا ، عندنا الرخال والمندازي والسيويه ، والحلوى والقشاط ، الشواء والمشاكيك والمضبي ، ونطبخ من القاشع والعوال ، واما البابلو فيا سلام 🙂 فما يهمك من بدأ قبلك ، فعندك حس مميز ، والكل ينتظر كل جديد منه 🙂 جعفر
- 18 replies
-
- 3
-
-
-
-
- مهارات في أكسس
- الأكسس يتكلم !
-
(و2 أكثر)
موسوم بكلمه :
-
اما انا ، فكنت اول واحد يدخل في الموضوع ، وانزلت المرفق لأستمع وارى الكود 🙂 الكود جدا بسيط ونظيف ، عمل جميل 🙂 في اعتقادي @ابو جودي قام بمثل هذا العمل سابقا ، ولكني لا اتذكر التفاصيل 🙂 جعفر
- 18 replies
-
- 2
-
-
-
- مهارات في أكسس
- الأكسس يتكلم !
-
(و2 أكثر)
موسوم بكلمه :
-
وعليكم السلام اخوي ابوخليل 🙂 1. نعم فكرت في الموضوع ، لهذا السبب كنت دائما انقح وازيد في مشاركتي الاولى حتى اشمل كل شيء عن الموضوع ، واحتاج لها بعض الامثلة مع صور علشان تكمل ، 2. في الواقع ما نظرت للموضوع عن كيفية حل السؤال بطريقة اخرى ، فطريقة السؤال كانت توجهني في اتجاه استعلام التوحيد 🙂 جعفر
-
عندك طريقتين لإضافة اي حقول/فرو/تصفية ، يا في اول استعلام توحيد (طبعا في احد او جميع الاستعلامات اللي فيه ، والافضل تجهز الاستعلامات وتجهز كل واحد منها بالنتائج الصحيحة ، ثم تضيفها في استعلام التوحيد) ، او في آخر استعلام. قد يكون الاسهل لك ان تضيف معيار التاريخ في الاستعلام الاول : 1. كمعيار (سواء لإستعلام واحد او عدة استعلامات) دون إظهاره في السجلات (إزالة علامة الصح تحت الحقل ، او استخدام Where في الاستعلام التجميعي) ، وعادة المعيار يشير الى حقل التاريخ في النموذج مثل Forms!frm_Main!Date_From ، 2. او اذا ما عمل لك مشكلة ، فيمكن اظهاره في السجلات. اذا استعملته كمعيار فقط ، ولكنك تريد اظهاره في الاستعلام الاخير ، فيمكنك عمل حقل جديد في الاستعلام الاخير للتاريخ ، هكذا: myDate: Forms!frm_Main!Date_From جعفر
-
وعليكم السلام 🙂 جوابي فقط على الجزئية: جربي هذا: Dim StrFlter as String StrFlter = "DateDA,DateCmd,NumBesoin,demandeur,commande,imputation,acheteur,departement,designation,marque,reference,devise,QTEcommande,QTE,frs1,PU1,PT1,frs2,PU2,PT2,frs3,PU3,PT3,prixRETENU,devise2,TotalEUR,fournisseur,CONTRAT,FABRICANT,NonMisEnCON,REGULE,SEMAINE,MOIS,PRODUCTIVITE,devise3,ProdEnEUR" CurrentDb.Execute "INSERT INTO TEAM(" & StrFlter & ")VALUES('" & Me.DateDA & "','" & Me.DateCmd & "','" & Me.NumBesoin & "','" & Me.Demandeur & "','" & Me.Commande & "','" & Me.imputation & "','" & Me.Acheteur & "','" & Me.Departement & "','" & Me.TXTdesign & "','" & Me!T_REFRENCE.Form.marque & "','" & Me.txtREF & "','" & Me!T_REFRENCE.Form.devise & "','" & Me.Qte & "','" & Me!T_REFRENCE.Form.FRS1 & "','" & Me!T_REFRENCE.Form.PU1 & "','" & Me!T_REFRENCE.Form.PT1 & "','" & Me!T_REFRENCE.Form.FRS2 & "','" & Me!T_REFRENCE.Form.PU2 & "','" & Me!T_REFRENCE.Form.PT2 & "','" & Me!T_REFRENCE.Form.FRS3 & "','" & Me!T_REFRENCE.PU3 & "','" & Me!T_REFRENCE.PT3 & "','" & Me!T_REFRENCE.PRIXretenu & "','" & Me!T_REFRENCE.Devise2 & "','" & Me!T_REFRENCE.TotalEUR & "','" & Me!T_REFRENCE.fournisseur & "','" & Me!T_REFRENCE.CONTRAT & "','" & Me!T_REFRENCE.Fabricant & "','" & Me!T_REFRENCE.NonMisEnCON & "','" & Me!T_REFRENCE.Regule & "','" & Me.Semaine & "','" & Me.Mois & "','" & Me!T_REFRENCE.productivite & "','" & Me!T_REFRENCE.devis . جعفر
-
اول خطوة هي جعل الحقول المتشابهة تحت نفس العمود . عملنا استعلام جديد Query1 (وهو استعلام التوحيد) ودخلنا في وضع SQL ، ثم نسخنا جملة SQL الاستعلام الاول اليه ، ثم كتبنا union ، ثم نسخنا جملة SQL الاستعلام الثاني اليه: . والنتيجة . ولكننا نريد ان ندمج السجلات المتشابهة مع بعض ، حتى تكون على سجل واحد ، لذا ، يجب ان نعمل استعلام تجميع ، نجمع فيها قيم الحقول حسب المجموعات ، فنعمل استعلام جديد ، ويكون استعلام التوحيد السابق هو مصدر بياناته : . عند تشغيل الاستعلام الجديد ، نحصل على خطأ ، معناه ان انواع الحقول غير متشايهة !! واذا دققنا النظر في اول صورة ، سنجد انه في نفس الحقل عندنا ارقام و Null و "" ، وهذا ينطبق على الحقول الثلاثة التي نريد مجموعها ، يعني في كل حقل ، لازم نجمع قيمها: الارقام ، و Null ، و "" . اول فكرة تجي على البال حتى نستبدل Null و "" الى صفر ، هو استخدام الامر NZ (مع انه غير محبذ استخدام امر VBA في الاستعلام ، حيث انه سيجعله بطيءً نوعا ما) ، والنتيجة . الخطأ هنا لأن الامر NZ ومعناه Null to Zero ، اي تحويل الحقل الذي قيمته Null الى صفر ، بينما عندنا في الحقل نفسه قيمة اخرى وهي "" ، والتي يجب التعامل معاها كذلك وتحويلها صفر ، والامر NZ لا يعرف التعامل معاها ، انا استعمل الكود التالي لإحتواء الطريقتين : If Len([SumAbsentYes] & "")=0 then او هكذا في الاستعلام SumAbsentYes_1: IIf(Len([SumAbsentYes] & '')=0,0,[SumAbsentYes]) . . والنتيجة . او الطريقة الاخرى للتغلب على Data Type Missmatch ، بأن نحتفظ بقيمة Null ، ولكن قيمة "" نحولها الى صفر في الاستعلامات الاصل: . بإختصار ، خطواتك كانت صحيحة ، ولكن كان يحتاج لها خطوة اخرى 🙂 المرفق فيه Query2 و Query4 للطريقتين 🙂 جعفر 1451.حضور وانصراف موظفينV47.accdb.zip
-
كتابة التاريخ بصيغة لا تتغير بتغير اعدادات الوندوز
jjafferr replied to jjafferr's topic in قسم الأكسيس Access
ما فهمت🥺 الظاهر ان القهوة بو شربتها الصبح بعدها ما داقه فراسي ، فياريت تشرح القصد من هذا الطلب 🙂 جعفر -
وعليكم السلام 🙂 الطريقة هي عمل استعلام توحيد ، بهذه الطريقة : Select ID, Full_Name, Income, Position From tbl_Directors union all Select ID, Full_Name, Income , P:"" From tbl_Players union Select I:0, Full_Name, Income:"" , Pos:"Not applicable" From tbl_Others union SELECT "", tblSection.sname, Sum(tblSection.Allowances) AS SumOfshead, "مدراء" As P FROM tblSection WHERE (((tblSection.snumber1)<>123)) GROUP BY tblSection.sname ORDER BY tblSection.sname; . هنا جمعت 4 استعلامات (نسميها استعلامات اولية) (اعمل كل استعلام بالطريقة العادية ، وبعد التأكد انه يعمل بطريقة صحيحة ، وان حقول الاستعلام في نفس ترتيب حقول بقية الاستعلامات (كذلك يمكنك اضافة هذه الحقول في استعلام التوحيد مباشرة) ، ضع الاستعلام في وضع SQL ، ثم انسخ الجملة كاملة وضعها في استعلام التوحيد ، هذا اللي عملته في الاستعلام الرابع اعلاه) ، الشرط الوحيد في استعلام التوحيد هو ، ان يكون عدد الحقول نفسها لجميع الاستعلامات ، فإذا احد الاستعلامات ما فيه هذه الحقل ، يجب ان تضع قيمة معينة له ، سواء صفر او "" (فراغ) او "المدراء" ، وطبعا الحقول التي تريدها لنفس العمود يجب ان تكون بنفس ترتيبها في الاستعلام (انا تركت مسافات بين الحقول في المثال اعلاه فقط لتوضيح هذه النقطة) ، يجب الانتباه في الحقول الاضافية ، فإذا اردت ان تجمع هذا الحقل لاحقا ، فاعطيه القيمة 0 ، اسم الحقل يُؤخذ من اول استعلام (بغض النظر عن تغيّر اسماء الحقول في الاستعلامات لنفس العمود) ، والفرز يُؤخذ من آخر استعلام ، union all معناها ، اضف جميع السجلات ، مع المتكررات بين الاستعلامات ، union معناها ، اضف جميع السجلات ، بدون المتكررات بين الاستعلامات. وهناك اوقات اخرى ، حيث الاستعلامات الاولية لإستعلام التوحيد ، فيها نفس عدد الحقول وبنفس الترتيب ، فيمكن تسهيل استعلام التوحيد الى: Select * From qry_1 union Select * From qry_2 union all Select * From qry_3 union Select * From qry_4 . او الخلط بين الطريقتين: Select * From qry_1 union Select * From qry_2 union all Select * From qry_3 union Select * From qry_4 union SELECT "", tblSection.sname, Sum(tblSection.Allowances) AS SumOfshead, "مدراء" As P FROM tblSection WHERE (((tblSection.snumber1)<>123)) GROUP BY tblSection.sname ORDER BY tblSection.sname; بعض الاوقات هذه الاستعلام سيعطيك البيانات المطلوبة ، ولكن قد تحتاج الى فرز او تصفية اضافية ، او تجميع سجلات في سجل واحد ، فما عليك إلا ان تعمل استعلام آخر ، ثم تستعمل استعلام التوحيد كمصدر بيانات هذا الاستعلام الجديد ، ثم تعمل فيه المطلوب 🙂 جعفر
-
كتابة التاريخ بصيغة لا تتغير بتغير اعدادات الوندوز
jjafferr replied to jjafferr's topic in قسم الأكسيس Access
حيا الله اخوي موسى 🙂 اعطني امثلة ، وما يصير خاطرك إلا طيب 🙂 جعفر -
مقترح صحيح 100% 🙂 جعفر
-
وعليكم السلام 🙂 طريقة تعرّف المواقع على مكان تواجدك عند الدخول اليها ، هو عن طريق IP الكمبيوتر ، وهذه طريقة لمعرفة IP الكمبيوتر : . جعفر
-
مشكلة معي فى تحويل التاريخ الهجري والميلادي فى نفس الفورم
jjafferr replied to عمر ضاحى's topic in قسم الأكسيس Access
في هذه الحالة يجب ان يكتب تنسيق الحقل في الجدول كالتالي: dd/mm/yyyy وإلا فإنه سياخذ تنسيق الوندوز ، وتنسيق الوندوز عندي هو dd/mmm/yyyy ، فسيعطيه رسالة خطأ كذلك !! جعفر -
مشكلة معي فى تحويل التاريخ الهجري والميلادي فى نفس الفورم
jjafferr replied to عمر ضاحى's topic in قسم الأكسيس Access
انظر الى نوع حقل التاريخ الهجري في الجدول 🙂 الدالة UmDate_AfterUpdate هي المسؤولة عن طريقة عرض التاريخ ، فاذا اردت تغيير التنسيق ، فلا انصحك ان تغير في الدالة اعلاه ، ولكن خلينا نغير نتيجة الدالة: Private Sub date_h_AfterUpdate() UmDate_AfterUpdate If Not IsNull(date_h) Then 'Debug.Print Right(date_h, 2) 'Debug.Print Mid(date_h, 6, 2) 'Debug.Print Left(date_h, 4) Me.date_m = Um2Greg(Right(date_h, 2), Mid(date_h, 6, 2), Left(date_h, 4)) ''Me.date_m = Um2Greg(Right(date_h, 4), Mid(date_h, 6, 2), Left(date_h, 2)) 'Me.t_day = Format(Me.date_m, "dddd") Me.date_h = Right(Me.date_h, 2) & "/" & Mid(Me.date_h, 6, 2) & "/" & Mid(Me.date_h, 1, 4) '<== هذا السطر الاضافي لتغيير التنسيق End If End Sub . جعفر