بحث مخصص من جوجل فى أوفيسنا
![]()
Custom Search
|
نجوم المشاركات
Popular Content
Showing content with the highest reputation on 01/10/20 in all areas
-
لان احنا حددنا مربعات النص جرب الكود التالى ان شاء الله يظبط معك Dim ctl As Control For Each ctl In Me.Controls If ctl.ControlType = acTextBox and ctl.ControlType = acComboBox Then If ctl.Value <> "" Then ctl = "" End If End If Next ctl جرب ووافنا بالنتيجه بالتوفيق5 points
-
السلام عليكم تفضل اخي ضع هذا الكود في خصائص الحقل - بيانات - قاعدة التحقق من الصحة / حيث يسمح لك بادخال تاريخ اليوم او قبل ذلك فقط ومن ثم ضع الرسالة المناسبة في نص التحقق من الصحة "لقد ادخلت تاريخ لاحق" <=Date() تحياتي4 points
-
تفضل هذا التعديل اخي الكريم GYM.accdb3 points
-
السلام عليكم تم عمل المطلوب في الملف المرفق بواسطة المعادلات وجداول مساعدة (ملونة بالأصفر الفاتح وأحد الجداول يحوي معادلات صفيف)... أرجو أن يفي الغرض المطلوب في انتظار من يقوم بالمساعدة بواسطة حل بـ VBA... بن علية حاجي رصد الدرجات.xlsm2 points
-
تم معالجة الامر ملاحظة يجب ترك الصف 2 في الشيت total فارغاً للحفاظ على بنية الجدول دون تدخل خلايا غريبة (بذلك تكون اول خلية بالجدول بعد الرأس هي الخلية A4) Option Explicit Sub get_data_New() Dim SH_from As Worksheet Dim T As Worksheet Dim rg_to_Patse As Range Dim Rt%, MY_max%, Ro%: Ro = 4 Set T = Sheets("Total") Set rg_to_Patse = T.Range("A3").CurrentRegion Rt = rg_to_Patse.Rows.Count If Rt > 1 Then Set rg_to_Patse = rg_to_Patse.Offset(1).Resize(Rt - 1) Else Set rg_to_Patse = T.Range("B4").Resize(, 5) End If rg_to_Patse.Clear For Each SH_from In Sheets If SH_from.Name <> T.Name Then MY_max = Application.Max(SH_from.Range("A:A")) T.Cells(Ro, 2).Resize(MY_max, 5).Value = _ SH_from.Cells(3, 2).Resize(MY_max, 5).Value Ro = Ro + MY_max End If Next SH_from With T.Range("A3").CurrentRegion .Sort key1:=Range("b3"), Header:=1 .Columns(1).Offset(1).Formula = _ "=IF(B4="""","""",MAX($A$3:A3)+1)" .Offset(1).Borders.LineStyle = 1 .Offset(1).InsertIndent 1 .Value = .Value .Font.Bold = True End With End Sub M_data_new.xlsm2 points
-
ومشاركه مع اخى على Dim ctl As Control For Each ctl In Me.Controls If ctl.ControlType = acTextBox Then If ctl.Value <> "" Then ctl = "" End If End If Next ctl تقبلوا تحياتى وتمنياتى لكم وللجميع بالتوفيق2 points
-
اخي العزيز Khalf نحن نتكلم عن برنامج متكامل للرواتب: الجواب - نعم ممكن في حالة عمل حقول محسوبة calculated بالجدول الواحد ( وهي طريقة غير محببة لانستخدمها بالجدول وانما نستخدم استعلام) ما هو الجيد وما هو السيء الحقول المحسوبة ؟ الجيد: أن الحقل المحسوب سيعرض نتيجة الحساب بوضع للقراءة فقط (Read-only)، هذا يعني أن المستخدم لا يمكنه التلاعب بالأرقام الناتجة. السيء: أن الحقل المحسوب لا يمكن أن يتضمن حقولا موجودة في جداول أخرى، هذا يعني أنه في بعض الحالات ستحتاج إلى إنشاء حقولا محسوبة في استعلام وهي دائما تحتاج تحديث2 points
-
2 points
-
فورم اظهار الادخال الجديد للاسم على الليست بوكس بمجرد الحفظ الفيديو1 point
-
بارك الله فيك استاذ جعفر تم حل الموضوع بفكرة أخري جزاك الله خيراً1 point
-
وعليكم السلام ورحمه الله وبركاته اخى الفاضل بمطالعه الموقع قابلنى هذا الموضوع لابو جودى اطلع عليه لعلك تجد به بعض الافكار تقبل تحياتى وتمنياتى لك وللجميع بالتوفيق1 point
-
اخي العزيز Khalf كل ماتفضلت به صحيح / هذه هي مزايا الاكسس تستطيع عمل الكثير وباكثر من مكان. انا رايي ان تصميم قواعد البيانات اكسس يجب ان يكون اساسه صحيحا مثل (اساس البيت) كل ماكان اساسه صحيحا كان بناءة صحيحا وليس العكس. حتى لاتقع بمشاكل التصميم.(افضل مكان لعمل العمليات الحسابية او الدوال هي الاستعلامات) واساس الاكسس هي الجداول ثم الاستعلامات والعلاقات ثم النماذج والتقارير. تحياتي1 point
-
تفضل اخي الكريم Dim varFilter As Variant varFilter = 0 With Me.Form If Not IsNull(varFilter) Then .DataEntry = False .Filter = varFilter .FilterOn = True Else .FilterOn = False End If .Requery End With بالتوفيق1 point
-
مرحباً أستاذ خالد يمكن ذلك ودون استعلام بجعل العمليات الحسابية في النموذج عن طريق استعلامات مدمجة بالفيجوال بيزيك وعمليات حسابية تعطي قيم لحقل مخفي أو ظاهر بحسب الحاجة. فيكون البرنامج من جدول واحد ونموذج إدخال تتم العمليات به وتنتقل منه إلى الجدول.1 point
-
1 point
-
السلام عليكم ربما مع هذه المشاركات للخبراء لن يكون لتعليقي محل، ولكن وباختصار: نعم، يمكن عمل البرنامج بجدول واحد.1 point
-
السلام عليكم من خلال تجربتي المتواضعة في برامج الرواتب وعمل برنامج متكامل وخفيف وخالي من المشاكل اود ان اوضح مايلي : 1- عمل جدول رئيسي لبيانات الموظفين ( الاسم , العنوان الوظيفي, وهكذا ......) شرط عدم عمل اي حقل محسوب بالجدول وعمل فهرس بعدم تكرار البيانات للاسم وباقي الحقول تكون مطلوبة . 2- عمل جداول فرعية مثل جدول (الراتب الاسمي , العلاوة , المخصصات وهكذا......) ترتبط بالجدول الرئيسي عن طريق العلاقات بالاستعلام. 3- عمل نموذج رئيسي لادخال البيانات ومصدره الاستعلام. 4- عمل التقارير المختلفة لغرض الطباعة . تحياتي1 point
-
قم بتغيير اسم الشيت مجمل إلى Total ونفذ هذا الكود Option Explicit Sub get_data() Dim SH_from As Worksheet Dim T As Worksheet Dim Rt%, MY_max%, Ro%: Ro = 3 Set T = Sheets("Total") Rt = T.Cells(Rows.Count, 2).End(3).Row If Rt <= 2 Then Rt = 3 With T.Range("B3").Resize(Rt, 5) .ClearContents .Interior.ColorIndex = xlNo End With For Each SH_from In Sheets If SH_from.Name <> T.Name Then MY_max = Application.Max(SH_from.Range("A:A")) T.Cells(Ro, 2).Resize(MY_max, 5).Value = _ SH_from.Cells(3, 2).Resize(MY_max, 5).Value With T.Cells(Ro + MY_max, 3) .Value = SH_from.Name .Offset(, -1).Resize(, 5).Interior.ColorIndex = 6 End With Ro = Ro + MY_max + 1 End If Next SH_from End Sub الملف مرفق M_data.xlsm1 point
-
الفلترة بناء استعلام بمعيار مبني على القائمة المنسدلة comUnits وهذة القائمة تستمد قيمتها من خلال استعلام مبني على الجدول tblUnits فلو كان الجدول يحتوي على 3 وحدات تكون خيارات الفلترة لثلاث وحدات ولو كان الجدول يحتوي على 1000 وحدة تكون خيارات الفلترة 1000 وهكذا تحياتي1 point
-
اضفت وحدات جديدة ولم اواجه اي مشكله ايضا غيرت صيغة ملف اكسيل لان الكود السابق احيانا يرفض الفتح جرب الملف المرفق علما بان الفلترة لا علاقة لها بعدد الوحدات 3 او 100 او 1000 Database3 (2).accdb1 point
-
حسب المطلوب رقم 1 جرب هذا في فورم 3 بالنسبة للمطلوب رقم 3 لا يوجد خلل في الاستعلام في الفورم 2 بعد فتح الفورم تحدد الاسم نوع الاستعلام ( المعتمرين ) ، ( الرحلات ) بعدها اضغط على زر استعلام حتى يتم تنشيط خيارات البحث حدد خيار البحث المطلوب ثم اكتب في التكست بوكس المقابل لنوع البحث تكست بوكس 16 تلاحظ أنه يأتي بالاستعلام برنامج المعتمرين _A4.xlsm1 point
-
مشاركه مع اخى واستاذى العزيز @essam rabea بالنسبه للسؤال الاول شو الاستعلام لم يتم تجديد الاشترك وافتحه فى وضع التصميم وشوف فى حقل تم تجديد الاشتراك المعيار 0 بالنسبه للسؤال الثانى انت تقصد انه بيفتح على رقم المشرك لكن حقل الاسم فارغ ام ماذا جرب الان ووافنا بالنتيجه بالتوفيق ان شاء الله GYM.rar1 point
-
وعليكم السلام -تفضل ربط الميزان ببرنامج الكاشير طريقة شرح وبرمجة الميزان الباركود الماستر lp 16 وتوصيله على جهاز الكمبيوتر1 point
-
السلام عليكم اخي محمد 🙂 صار لي يومين اضرب اخماس في اسداس ، وما عرفت المطلوب رجاء تشرح لي بالتفصيل لو سمحت 🙂 جعفر1 point
-
السلام عليكم ورحمة الله وبركاته زملائي وأخوتي الأفاضل محاولة مني بعمل فورم بحث وإضافة وتعديل في كل أوراق العمل اختيار اسم ورقة العمل عن طريق كمبوبوكس بعد ذلك متاح لك البحث والإضافة في اسم ورقة العمل المختارة كل الليبل التي أمام التكست بوكسات التي يوضع فيها البيانات التي سوف سيتم إضافتها أو ترحيلها تأخذ اسماءها من الصف الخامس من ورقة العمل النشطة في حالة إذا تم فتح الفورم وإليكم الملف فورم بحث وإضافة وتعديل في كل أوراق العمل.xlsm1 point
-
بسم الله الرحمان الرحيم اليوم سأقدم لكم مشروع صغير و هو احتساب الاعمار منها العام و الشهر و اليوم سوف أرفق لكم هذا الملف البسيط مع تحياتي لكم المبرمج : مناد سفيان ............ الجزائر1 point
-
على حسب ما فهمت اخ حمادة انه يريد مثل تلك الايقونة متحركة معه بالشيت . اما ينزل تكون معاه . لعله يرد ان يربطها بفورم او يريد ان يربطها بارتباط تشعيبى ليسهل عليه التنقل بين الصفحات .ميكونش في اسفل الصفحة ومن اجل الانتقال الى صفحة اخرى او ان يقورم بفتح فورم او ان يفعل مديول وايقونته اعلى الشيت يطلع الى ان يصل اليه للضغط عليه ولكن تكون الايقونة متحركة معه اينما يذهب وتكون على يمن او شمال الشاشة هذا ما فهمت وشرحتة لانى اريد نفس الامر ههههههههه وشكرا على الصبر عليا وان كان مرادك غير ذالك استاذ محمد يرجى التوضيح1 point
-
السلام عليكم أخي jewel An يرجى مراجعة التوجيهات أولاً فيما يخص تعريب الاسم ثم هناك أحرف عربية دون نقط في برنامج الوورد من إدراج ..رمز ...تجد الحروف التي تريدها لتضعها ضمن النص المطلوب كتابته. أو قم بالبحث ..عن خطوط عربية...Arabic Fonts تقبل تحياتي.1 point
-
1 point
-
أيضا تم اضافة مثال آخر الي نفس الموضوع فى الارشيف http://www.officena.net/ib/index.php?act=S...&st=0#entry6020 و مثال الأخ فهد مشكورا يعتمد علي ال RecordsetClone و المثال الذي أضفته عن طريق دالة Dcount1 point
-
و هذا مثال آخر لمنع الادخال اذا تكررت قيم ثلاثة حقول بالاعتماد علي دالة Dcount لعمل عد لعدد السجلات فى الجدول التي تحقق شرط أن قيمة الثلاثة حقول علي النموذج = القيم فى الجدول و تم أولا حساب الشرط و تسجيله فى متغير T1 لا ستخدامه كشرط فى الدالة بدلا من كتابة جملة الشرط الطويلة فى الدالة مباشرة و دالة الاختبار كما يلي Function checkrecord() checkrecord = 0 Dim c1 As Integer, T1 As String T1 = "(([Name]='" & Trim(Me.TName.Value) & "') and ([Salary]=" & Me.Salary & ") and ([Birthday]=#" & Format(Me.Birthday, "mm/dd/yyyy") & "#))" c1 = DCount("[Name]", "Table1", T1) If c1 > 1 Then MsgBox "Record Exists !", , "www.officena.net" checkrecord = 1 End If End Function و يتم استدعاؤها كالتالي : كما فى المثال x = checkrecord() فاذا أعادت قيمة = 1 فمعني ذلك أن السجل قد تكرر CheckifExistMulti.rar1 point
-
راجع هذا الموضوع http://www.officena.net/ib/index.php?showtopic=11571 point
-
مرفق مثال لأحد الأخوة (للأسف لا أذكر الاسم ) لاختبار وجود الاسم مسبقا ، و السماح بتسجيله من عدمه جرب أي اسم ممن فى الجدول مثل عمر مثلا ستظهر الرسال لتخيرك بالتسجيل ام لا ، مع وضع أرقام السجلات التي بها هذا الاسم و يمكنك تكرار التجربة بنفس الاسم يعد ضغط زر سجل جديد checkifExists.rar1 point
-
هل هذا الموضوع من ضمنها شرح دوال أكسس - دوال تجميع المجال http://www.officena.net/ib/index.php?showtopic=152 أيضا الامثلة فى هذا القسم دوال الأكسس http://www.officena.net/ib/index.php?s=&act=SF&f=301 point
-
اذا أردت نسخ سجل بالكامل فلا أفضل استخدام استدعاء أوامر القوائم و لكن يتم ذلك بال dao أو ال ado هذا مثال لنسخ السجل الموجود فى النموذج الي سجل جديد مع تغيير الترقيم باضافة 1 و هو يحتاج الي اضافة مرجع dao و يتم فيه نسخ السجل فى النموذج الحالي و اضافة سجل و فتح النموذج علي السجل الجديد Private Sub copyRec_Click() Dim MYDB As Database, MYSET1 As Recordset Set MYDB = CurrentDb() Set MYSET1 = MYDB.OpenRecordset("Query-or-Tablename") MYSET1.AddNew Dim n As Long n = DMax("inID", "Query-or-Tablename") + 1 MYSET1![ID] = n MYSET1![Field1] = Me![TextBox1] MYSET1![Field2] = Me![TextBox2] MYSET1![Field3] = Me![TextBox3] MYSET1![Field4] = Me![TextBox4] MYSET1.Update MYSET1.Close Set MYDB = Nothing DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70 MsgBox " Copy Record Data Completed into record no. :" & Str(n), 64, "Alert" Dim stLinkCriteria As String stLinkCriteria = "[ID]=" & n DoCmd.OpenForm "Formname", , , stLinkCriteria End Sub1 point
-
السلام عليكم هذا مثال لمن يريد معرفة عدد حروف أي جملة عربية وبالتفصيل قام بتعديل الكود ليصبح بهذا الشكل الذي في المثال أستاذي المبدع أبو هادي وله مني وافر الشكر والعرفان . (( يوجد في المثال نموذجين قبل تعديل الأستاذ أبو هادي وبعد التعديل )) ولكم تحياتي أخوكم : فهد الدوسري A_B_C.zip1 point
-
من وضع تصميم الاستعلام فى حقل المعايير فى الاستعلام نستخدم المعالج لاختيار مربع النص من علي النموذج الذي يحوي حقل المعرف للسجل ( الايقون الذي يشبه العصا السحرية ) أو نكتبه مباشرة فى المعيار [Forms]![Form1]![StudentID] حيث Form1هو اسم النموذج و StudentIDهو اسم مربع النص علي النموذج و نفس الوضع بالنسبة لباقي الشروط و بالنسبة لقيمة الدرجة يمكنك استخدام علامة أكبر من أو = >=[Forms]![Form1]![grade]1 point
-
السلام عليكم نعم أخي ha98 ، هذا الثابت هو المختص بإجبار فتح النموذج على شكل Data Sheet ولو تلحظ مسمى الثابت ac Form D S يدل على معناه حيث الـ D من Data والـ S من Sheet . تحياتي .1 point
-
السلام عليكم بعد إذن أخي محمد جرب هذا الكود : DoCmd.OpenForm "Form1", acFormDS تحياتي .1 point
-
الدالة نفسها تمكنك من البحث بين قيمتين ، و ذلك بتحديد ما تريد فى الجزء الخاص بالشرط ( الجزء الثالث ) يوجد فى قسم الدوال شرح و أمثلة http://www.officena.net/ib/index.php?s=&act=SF&f=30 و يوجد فى هذا الموضوع تطبيق علي المعيار فى صورة مجال ( بين قيمتين ) بالكود http://www.officena.net/ib/index.php?showtopic=916 و تكون الصورة كالتالي للجزء الخاص بال Criteria بين تاريخين بالكود ( كما فى المثال أعلاه ) mycond = "(([EmpID] = " & Me.Semp & ") And ([date] Between #" & Me.Dfrom & "# And #" & Me.Dto & "#))" و للتطبيق للاستخدام المباشر بدون كود علي بين تاريخين : مثال ل Dcount DCount("[fld]", "Tbl", "[MyDate] Between #" & Format((Me.[From]), "mm/dd/YY") & "# AND #" & Format(( Me.[To]), "mm/dd/YY") & "#") مع ملاحظة أن ال # تستخدم فقط مع التواريخ و مع الارقام لا نضع شيء و مع النصوص نضع ' مثال علي التعامل مع الشرط النصي و الشرط الرقمي : في حالة حقل الشرط رقمي DLookUp("[FieldName]","TableName","[FieldName] = " & [Forms]![MainFormName]![SubFormName]![controlName]) فى حالة حقل الشرط نصي DLookUp("[FieldName]","TableName","[FieldName] = '" & [Forms]![MainFormName]![SubFormName]![controlName] & "'") و يمكنك أيضا بالاضافة الي Between استخدام معاملات And OR فى الجزء الخاص بال Criteria أو الشرط مثل DLookUp("[FieldName]","TableName","[FieldName] = 5 or [FieldName]=7") DLookUp("[FieldName]","TableName","[FieldName] = " & [Forms]![MainFormName]![SubFormName]![controlName] & " or [FieldName] = " & [Forms]![MainFormName]![SubFormName]![controlName2] )1 point
-
ضع فى خانة القيمة الافتراضية لمربع النص d1 = Format(now(); "ddd")1 point
-
موضوع ذو صلة و ان كان لا علاقة له بالسؤال التعرف علي اللغة الحالية و تغييرها و التحكم فيها1 point
-
من خصائص مربع النص تنسيق format اختار Numeral System و اجعلها context للتغير بحسب اللغة أو Hindi او National بحسب الاصدار لديك لتكون عربية دائما1 point
-
طبعا هذا ممكن ،و لكن ... ليس من التطبيق الجيد تخزين ما يمكن استنتاجه فتاريخ اليوم كافي لاستنتاج اسمه فى أي وقت فلا داعي لتخزينه و عموما لتسجيل البيانات المستنتجة فى جدول ، من المفترض أنك تريد تسجيلها كنص ( اسم اليوم ) ففي حدث بعد التحديث لمربع ادخال و تعديل التاريخ ضع الكود التالي Private Sub d1_BeforeUpdate(Cancel As Integer) Me.dayname = Format(Me.d1, "ddd") End Sub علي اساس ان d1 هو مربع ادخال أو تعديل التاريخ و dayname هو المربع المرتبط بالحقل الذي تريد تخزين اسم اليوم فيه كنص1 point
-
أخي العزيز، جرب استخدام دالة () date في القيمة الإفتراضية للعمود بدلا من () time وفي التنسيق أكتب ddd مع تحياتي1 point
-
أيضاً مثال علي ما الرد الاول ( استخدام التنسيق "ddd" ) dayname.rar1 point
-
اخي العزيز توجد هناك قاعدة بيانات جاهزة تاتي مع الاوفيس واسمها northwind (يمكنك البحث عن هذا الاسم باستخدام البحث عن الملفات الموجود في قائمة ابدأ) وستجد في هذة القاعدة استعلام اسمه "Quarterly Orders by Product" و له نفس الفكرة ولكنه يستخدم الربع السنوي بدلا عن الشهر وللحصول على الاشهر يمكنك تعديل الحقل الذي هو عنوان العمود في هذا الاستعلام بان تعدل "q" إلى "mmm" وان تكتب اسم الحقل الخاص بالتاريخ لديك بدلآ عن [orderdate] الموجود في هذا الاستعلام وستحصل في النتيجة على استعلام جدولي يمكنك انشاء تقريرك بناءآ عليه...ارجو ان يكون هذا الرد مفيدآ لك ...مع تحياتي,,,1 point
-
بالكود التالي يمكن تبديل النموذج الفرعي Me.SubForm.SourceObject = "Subform1" حيث SubForm هو اسم كائن انوذج الفرعي وSubform1 هو اسم النموذج الفرعي المراد ادراجه بدل الموجود مرفق مثال للتبديل بين نموذجين فرعيين بالكود ChangeSubForm.rar1 point
-
تنسيق مفيد و خاصة للمحاسبين و التنسيق الذي وضعه الأخ شرف كالتالي : لمن لا يريد تنزيل الملف ### ### ### ##0.00;[Red](### ### ### ##0.00)1 point
-
للحصول علي كل من الرقم العشري و الرقم الصحيح فى خانة مستقلة يمكن عمل ذلك بخطوتين 1- الحصول علي الرقم الصحيح =+INT(C5) 2- الحصول علي ناتج القسمة عليه =+MOD(C5;C6) او علي خطوة واحدة بدمج المعادلتين =+MOD(C5;+INT(C5)) Mod.zip1 point