نجوم المشاركات
Popular Content
Showing content with the highest reputation on 11/09/19 in مشاركات
-
وتعديل على الكود علشان يعمل اسرع 🙂 Set DB = CurrentDb Set RsW = DB.OpenRecordset("item") ' جدول الوجهة Set RsM = DB.OpenRecordset("tmpadvb") 'جدول المصدر Do Until RsM.EOF RsW.FirstFirst "id=" & RsM!ItId RsW.Edit RsW!LastDate = RsM!ExDate RsW!Cost = RsM!Price RsW.Update if RsW.nomatch then 'اذا مافي هذا السجل ، شو تريد عمله end if RsM.MoveNext Loop RsM.Close: set RsM=nothing RsW.Close: set RsW=nothing Set DB = Nothing جعفر5 points
-
3 points
-
تواجهنا مشكلة في الاستعلام وهي عدم ظهور التواريخ للايام التي لم يحدث بها بيع وشراء بنفس اليوم حيث عندما نعمل استعلام اجمالي بيع واستعلام اجمالي شراء ونريد دمج الاستعلامين معا فلا تسعفنا الخيارات الا ان نأخذ كافة البيانات من استعلام والاستعلام الاخر لا يظهر كافة البيانات الا عند وجود بيع وشراء بنفس التاريخ لذلك قمت بحل هذه المشكلة عن طريق اضافة جدول جديد للتاريخ بعد ان ادخلت البيانات على اكسل ثم نسخت الجدول على اكسس وقمت بادخالة بالاستعلام وجعلت العلاقة جلب كافة البيانات منه هنا واجهتني مشكلة انه التواريخ اللي ما فيها حركة بيع او شراء تبقى فارغة حيث عالجت المشكلة بدالة IFF --- Isnull لكي يوضع صفر بدلا من الفراغ مرفق قاعدة البيانات لمن يرغب بالاطلاع والفائدة دمتم بخير اجمالي البيع والشراء.accdb3 points
-
هناك عدة برامج تأتي مع جهاز البصمة ، وكل منها يحفظ البيانات في قاعدة بيانات ، منها SQL Server و dbf و اكسس و mySQL و Oracle وووو ، تستطيع التحكم في الجهاز عن طريق SDK الجهاز ، والذي يعطيك اوامر وطرق السيطرة على الجهاز وتغيير اعداداته وتصدير بياناته ، منها من تستطيع استعمال الاكسس للتعامل مع SDK ، ومنها لابد التعامل مع مكتبات Net. ، ولكن ، وإن لم تتحكم في الجهاز ، والذي لم نحاول التعامل معه مباشرة ، فيمكنك التعامل مع البيانات مباشرة ، وهذا هو المهم 🙂 الجهاز الذي تعاملت معه قبل حوالي 5 سنوات ، كان يصدر بياناته الى dbf ، ولم يكن بالامكان استيراد بياناته مباشرة من الاكسس ، فاشترينا برنامج dbf viewer والذي يمكن التحكم فيه عن طريق commandline : https://www.dbf2002.com/help/command_line_options.htm استخدمنا الاكسس حتى نأخذ البيانات للحفظ Backup ، وبيانات يومية للاكسس ، وتم هذا مباشرة من الاكسس عن طريق البرنامج اعلاه ، وبعدها عملنا برنامج الحضور والانصراف والغياب في الاكسس ، بأكثر من قاعدة بيانات 🙂 وكان عندنا فترة اسبوع واحد فقط للعمل كله ، من يوم شفنا الجهاز الى يوم تطبيق البرنامج ، والعمل كان بمعدل 15 ساعة في اليوم ، والحمدلله كمل العمل جعفر3 points
-
Private Sub CommandButton2_Click() If trim(EVAL.EV_Label1.Caption) = "" Then EVAL.Ev_text6.Visible = False Else EVAL.Ev_text6.Visible = True End If end sub هذا التعديل3 points
-
ما رأيك لو اختصرنا الاستعلامات وبدلا من استخدام ثلاث استعلامات نستخدم استعلام واحد فقط ولا داعي لاستخدام جملة iff للسجلات الفارغة بدلا من استعلام المبيعات نضع التعبير التالي في حقل محسوب في استعلامنا الوحيد Nz(DSum("[اجمالي البيع]";"المبيعات";"[التاريخ]=#" & Format([d_date];"mm/dd/yyyy") & "#");0) وبدلا من استعلام المشتريات نضع التعبير التالي في حقل اخر بنفس الاستعلام : Nz(DSum("[اجمالي الشراء]";"المشتريات";"[التاريخ]=#" & Format([d_date];"mm/dd/yyyy") & "#");0) اجمالي البيع .accdb3 points
-
الله يعطيك العافية ابو اشرف بخصوص توليد التواريخ لا تحتاج اكسيل ممكن تعملها في اكسيس افتح فورم 1 تحياتي وتقديري لك اجمالي البيع .accdb3 points
-
وعليكم السلام 🙂 هذ التغيير الذي عملته في الكود ، والباقي لم المسه 🙂 On Error Resume Next 'تعديل سجل موجود في الجدول ' W = "" Set rs = CurrentDb.OpenRecordset("Alsnaf") 'البحث عن رقم السجل المعدل 'اذا وجد السجل rs.FindFirst "[ID_Sanf] =" & ID_Sanf 'تحريره rs.Edit rs!ID_Sanf = ID_Sanf rs!Sanf = Sanf rs!Alwsf = Alwsf rs!Price_Bought = Price_Bought rs!Price_Sales = Price_Sales rs!Almwka = Almwka rs!Albdil = Albdil rs!Albdil2 = Albdil2 rs!Albdil3 = Albdil3 rs!rsdaolalmdh = rsdaolalmdh rs!Source = Source rs!Packing = Packing rs!ASRKA = ASRKA rs!A2 = A2 rs.Update rs.MoveNext Me.txt_2 = rs!ID_Sanf If rs.NoMatch Then MsgBox "لم يتم العثور على السجل" Exit Sub End If ' MsgBox "تم الحفظ" 'End If . ولكن يا ابو زاهر ، في طريقة جدا اسهل من طريقتك ، فالاكسس يقوم بكل هذا تلقائيا وتقريبا بدون كود ، وخصوصا اشوف انك داخل في غياهب الـ Recorset اجعل النموذج مصدر بياناته استعلام ومصدر بيانات الاستعلام الجدول Alsnaf ، وحقل البحث يكون غير منتظم ، والاستعلام يكون فيه معيار البحث من النموذج ، والاكسس يواصل عمله من هنا تلقائيا ، سواء بالحفظ او الحصول/عدم الحصول على سجل البحث ، وبدون كود تقريبا 🙂 جعفر 1137.التالي.accdb.zip3 points
-
نعم استاذي لقد جربت الكود على 250 الف سجل وكان بطي جدا فرجعت الي استعلام تحديث الحمدلله انتهت المشكله الا عاجبني فيك استاذي الغالي انك ترد علينا بالاجوابه ثم تعقب علينا بالطرق الصحيحه وهذا ممتاز جدا شكرا اليك ابو الجعافر2 points
-
بس اسهل واسرع لك اذا عملت استعلام تحديث 🙂 جعفر هذه الطريقة تأخرك كثيرا : If RsW!id = RsM!ItId Then تصور اذا عندك 10,000 او 20,000 سجل او اكثر ، فانت تطلب من الكود ان يبحث فيهم سجل بسجل ، ولكل سجلات الجدول المصدر !! جعفر2 points
-
حياك الله وبياك اخي جعفر لم انتبه اني استخدم التعبير الخطأ الى ان ذكرت انت ذلك جزاك الله كل خير2 points
-
وعليكم السلام 🙂 BOF معناه Begining of File ، اي بداية الملف ، وفي الواقع مافي سجل قبل BOF 🙂 يجب ان تستعمل EOF 🙂 جعفر2 points
-
لا اعلم اخى حتى قمت بالنظر فى مثال عندى لام عهود للتحكم بخصائص القاعده وبه خواص كثيره سارفقه لك لعلك تصل منه الى نتيجه تمنياتى لك وللجميع بالتوفيق للتحكم الكامل بخضائص قاعدة البيانات ويشمل على 26 وظيفه.rar2 points
-
السلام عليكم تم عمل المطلوب بمعية أعمدة مساعدة (لتجنب معادلات الصفيف)... بن علية حاجي عكوك.xls2 points
-
السلام عليكم إليك هذه الطريقة بدون تكرار الكتابة أي طريقة مخالفة لمثال أخونا محمد قائمة فصل منقسمة علي جاني الورقة.rar2 points
-
السلام عليكم ابو ياسين 🙂 غريبة ما سألتني: في جدول Data ، بما انه هناك اكثر من قماش وطول لكل زبون ، فانت عندك 8 الى الآن ، فالمفروض انك تخرج هذه الحقول من هذا الجدول ، وتعمل جدول جديد مثل sData ، فيه حقل قماش (يجب ان يكون مفهرس) وطول فقط ، طبعا مع حقل يأخذ ID من جدول Data ، ثم في النموذج تعمل نموذج فرعي للجدول sData ، وتضيف فيه اي عدد من الاقشمة والاطوال حتى لو جاب القبيلة كلها 🙂 طبيعة استعلام الـ union اللي انا عملته ، بطيء ، لأني دمجت 8 استعلامات فيه ، والحقل قماش غير مفهرس ، فلما تربط جدولين في استعلام بحقول غير مفهرسة ، فالاستعلام يكون ابطئ جعفر2 points
-
2 points
-
سيدي الفاضل ، ما قدرت اخلي التحديث اسرع من هاي 🙂 واذا السرعة عجبتك ، اخبرك كيف تجعلها اسرع ان شاء الله 🙂 جعفر 1134.jjafferr.accdb.zip2 points
-
2 points
-
السلام عليكم جرب المرفق لعل فيه ما تريد... ملف المقارنه.xls2 points
-
السلام عليكم ورحمة الله تعالى وبركاته اتمنى ان تكونو بصحة جيدة الموضوع ببساطة هو التحكم بقاعدة البيانات اونلاين ( قفل & فتح ) الشرح جعلت قاعدة البيانات تقرأ بيانات التفعيل اونلاين لا تقلقو لن نحتاج الى استضافة او ما شابه فقط ملف نصى به بيانات التفعيل بيانات التفعيل كالتالى حالة الترخيص ك منتهى او نشط الرسالة : احددها كما اشاء اكتب بها ما اريد ان اخبر به العميل الترخيص من الفترة كذا الى الفترة كذا طبعا يا جماعة الموضوع مشاركة لافكاركم فى هذا المجال حتى ننميه انا مش هنزل الاكواد الا لما تعصورو دماغكم من التفكير وتقولولى نستغل الموضوع دا ازاى طبعا من مميزات الموضوع دا اننا هنتحكم بقاعدة البيانات تفتح عن العميل او لا بدون كود تفعيل بقى او وقت محدد كل دا انا اللى هحدده مثلا ممكن نعمل قاعدة بيانات تانية تتحكم فى ملفات التكست اللى عندك كمبرمج الخاصة بكل نسخة من البرامج اللى ابيعها يعنى قاعدة البيانات دى هسجل فيها كل البيانات الخاصة بتفعيل البرامج اللى ابيعها وهى تعرفنى بقى البرامج اللى قربت تنتهى والبرامج اللى عاوزة تتفعل وهكذا بجد شاركونا بافكاركم وانا ان شاء الله هنزل قواعد البيانات مفتوحة المصدر اغلاق وفتح اونلاين ACCDE.rar اغلاق وفتح اونلاينMDB.rar1 point
-
فورم ترحيل بيانات للشيت المطلوب عن طريق الMultiPage الفيديو1 point
-
وعليكم السلام 🙂 هذه البرامج اللي اعرفها: وهذه واحدة منهم ، مجانيه: http://www.skrol29.com/us/vtools.php وهنا شرحه بالعربي: جعفر والجميل في البرنامج ، للشباب اللي يريد يتعلم كيفية عمل هذه البرامج ، انها مفتوحة المصدر ، يعني تقدر تشوف الكود ، وتتعلمه 🙂1 point
-
حياك الله أخي محمد الجواب : ادخل على النموذج في وضع التصميم ثم اتجه لورقة الخصائص ثم بيانات ثم مصدر السجلات وادخل على الاستعلام ثم ضع هذا الكود في معيار الحقل الذي تريد إخفاءه في حالة كانت قيمته صفر أو فارغة . Not 0 Or Is Null1 point
-
السلام عليكم امسح البيانات بعد ترحيلها من صفحة الرئيسية Sub trheel() Dim Rng As Range Dim cl As Range, i As Integer Set Rng = Range("G3:G" & [G10000].End(xlUp).Row) For i = 2 To 41 For Each cl In Rng If cl <> "" Then If cl.Value = Sheets(i).Name Then cl.Offset(0, -6).Resize(1, 7).Copy Sheets(i).Range("A" & Sheets(i).[A10000].End(xlUp).Row + 1) End If End If Next Next If Rng.Rows.Count > 7 Then Rng.Offset(0, -6).Resize(, 7).ClearContents Set Rng = Nothing End Sub1 point
-
السلام عليكم حمل هذا البرنامج ادخل اسماء الخصوم والموكلين عدد 2 ثم اغلق البرنامج واعد فتحه مرة ثانية وشاهد ماذا يطلب منك البرنامج صور الشاشة وابعثها على الواتس اب على رقم 00962787787573 Lawyer2020.rar1 point
-
السلام عليكم بعد اذن استاذنا الفاضل بن علية حاجي ارفق حلا بالكود وهو من اكواد اخونا الاستاذ سليم بن حاصبيا طبقته على الملف واتمنى ان اكون قد وفقت في تطبيقه الترحيل بالكود.xls1 point
-
السلام عليكم الى حل الغالي الاستاذ سليم ولاثراء الموضوع شاهد المرفق TxtBox_Tw.xlsm1 point
-
هو فى شرح بعد شر ح استاذ صالح دلوقتى عندك الدالة اللى بتقرا الملف النصى مش باقى غير الملف النصى اكتب اللى انت عاوزة فى اى ملف من نوتباد وارفعه على اى موقع مثلا دروبوكس اكتب فى اى حاجة واستدعيه من داخل الاكسس مثلا ممكن تكتب رسالة للمستخدمين ممكن تكتب رقم النسخة للتحديث ممكن تكتب التفعيل زى استاذ صالح ما عمل وهكذا1 point
-
ربما ينفع هذا الكود Option Explicit Sub Lopping() Dim txt As Object For Each txt In Me.Controls("TextBox") If Mode(txt.Value, 4) <> 0 And txt.Value < 9 Then MsgBox "القيمه المدخله خاطئه" End If Next End Sub1 point
-
1 point
-
جرب هذا الماكرو Option Explicit Private Sub Worksheet_Change(ByVal Target As Range) With Me.UsedRange .Columns.AutoFit .Rows.AutoFit End With End Sub1 point
-
كيف نلزم المستخدم بالكتابة 1-بأحرف صغيرة فقط 2-أو احرف كبيرة فقط 3-او اختيار (كبيرة أو صغيرة) حصراً للمزيد هذا الملف Upper_Lower.xlsx1 point
-
1 point
-
السلام عليكم ورحمه الله وبركاته تحيه طيبه اخى عبداللطيف بالتوفيق اخى ومحاوله جيده لكن ضعيفه قمت بحذف تعليمه الماكرو المسؤل عن تنفيذها AUTOEXEC وتم فتحه حول الماكرو الى vba حتى لا يتم التلاعب به كما قمت تقبل تحياتى وبالتوفيق طبتم واهتديتهم1 point
-
1 point
-
بعد فصل الأنترنت أغلق البرنامج نهائيا ثم أعد تشغيله لقد قمت بتغيير العبارت جرب الآن1 point
-
1 point
-
نعم استاذ عصام الآن يعمل الكود بشكل سليم .. تحية لك على هذا المجهود الرائع بارك الله فيك1 point
-
1 point
-
1 point
-
شكر، اليك استاذي الفاضل ابو الجعافر جعفر والشكر لاستاذي الاخ محمد واستاذي ابو امنه بارك الله فيكم جميعا ملوحظه واحيانا نجهل عنها بدون قصد اتمنا من نفسي من اخوتي المشاركين عدم الغفله عنها لكي ننال اجرها وهي رد التحيه جزاكم الله خير محبكم /ابو زاهر /وضاح النجاشي1 point
-
استاذ ابو صلاح معادلة الأستاذ سليم تعمل بكل كفاءة ,فهى لا تحتاج اى تعديل -فاذا اعطت لك خطأ فمنك انت:-وذلك لأحد سببين, فهذه معادلة مصفوفة لابد من الضغط على Ctrl+Shift+Enter وليس Enter فقط كما اخبرك استاذنا سليم و الأخر اذا مازالت لا تعمل معك فعليك باستبدال الفاصلة العادية بفاصلة منقوطة ; فربما نظام الكمبيوتر لديك مختلف1 point
-
بعد اذن الاخ احمد وزيادة في اثراء الموضوع هذه المعادلة (Ctrl+Shift+Enter) =INDEX(ورقة1!$B$5:$CI$500,MATCH($C$2&$D$2,ورقة1!$B$5:$B$500&ورقة1!$C$5:$C$500,0),MATCH($D6,ورقة1!$B$4:$CI$4,0))1 point
-
السلام عليكم و رحمة الله وبركاته اسعد الله ايمكم بكل خير اشتقت لكم جميعا بارك الله فيكم اخي الكريم يتم تسمية نطاق البيانات بـ Data_001 ثم يتم استخدام الدالة =SUMPRODUCT((INDEX(Data_001;0;1)=$C$2)*(INDEX(Data_001;0;2)=$D$2);INDEX(Data_001;0;MATCH($D6;INDEX(Data_001;1;0);0))) كما في المرفق جلب البيانات بشروط افقية وراسية.rar1 point
-
تحية للمعلم سيد بدران حقيقة استفدنا من علمكم ومن قناتكم على اليوتيوب بارك الله فيكم1 point
-
السبت، 28/10/1430هـ الموافق 17/10/2009م السلام عليكم و رحمة الله وبركاته هذه فكرة برنامج اقساط جاري تنفيذها تستطيع الإختيار بين تحديد عدد الشهور - اذا سوف يتم توزيع المبلغ المتبقي على عدد الشهور تحديد قيمة القسط الشهري - اذا سوف يتم تقسيم المبلغ المتبقي على القسط الشهري = عدد الشهور 1-تم عمل قائمة منسدلة تشمل اسماء العملاء ليتم اختيار اسم العميل منها 2-اكتب في الخلايا الصفراء فقط و لا تكتب في الخلايا الحمراء 3-تم عمل التحقق من صحة للخلايا التي لايجب الكتابه فيهااذا ادخلت تاريخ هجري لن تستطيع الكتابة في خانة تاريخ ميلادي الا بعد مسح بيانات التاريخ الهجري و كذلك العكس صحيحاذا ادخلت قيمة القسط الشهري لن تستطيع الكتابة في خانة عدد الأقساط و كذلك العكس صحيح 4-تم عمل حماية للورقة بحيث يمكنك التنقل بين الخلايا المسموح بالكتابة بها ولا يمكن الوقوف على أي خلية غير مخصصة للكتابةبدء العمل على ورقة حفظ بيانات الأقساط 1_توزيع_الأقساط_ومتابعتهاQest.rar1 point
-
السلام عليكم اخوانى وجدت هذه معلومات جيدة فاحببت ان تكون ضمن هذه المكتبة لتعم الفائدة . الطريقة الصحيحة لاستخدام الشروط : ان الإستعلامات حساسة جدا لقبول اي صيغة وعند وضع الدوال في تعبير يجب التقيد بشروط معينه مثلا اذا كان الحقل رقمي Numerical ( اي انه في الجدول نوعه رقم ) فيجب ان يوضع في إستعلام بين علامتي تنصيص بهذه الطريقة "[iD]" مثل "[ID]<=" & [ID] لاحظ علامتي التنصيص فهي تخص فقط الحقل الأول وبعدها نضع حرف & لكي نسند القيمة سواء المساواه او اصغر من او اكبر من الى نفس الحقل سواء في الجدول او النموذج مثال لأي دالة من دوال المجال التجميعي DLookup("[FieldName]"; "TableName"; "[FieldName] =" & [FieldName]) لاحظ علامتي التنصيص المزدوجه " " للحقل الرقمي حيث تم وضع اول علامة تنصيص للحقل الرقمي الأول ثم علامة = ثم علامة تنصيص مزدوجه " ثم & ثم الحقل الرقمي الثاني حسنا ماذا لو كان الحقل نصي Strings ( اي ان الحقل في الجدول نوعه نص ) فيجب ان يوضع في الإستعلام بين ثلاث علامات تنصيص بهذه الطريقة "'[NAME]"' مثل "[NAME]<=' & [NAME] & ' " لاحظ كيف اختلف التعبير عن الحقل الرقمي في الكود العلوي حيث تم اضافة عدد اثنين & بعد الفاصلة العلوية الثالثة لحقل الإسم الأول حيث يجب وضع حقل الإسم الثاني بين علامتي تنصيص مفرده ' ' اما علامتي التنصيص المزدوجة " " فهي خاصة لحقل الإسم الأول مثال لأي دالة من دوال المجال التجميعي DLookup("[FieldName]"; "TableName"; "[FieldName] =' " & [FieldName] & " ' ") لاحظ في الكود ترتيب علامات التنصيص سواء المزدوجة او المفرده فأول علامة تنصيص مزدوجه لحقل الإسم الأول يجب ان يغلق بعلامة تنصيص مفرده ' بعد علامة = فهذه اول ثلاث علامات تنصيص ' " للحقل الأول ثم نضع علامة تنصيص مزدوجه " للحقل الثاني لأنه نصي ثم نضع & ثم نضع حقل الإسم الثاني ثم نضع & ثم نغلق علامة التنصيص المزدوجه " للحقل الثاني ثم نغلق علامة التنصيص المفرده ' لحقل الإسم الأول ثم نغلق كامل الجملة بعلامة تنصيص مزدوجة " وهي خاصة بحقل الإسم الأول حسنا ماذا لو كان الحقل من نوع تاريخ DATE ( يعني في الجدول نوعه تاريخ / وقت ) فيجب ان يوضع بين بين علامتي شبكة #[DATE]# مثل "[DATE]<=#" & [DATE] & #" مثال لأي دالة من دوال المجال التجميعي DLookup("[FieldName]", "TableName", "[Date]=#" & [Date] & "#") لاحظ كيف تم استخدام علامات التنصيص المزدوجه " وعلامتي الشبكه # حسنا ماذا لواردنا تجميع كل هذه المعايير حقل رقمي Numerical و حقل نصي Strings و حقل تاريخ Date في دالة واحده فيجب ان نكون حريصين جدا في وضع علامات التنصيص لكل حقل حتى لا نحصل على اخطاء مثال لأي دالة من دوال المجال التجميعي DLookup("[FieldName]", "TableName", "[FieldNumerical] = " & [FieldNumerical] & " AND [FieldString] = '" & [FieldString] & "'" & " AND [FieldDate] = #" & [FieldDate]& "#" ) اتمنى ان اكون قد القيت بعض الضوء على استخدام هذه المعايير واستخدامها المصدر للاستاذة الجليلة زهره1 point
-
السلام عليكم ورحمة الله وبركاته يوجد بالمرفق نواه لشيت لمتابعة أقساط العملاء والمطلوب هو معادله تقوم بجمع المبالغ التي تقع بين تاريخين أقوم بتحديدهم يدوياً. وقد تم إرفاق ملف به المطلوب. كما أرجو أن لا تبخلو عليا بأي إقتراحات لتعديل الشيت أو حتى تغييره بشيت أخر يؤدي نفس الغرض. وجزاكم الله خيراً. متابعة الأقساط.rar1 point
-
السلام عليكم ورحمة الله أخي الكريم، هذا حل أول باستعمال الدالة SUMPRODUCT (إن كنت قد فهمت المطلوب).... أخوك بن علية متابعة الأقساط.rar1 point