بحث مخصص من جوجل فى أوفيسنا
Custom Search
|
نجوم المشاركات
Popular Content
Showing content with the highest reputation on 22 ماي, 2022 in all areas
-
وعليكم السلام 🙂 مثل ما يقول المثل: اش لك في البحر واهواله ، و رزق الله على السيف 🙂 فيه طريقة اسهل من طريقة اخوي موسى السهلة 🙂 في امر فتح النموذج ، في آخر متغير في هذا الامر ، هناك متغير اسمه OpenArgs ، استعمله في ارسال اسم النموذج الذي تريد تفتحه ، هكذا (لا تغير في السطر شيء ، إلا اذا اردت ان تضيف امر تصفية ، او ارسال معلومات اخرى في المتغير OpenArgs) : DoCmd.OpenForm "frm", , , , , , me.name . وعند اغلاق النموذج frm1 او frm2 ، اكتب : Forms(me.openargs).Visible = True جعفر5 points
-
تفضل أخي السهران 🙂 تم تعريف متغير عام في موديول يحفظ اسم النموذج الأخير ، ومن ثم يستدعيه مجددا عند إغلاق النموذج frm visbelform.accdb5 points
-
5 points
-
3 points
-
ماشاء الله اخي الحلواني عمل جميل بارك الله فيكم اسمحلي من باب اثراء الموضوع باضافة طريقتين لنقل قيمة حقل او مجموعة حقول من نموذج الى اخر الطريقة الاولى من خلال تحميل قيمة حقل او عدة حقول دفعة واحد في زر امر فتح من خلال OpenArgs مع مراعات الفصل بين الحقول عند تحميل اكثر من حقل باستخدام &"|"& ليكون الامر DoCmd.OpenForm "frm_item", , , , acFormAdd, , KNUM & "|" & KTEXT knum و ktext هي الحقول المطلوب تحميل قيمتها ثم في النموذج المستهدف نستخدم الامر Dim k As Variant k = Split(Me.OpenArgs, "|") Me.KNUM.Value = k(0) Me.KTEXT.Value = k(1) الطريقة الثانية باستخدام TempVars وايضا نستخدم &"|"& للفصل بين الحقول المطلوبه لنتمكن من فصلها في النموذج المستهدف Dim x As TempVars Dim w As Variant w = Val([TxDays]) & "|" & Val([TxSalary]) TempVars("x") = w وفي النموذج المستهدف نضع الامر Dim a As Variant a = Split(TempVars!x, "|") Me.Text2 = a(0) Me.Text4 = a(1) طرق بسيطة من زمن الطيبين ولا ترتقي لعملكم ولكن احببت ان اشاركم استاذي تحياتي3 points
-
اولا: اذا كان LisetViewData اسم النموذج الذي انت عليه الآن ، فتقدر تكتب السطر كالتالي (حيث me.name معناه اسم النموذج الذي انت فيه الآن) : DoCmd.OpenForm "frm_QualityEvaluation", , , , , acDialog, me.name ثانيا: بالنسبة للتصفية ، فاثناء كتابتك للامر ، سترى ان الاكسس يخبرك المتغير الذ يجب ان تكتبه ، ومنها Filter و Where ، ولاحظ آخر امر هو OpenArgs الذي تكلمت عنه . فإذا اردت تصفت النموذج frm بحقل الرقم ID مثلا واسم مربع القائمة lst_1 ، فيصبح الامر docmd.OpenForm "frm",,,"[ID]=" & me.lst_1,,acDialog, me.name واذا كان الحقل نص docmd.OpenForm "frm",,,"[ID]='" & me.lst_1 & "'",,acDialog, me.name . جعفر سترى معلومات اكثر عن هذا المتغير هنا . جعفر2 points
-
وعليكم السلام ورحمة الله وبركاته تفضل اخى الكريم ترحيل الغياب.xlsm2 points
-
فقط غيير المعيار الى الاسم و الغي المفتاح الاساسي عشان يقبل التكرار تفضل التعديل test-a.accdb2 points
-
طبعا هذا مجرد فاصل (ممكن يكون علامة/علامات او رقم/ارقام او حرف/حروف) بين بيانات الحقول ، وممكن استعمال اي فاصل ولكن بشرط هذا الفاصل لا يكون في بيانات الحقول ، لأن هذه الحقول يتم تجميعها كجمله واحدة ، مثلا: اذا كانت بيانات : الحقل1: /ذهبت الى السوق، ومنها الى المتجر./ الحقل 2: /قيمة المادة: 75/ الحقل 3: /الاحد - 22/05/2022 // 11:32ص/ فإذا جمعنا الحقول الثلاث اعلاه ، فتكون الجملة: /ذهبت الى السوق، ومنها الى المتجر.//قيمة المادة: 75//الاحد - 22/05/2022 // 11:32ص/ فيجب ان نختار فاصل غير موجود في هذه الجملة (او اي جمل في المستقبل) ، فبإختيار مبرمج سابق العلامة | تصبح الجملة اعلاه: /ذهبت الى السوق، ومنها الى المتجر./|/قيمة المادة: 75/|/الاحد - 22/05/2022 // 11:32ص/ ونلاحظ من السهل فصل الجملة الى 3 جُمل 🙂 نعم ممكن استعمال اي فاصل آخر (نلاحظ بأن العلامات التالية موجودة في الحقول الثلاث اعلاه هي: ، . : - / _ فلا يمكن استعمالها) ، فممكن نستعمل (لاحظ اني استعملت عدد كبير من الارقام او الاشارات ، فأكون متأكد انه من المستحيل ان يكون هذا الفاصل جزء من بيانات الحقول) : 11111 فتصبح الجملة: /ذهبت الى السوق، ومنها الى المتجر./11111/قيمة المادة: 75/11111/الاحد - 22/05/2022 // 11:32ص/ جججججج فتصبح الجملة: /ذهبت الى السوق، ومنها الى المتجر./جججججج/قيمة المادة: 75/جججججج/الاحد - 22/05/2022 // 11:32ص/ /\/\ فتصبح الجملة: /ذهبت الى السوق، ومنها الى المتجر.//\/\/قيمة المادة: 75//\/\/الاحد - 22/05/2022 // 11:32ص/ ******** فتصبح الجملة: /ذهبت الى السوق، ومنها الى المتجر./********/قيمة المادة: 75/********/الاحد - 22/05/2022 // 11:32ص/ ولكن حذار من استخدام // كفاصل ، وإلا ستكون الجملة اعلاه من 4 حقول وليس من 3 !! امثله اخرى من الفواصل اعلاه وانها تعمل بطريقة صحيحة ، وسأترك لكم طريقة تفكيك الحقول الثلاث : 11111 : عدد الطلبة 11111111معدل الدرجات1111111وهذه نسبة ضئيلة جججججج : تأجججججججججمال القمرججججججيوم اصبح بدرا شكرا اخوي ابو عبدالله ، واخوي مبرمج سابق ، خليتونا نعصر افكارنا 🙂 جعفر2 points
-
2 points
-
السلام عليكم ورحمة الله وبركاته وددت أن أساهم بالمنتدي - مع قلت ذات اليد - اقصد العلم - - ببعض الأفكار البسيطة والخفيفة لعل أحدا يفيد منها بشىء فتصيبني منه دعوة بظهر الغيب - فيرد عليه ملك "آمين ولك بمثل" ستكون ان شاء الله وقدر متفرقة علي قدر سعة الوقت والله المستعان. فكرة اليوم: كما هو بالعنوان تمرير بيانات من التقرير الي النموذج - او من نموج الي نوذج آخر احيانا تدعو الحاجة الي حساب بعض الأرقام بالتقرير او بالاستعلام دون النموذج - ونحتاج الي هذه الأرقام المحسوبة لنستخدمها بنموذج آخر لاستعمالها بعمليات حسابية أخري أو حتي عرضها فقط من هنا كانت الفكرة: أولا- ننشئ هذا الاجراء العام - والذي ستتلخص مهمته في ثلاث أمور 1- التحقق من كون الفورم المرر اليه البيانات علي قيد الحياه -يعني مفتوح ام لا- 2- استقبال البيانات من التقرير أو النموذج 3- تمريرها الي النموذج الأخر. وهذا هو: Public Sub GetInfoRep(Frm As String, T1rp As Variant, T2rp As Variant, _ T1Fm As String, T2Fm As String) 'Frm Form name 'T1rp Text1 on report 'T2rp Text2 on report 'T1Fm Text1 on Form 'T2Fm Text2 on Form '================================ 'Test if form is open before pass data to it If CurrentProject.AllForms(Frm).IsLoaded = True Then Forms(Frm).Controls(T1Fm) = T1rp Forms(Frm).Controls(T2Fm) = T2rp End If End Sub ثم نستدعيه عند اغلاق التقرير او النموذج هكذا GetInfoRep "Form1", Me.TxDays, Me.TxSalary, "Text2", "text4" والنتيجة: تشاهدونها بالمرفق ودمتم passDataToForm.rar1 point
-
السلام عليكم ورحمة الله وبركاته كنت قد وضعت هذا المثال في منتدى الفريق العربي للبرمجة ، وأخي ابو الآ ما قصر وعمل نسخة منه الى هذا المنتدى (انا لم اكن من روّاد هذا المنتدى حينئذٍ) على هذا الرابط: http://www.officena.net/ib/topic/58001-منقول-هدية-برنامج-تصدير-بيانات-من-جداولاستعلامات-اكسس-الى-اكسل/ والآن ، وبعد عمل مجموعة تعديلات عليه واصبح في نسخته الخامسة ، واهمها ان البرنامج اصبح يعمل على 32بت و 64بت ، رأيت ان اضع البرنامج بين يديكم طريقة العمل هي كما في الرابط السابق (ولكن للأسف لا يمكن رؤية الصور التوضيحية هناك) ، فعليه ، سأقوم بعمل نسخة منه هنا مع الصور التوضيحية: رأيت الكثير من الاسئلة حول تصدير بيانات الاكسس الى الاكسل ، وكل سؤال يختلف عن غيره بطريقة او اخرى ، فحبيت ان اضع بين يديكم برنامج اشتغلت عليه ، واتمنى من الله سبحانه وتعالى انه يقدر يخدم الكل البرنامج سهل الاستعمال ، فكل المطلوب في الواجهة ، ولا تحتاج الذهاب للكود اولا: الواجهة: 1. تختار من مربع السرد ، جدول او استعلام ، 2. على اساس الاختيار في رقم 1 ، ستظهر لك قائمة باسماء الجداول او الاستعلامات في برنامجك ، 3. اسم ملف الاكسل المراد حفظه به ، ومجلد التخزين ، فتلقائيا يكون في نفس مجلد البرنامج ، 4. هنا تكتب اسم صفحة الاكسل التي تريدها (انظر الصورة في الاسفل) **1** تستطيع ان تصدر اي عدد من الصفحات الى اكسس (طبعا التصدير يكون باستعمال البرنامج عدة مرات ، في كل مرة تستخدم اسم صفحة جديدة) ، **2** تستطيع ان تصدر بيانات جديدة الى نفس الصفحة في اكسل (طبعا التصدير يكون باستعمال البرنامج عدة مرات ، في كل مرة تستخدم *الادخال من خانة* اسفل الخانات الموجودة في الاكسل) ، 5. تستطيع بدء تصدير البيانات الى اي خانة في اكسل مثل A2 او C5 او اي خانة اخرى ، **3** تستطيع ان تصدر بيانات جديدة الى نفس الصفحة في اكسل (طبعا التصدير يكون باستعمال البرنامج عدة مرات ، في كل مرة تستخدم *الادخال من خانة* اسفل الخانات الموجودة في الاكسل) ، 6. تستطيع ان تحفظ ملف الاكسل بالصيغ التاليه: "xls" او "xlsx" او "xlsm" او "xlsb" او "csv" او "txt" ، والصيغتين الاوليتين هما الاهم ، والصيغتين الاخيرتين بهم قيود معينة ، 7. تستطيع ان تختار المجلد الذي تريده ، مع كتابة اسم الملف المناسب لك (انظر الرقم 3 اعلاه) ، 8. تستطيع تصدير البيانات مع اسماء الحقول (في الاكسس) ، وتستطيع تصدير البيانات مع عناوين/مسميات الحقول (في الاكسس) ، نلاحظ اعلاه ، بان الجدول elemnts لا يحتوي على عناوين/مسميات الحقول بالعربي ، بينما الجدول elemnts2 يحتوي عليها ، وتستطيع تصدير البيانات فقط بدون اسماء الحقول ، 9. تستطيع ان تصدر البيانات الى ملف اكسل فيه بيانات سابقة ، وهنا تستطيع الاستفادة من الارقام 4 و 5 اعلاه ، او ان تحذف ملف الاكسل الموجود حاليا بنفس الاسم ، وتبدأ تصدير ملف جديد ، 10. بعد تصدير البيانات الى اكسل ، هل تريد إحتواء وتوسيع كل الاعمدة فيه ، حتى ترى كل البيانات بدون الحاجة الى توسيع كل عمود على حدة ، او لا تريد توسيع الاعمدة. 11. الزر الذي يقوم بعملية تصدير البيانات الى اكسل ، حسب الاختيارات اعلاه ، مع ملاحظة: يجب تعبئة الحقول داخل المربعات الحمراء ، اما بقية الحقول فإختيارية ، 12و 13. لجعل هذا البرنامج يعمل على اي من برامجكم الحاليه ، يجب تصدير النموذج frm_Export_to_Excel و الوحدة النمطية fFolder_Dialog اليها. طبعا هناك أفضلية تصدير البيانات من الاستعلام ، حيث تستطيع ان تتحطم بالبيانات المطلوب تصديرها. ملاحظات؟ اخطاء/عطل؟ إضافات؟ انا في الخدمة ، قدر المستطاع جعفر 7.Export_to_Excel_05.1.mdb.zip1 point
-
رابط تحميل السيلينيوم https://github.com/florentbr/SeleniumBasic/releases/download/v2.0.9.0/SeleniumBasic-2.0.9.0.exe رابط تحميل الدريفر الخاص بالسلينيوم https://chromedriver.storage.googleapis.com/102.0.5005.27/chromedriver_win32.zip الكروم درايفر لابد ان يكون اصداره مثل اصدار الكروم المصطب على جهازك1 point
-
السلام عليكم مشاركه مع اخى العزيز مهندس قاسم جزاه الله كل خير لعلها تكون ما تريد Private Sub أمر13_Click() x = Me.rsdall DoCmd.GoToRecord , , acNewRec Me.rsd1 = x End Sub تقبلوا مرورى وتمنياتى لكم بالتوفيق رصيد_1.accdb1 point
-
بصراحة انا بفرح لما اشوف مشاركاتك استاذ محمد .. لانها تفتق الاذهان كما يقول استاذنا جعفر1 point
-
استاذ محمد ..هو انت عاوز تدخل بيانات من النموذج للاستعلام حتى يحسبلك الضريبة ؟!! بصراحة انا مامرت هيك معلومة معاي الذي افهمه ان الاستعلام جهة وسيطة وظيفته تصفية البيانات من الجدول وليس ادخال البيانات1 point
-
فعلا استاذ موسى ..انا فهمتها انه لو كانت سنة التعيين 2000 يعني النتيجة 2003 وبهذا تتحول -3 الى +31 point
-
متأكد استاذ موسى 😄 بالامس تحدثنا عن ذلك وطالما تمكنا من تمرير قيمة حقل ممكن تمرير اسم النموذج او تسميته الخ واحيانا نستخدم ارقام محددة مثلا يكون لدينا نموذج نرغب في استخدامة لعرض بيانات لعدة جداول مثلا اذا كان الرقم المحمل 1 يكون النموذج خاص بجدول التدريب 2 يكون النموذج لجدول المؤهلات 3 يعرض اسماء المدن الخ مع امكانية التحكم بالحقول والتسميات والتنسيق كل ذلك بناء على الرقم المحمل عذرا اخ @jjafferrكتب الرد اوف لاين ولم اشاهد ردك1 point
-
فيه فكرة في بالي لعمل الفواصل 🙂 وهي انشاء استعلام من عمود واحد ويكون مصدره الجدول .. في هذا العمود يتم جمع جميع أعمدة الجدول والفصل بينهم بالفاصلة هكذا : [Field1] & " ," & [Field2] وبعدها يتم تصدير الاستعلام .. والتجربة خير برهان 👌🏼1 point
-
1 point
-
1 point
-
1 point
-
المميزات الجديدة في اكسس 2021 والذي يعتقد انه اخر اصدار وسيكتفى بالتحديثات الامنية حيث سيتم الاعتماد على نظام الاشتراكات السنوية لاوفيس 365 تحسين في ادارة الجداول المرتبطة من خلال تحديث الجداول المرتبطة أو إعادة ربطها أو العثور عليها أو تحريرها أو حذفها الخ اظهار علامات تبويب الكائنات المفتوحة مثل الجداول والنماذج والتقارير والاستعلامات. للتنقل بينها ويمكن الرجوع للتبويبات المتراكبة في حالة رغبة المستخدم اضافة خيار جديد في نوع الحقل للجدول بمسمى تمديد التاريخ والوقت يوفر نطاقًا أكبر للتاريخ ودقة جزئية أعلى وتوافق مع نوع التاريخ "التاريخ والوقت 2 في SQL Server * اضافة الى العديد من المميزات في التطبيقات الاخرى منها على سبيل المثال الحفظ التلقائي والوضع الداكن في الوورد وغيرها من التحسينات التي لا يتسع الوقت لذكرها اليوم تفضلت مايكروا بارسال رابط للتحميل مع مفتاح ترخيص للنسخة البرو بلس وسيتم التجربة بشكل اكبر ------------------------------ * عند استخدام هذا النوع من نوع البيانات لا يمكن فتح البرنامج بالاصدارات الاقدم من access1 point
-
1 point
-
1 point
-
السلام عليكم الحمد لله تم العثور على حل بمساعدة أخ عزيز كل الشكر والتقدير له ولكل من ساهم بالمساعدة سوف ارفق كود يوضع بالورقة الثانية الخاصة بإحضار البيانات ولكن يجيب إن يكون نطاق الخلاية عادي وليس ديناميكي. شكرا للجميع Private Sub Worksheet_Change(ByVal Target As Range) Dim a, i As Long, ii As Long, k As Long If Target.Cells.CountLarge > 1 Then Exit Sub If Target.Address = "$I$2" Then Application.ScreenUpdating = False Range("A1").CurrentRegion.Offset(1).ClearContents a = Worksheets(1).Range("A1").CurrentRegion.Offset(1).Value ReDim b(1 To UBound(a, 1), 1 To UBound(a, 2)) For i = LBound(a, 1) To UBound(a, 1) If a(i, 1) = Target.Value Then k = k + 1 For ii = LBound(a, 2) To UBound(a, 2) b(k, ii) = a(i, ii) Next ii End If Next i If k > 0 Then Range("A2").Resize(k, UBound(b, 2)).Value = b End If Application.ScreenUpdating = True End If End Sub1 point
-
1 point
-
وعليكم السلام 🙂 في احد برامجي ، نقرأ من الباركود الاحادي ، و QR ، و الجوازات والهويات MRZ ، كلها من حقل واحد ، وكما ترى فعدد الحقول كثيرة في النموذج ، وكلما يكون التركيز على حقل ، يصبح لونه اخضر (حتى يعرف المستخدم المؤشر موجود على اي حقل) ، ولكن ، على حدث "عند فقد التركيز" لكل حقل و زر في في النموذج ، يكون الكود لإعادة التركيز على الحقل الاول ، حقل ادخال الباركود . ولا توجد طريقة خاصة لمعرفة اذا كان ادخال المعلومة كان باليد او بالباركود ، إلا بحساب الوقت الذي اخذه ادخال المعلومة ، لذا أنصحك اتباع الطريقة اعلاه 🙂 جعفر1 point
-
تفضل اخى الحسام هذا الموقع به شرح لكيفيه جلب البيانات عن طريق السيلنيوم سوف يفيدك في طلبك1 point
-
1 point
-
السلام عليكم ورحمة الله استخدم الكود التالى Sub MinMax() Dim arr() On Error Resume Next ReDim Preserve arr(200) For Each c In Range("I2:I200") If c.Value >= 1000 And c.Value <= 3000 Then arr(p) = c.Value p = p + 1 End If Next X = WorksheetFunction.Max(arr) Y = WorksheetFunction.Min(arr) Sheet2.TextBox1.Value = X Sheet2.TextBox2.Value = Y End Sub1 point
-
انا ممكن معرفش اعملها كويس لكن سوف اجرب و الفكره هي اولا انت هتحتاج تعمل استعلام الحاقي لنسخ البيانات من جدول 1 الى جدول 2 وثم استعلام حذف لنفس البيانات فى جدول 11 point
-
[الجديد في التحديث 7.20]: 1- في قائمة الشعر العربي، تم إضافة خاصية (التنقل بين الأبيات الشعرية)، وفيها خصائص عدة: (انتقال إلى الشطر الشعري التالي) و(انتقال إلى الشطر الشعري السابق) و(انتقال إلى البيت الشعري التالي) و(انتقال إلى البيت الشعري السابق) و(انتقال إلى القصيدة التالية) و(انتقال إلى القصيدة السابقة). 2- في قائمة الشعر العربي وقائمة الجداول، تم إضافة خاصية (بحث في الجداول والأبيات الشعرية) والتي ستُمكِّنك من البحث ضمن الجداول والأبيات الشعرية فقط مع جملة واسعة من خيارات البحث. 3- في قائمة إزالة، تم إضافة خاصية (حذف عناصر التحكم) والتي تُمكنك من حذف عناصر التحكم التي تضاف للبحث من خلال تبويب المطور. 4- في قائمة الجداول، تم إضافة خاصية (انتقال إلى الجدول التالي) و(انتقال إلى الجدول السابق). 5- في قائمة التعليقات، تم إضافة خاصية (انتقال إلى التعليق التالي) و(انتقال إلى التعليق السابق). 6- في قائمة الصفحات، تم إضافة خاصية (انتقال إلى الصفحة التالية) و(انتقال إلى الصفحة السابقة). 7- في خدمة ما بين قوسين، تم إضافة خاصية (التنقل بين الأقواس) والتي تتيح لك التنقل بين العبارات الموجودة ضمن قوسين.1 point
-
Private Sub CommandButton1_Click() ActiveCell.Value = dpFrom.Value(1) ActiveCell.Offset(1).Value = dpFrom.Value(2) End Sub1 point
-
@Shamerany السلام عليكم استاذ في حالة كون عندي ما يقارب 40 هل يتم استخدام هذا الكود نفسه الي وضعته في الحل حضرتك ؟1 point
-
الملف الأول شيت 2 عمود دي لا توجد فيه معادلات DONE.xlsm1 point
-
1 point
-
https://youtu.be/raKVyV2GFww هذه البداية https://docs.microsoft.com/en-us/office/vba/api/excel.application.sendkeys وهذا ايضا1 point
-
أسأل مابدى لك استاذ علي فالموجودين في المنتدى كلهم خيرون ان شاء الله1 point
-
Derbali بالفرنسية اي دربالي باللغة العربية وهو لقب العائلة : لقب منتشر كثيرا بتونس و الجزائر و المغرب و ليبيا مشكور اخي على المرور و على قول استاذنا :Eng.Qassim I care of my self على الاقل في جانب تعلم البرمجة1 point
-
اخي شاهد المرفق جرب واخبرني النتيجة إيصال إستلام قيمة إيجار شهرى.xlsm1 point
-
فيديوووووو جديددددد كيفية علم ترقيم تسلسلي في البيفوت تيبل في الفيديو دة هانتعلم ازاي نضيف جوة البيفوت تيبل ترقيم تسلسلي زي اللي موجود في الاكسيل https://youtu.be/JexkDt05R20 كيفية عمل ترقيم تسلسلي داخل البيفوت تيبل.xlsx1 point
-
1 point
-
1 point
-
1 point