نجوم المشاركات
Popular Content
Showing content with the highest reputation on 01/30/20 in مشاركات
-
السلام عليكم اخي العزيز @عماد محمد عبد العزيز اسهل طريقة هي عمل ذلك عن طريق التنسيق الشرطي ضع الكود التالي في التعبير DCount("[M P R]";"[ben]";"[M P R] = [Person in charge] ")>=2 تفضل الملف بعد التعديل تحياتي PRODUCT.rar4 points
-
السلام عليكم إذا كنت تقصد دمج المراسلات إكسيل - وورد، بالنسبة للتاريخ تضيف إلى كود الحقل الخاص بالتاريخ (في ملف الوورد المعني بدمج المراسلات) العبارة \@ "dd MM yyyy"...3 points
-
جرب هذا السبب في Module1 من بعد Dim KH_Test As Boolean New_folder.rar2 points
-
2 points
-
اولاً يجب ازالة دمج الحلايا (علة العلل لكل معادلة او كود) من الصفحة P الأعمدة 1و 2 و 3 ثانياً أنت لم تذكر للاكسل عن اية سنة تريد جمع ايام اشهر جانفي لذلك قام البرنامج بجمع الايام عن كل اشهر جانفي لكل السنوات تم معالجة الامر REpport.rar2 points
-
2 points
-
طريقة عمل تراجع عن الامر المنفذ عن طريق كود مثل ( ctrl+z) هذا الكود كتبه احد اباطرة VBA عام 2005 Mr.Jan Karel Pieterse لنشاهد المرفقات Undo_Handler.xls2 points
-
2 points
-
2 points
-
بارك الله فيك وزادك الله انت وصاحب الموضوع كل الخير وجعله الله فى ميزان حسناتكم2 points
-
وعليكم السلام -وبما انك لم تقم برفع ملف موضح عليه المطلوب بكل دقة فيتغير سهم القائمة المنسدلة من اليسار الى اليمين ... عندما تقوم بتغيير اتجاة الكتابة بالصفحة من اليسار الى اليمين اى عكس الموضح بالصورة التى قمت انت برفعها2 points
-
السلام عليكم أستاذ جعفر موضوع في قمة الروعة ملاحظة صغيرة في الكود الموضوع بالأعلى : هناك بعض المتغيرات غير مصرح بها مع أنها موجودة في المرفق لكن من يريد تطبيق الكود بشكل مباشر من المشاركة سوف يظهر له خطأ. Public Const msoBarPopup = 5 Public Const msoControlButton = 1 Public Const msoControlEdit = 2 Public Const msoControlComboBox = 4 Public Const msoButtonUp = 0 Public Const msoButtonDown = -1 أخيرا لي الشرف العظيم أن أقوم بتثبيت هذا الموضوع2 points
-
2 points
-
السلام عليكم 🙂 هناك الكثير من الميزات/الاوامر التي يعطينا برنامج الاكسس ، والتي يمكن ان نعمل لها بديل ، ولكن يكون هناك فرق في سرعة تنفيذ كودنا مقارنة مع الكود الاصل من الاكسس !! مثل القائمة المختصرة التي تظهر لنا بالنقر على زر الفأرة الايمن ، والتي بها يمكننا ان نستغني عن الكثير الاوامر ، مثل الفرز والتصفية بأنواعه ، ولكن وللأسف الشديد ، فأنا ارى ان 99.99% من البرامج ، يتم حذف هذه القائمة وعدم تفعيلها ، والسبب ان المستخدم يستطيع ان يدخل في تصميم النموذج من خلال هذه الاوامر(في الدائرة الحمراء) : و . ويضطر المبرمج ان يعوض بقية الاوامر في القائمة ، بمجموعة من الازرار ، او بطرق مختلفة !! ----------------------------------------------------------------------------------------------- الاكسس يسمح لنا ان نعمل قوائم مختصرة Shortcut Menu والتابعة لمجموعة CommandBars ، حسب احتياجنا ، ونختار ما نضعه فيها 🙂 هناك 3 انواع من هذه القوائم : الثابته ، والمؤقته ، والمؤقته التي تحتاج الى كود. الثابته: وهي التي عندما نعملها ، تصبح مستقله عن الكود ، وتُحفظ وتبقى في قاعدة البيانات بعد إغلاقها ، ويمكننا ان نستوردها في قاعدة بيانات اخرى عندما نستورد احد/جميع كائنات قاعدة البيانات الآخرى ، بإستخدام : . ونختارها في النموذج : . او التقرير : . هذا مثال لعمل الكود الاساس لعمل قائمة قطع/نسخ/لصق : Option Compare Database Option Explicit Dim cmb As Object Dim cmbCtrl As Object Dim cmbName As String ' ' ' to use: ' Dim cbr As Commandbar ' Dim cbrButton as CommandbarControl ' ' we have to select in the References: ' Microsoft Office xx.x Object Library ' Public Function SCM_Copy(Optional DeleteMe As Boolean = False) On Error Resume Next 'If menu with same name exists delete cmbName = "cmb_Copy" CommandBars(cmbName).Delete If DeleteMe = True Then Exit Function If Err.Number <> 0 Then Err.Clear Set cmb = CommandBars.Add(cmbName, msoBarPopup, False, False) With cmb .Controls.Add msoControlButton, 21, , , False ' Cut .Controls.Add msoControlButton, 19, , , False ' Copy .Controls.Add msoControlButton, 22, , , False ' Paste End With Set cmb = Nothing End Function . وشرح الكود : 1. اسم القائمة المختصرة ، والتي سوف نختارها في النموذج او التقرير ، 2. هذه المجموعة الاساس منبثقة Popup ، 3. بينما هذه المجموعات عبارة عن ازرار Buttons ، وقد تكون قائمة منسدلة Combobox ، او نص Edit نُدخل فيه قيمة معينة للتصفية مثلا ، 4. هل هذه القائمة مؤقته ؟ False معناها ثابته وتُحفظ في قاعدة البيانات ، بينما True معناها انها مؤقته وتعمل لما ننادي الوحدة النمطية/الكود ، 5. هذه ارقام كل امر ، وملف الاكسل المرفق من مايكروسوفت فيه جدول يضم جميع ارقام الاوامر للاكسس 2010 () ، 6. اذا اردنا ان نحذف هذه القائمة ، فننادي الوحدة النمطية بضم True في امر المناداة المؤقته: ونستعمل True في مكان الرقم 4 اعلاه. وهي التي عندما نعملها ، لا تصبح مستقله عن الكود ، ولا تبقى في قاعدة البيانات بعد إغلاقها ، ولا يمكننا ان نستوردها في قاعدة بيانات اخرى عندما نستورد احد/جميع كائنات قاعدة البيانات الآخرى (كما هو الحال مع القائمة الثابته) ، ويجب ان نستخدم "حدث فتح" النموذج/التقرير لعملها واستخدامها في النموذج/التقرير ، و "حدث اغلاق" النموذج/التقرير لحذفها ، طيب ، خلونا نعمل هذه القائمة : Public Function SCM_Copy_Sort(Optional DeleteMe As Boolean = False) On Error Resume Next 'If menu with same name exists delete cmbName = "cmb_Copy_Sort" CommandBars(cmbName).Delete If Err.Number <> 0 Then Err.Clear Set cmb = CommandBars.Add(cmbName, msoBarPopup, False, False) With cmb Set cmbCtrl = .Controls.Add(msoControlButton, 21, , , False) ' Cut cmbCtrl.Caption = "Cut..." cmbCtrl.FaceId = 21 Set cmbCtrl = .Controls.Add(msoControlButton, 19, , , False) ' Copy cmbCtrl.Caption = "Copy..." cmbCtrl.FaceId = 19 Set cmbCtrl = .Controls.Add(msoControlButton, 22, , , False) ' Paste cmbCtrl.Caption = "Paste..." cmbCtrl.FaceId = 22 Set cmbCtrl = .Controls.Add(msoControlButton, 210, , , False) 'Sort Ascending cmbCtrl.BeginGroup = True cmbCtrl.Caption = "فرز تصاعدي..." cmbCtrl.FaceId = 210 Set cmbCtrl = .Controls.Add(msoControlButton, 211, , , False) 'Sort Decending cmbCtrl.Caption = "فرز تنازلي..." cmbCtrl.FaceId = 211 End With Set cmb = Nothing End Function . وشرح الكود: احنا توسعنا في الكود الاساسي ، واضفنا له : 1. تسمية اختيارية غير الافتراضية ، لاحظ في الصورة اعلاه اني استعملت الانجليزي والعربي ، 3. وهو لعمل خط فاصل في الصورة بين مجموعة قطع/نسخ/لصق ومجموعة فرز تصاعدي/تنازلي ، . 2. ممكن ان نبدل الصورة الافتراضية التي تيجي مع الرقم ، بتبديل هذا الرقم (لاحظ صورة الاسهم للتصاعدي/التنازلي) : . ومرفق ارقام جميع الصور الموجودة في الاكسس : . . . . . . . . . . . في قاعدة البيانات المرفقة myRight_Click.mdb ، بالاضافة الى القوائم الثابته اعلاه ، تم اضافة هذه القائمة ايضا : . والتقرير يحتوي على القائمة المؤقته التالية : . - ملف الاكسل myList.xlsx ، اخترت فيه اهم القوائم في وجهة نظري ، - ملف الاكسل AccessControls_2010.xlsx ، من مايكروسوفت ، يحتوي على جميع الاوامر 🙂 جعفر المصادر: http://dev-soln.com/access-shortcut-right-click-tool/ https://www.experts-exchange.com/articles/12904/Understanding-and-using-CommandBars-Part-II-Creating-your-own.html https://filedb.experts-exchange.com/incoming/2014/02_w06/833359/CommandBars-II.mdb https://www.experts-exchange.com/articles/18341/CommandBars-Part-III-Using-Built-in-Shortcut-Menus.html http://www.skrol29.com/us/vtools.php AccessControls_2010.xlsx myList.xlsx myRight_Click.zip1 point
-
جرب هذا الكود لتثبيت Text Box Private Sub TextBox1_Change() lr = Range("d" & Rows.Count).End(xlUp).Row ActiveSheet.Range("$A$3:$S$" & lr) _ .AutoFilter Field:=4, Criteria1:="=" & ActiveSheet.TextBox1.Text & "*" With ActiveSheet.TextBox1 .Top = Cells(2, 2).Top: .Left = Cells(1, 1).Left + 150 .Width = 150: .Height = 30 End With End Sub '+++++++++++++++++++++++++ Private Sub Worksheet_Activate() With ActiveSheet.TextBox1 .Top = Cells(2, 2).Top: .Left = Cells(1, 1).Left + 150 .Width = 150: .Height = 30 End With End Sub الملف مرفق MY_Saerch.xlsm1 point
-
جرب المرفق كود بسيط DoCmd.ApplyFilter , "[city]='" & [tx2] & "'" بحث.accdb1 point
-
1 point
-
الاخوة الكرام ارجو مساعدتي في حل مشكلة عند النقر على زر ارتباط شعبي للدخول الى موقع معين في google تضهر هذه الرسالة لا يمكن تنزيل المعلومات المطلوبة1 point
-
عليك السلام ورحمة الله وبركاته كان يجب عليك استخدام خاصية البحث في المنتدى شاهد الرابط1 point
-
اتفضل اخى محاوله على قد حالى محاوله على قد ادخل السن من الى ثم اختار الرتبه ان شاء الله يكون ما طلبت تقبل تحياتى وتمنياتى لك وللجميع بالتوفيق تصفية بالعمر.rar1 point
-
اخي شكرا لك على البرنامج و لكن انا اريد حساب العمر بتحديد التاريخ الذي اريده و اريد بعد عملية التصيفة بالعمر اعمل تصفية بالرتبة لنفس الاشخاص الذين هم بهذا العمر ارجو ان يكون سؤالي واضح و بارك الله فيك .1 point
-
السلام عليكم في هذا الرابط هناك إحدى الطرق الممكنة لعمل ما تريد، عند وصولي إلى حاسب متصل بالإنترنت - إن شاء الله تعالى-سأضع طريقة أخرى.1 point
-
عليك السلام ورحمة الله وبركاته بعد إذن الأستاذ khalf كان لزامًا عليك استخدام خاصية البحث في المنتدى1 point
-
تفضبل اخي الكريم Private Sub Command41_Click() ' تفريغ مصدر النموذج الفرعي SourceObject Me.frm.SourceObject = "" ' اعلان عن متغيير عددي Dim FormCount As Integer Dim i As Integer 'سيكون المتغيير FormCount = عدد النماذج المفتوحة FormCount = Forms.Count ' عمل خلقة تكريرية For i = FormCount - 1 To 0 Step -1 ' استثناء نماذج محددة من الاغلاق وذلك بالشرط التالي ' اذا كان النموذح المفتوح غير النموذج frmHome login ونموذج If Forms(i).Name <> "frmHome" And Forms(i).Name <> "login" Then ' تنفيذ امر الاغلاق DoCmd.Close acForm, Forms(i).Name ' انهاء الشرط End If ' تشغيل الحلقة التكرارية Next i End Sub والله اعلم تحياتي1 point
-
وعليكم السلام 🙂 اضف هذا المتغير الى القائمة: Public Const msoControlPopup = 10 جعفر1 point
-
https://youtu.be/p1wFM0d-Ao4 رابط شرح الدرس الثانى من تعليم الاكسيل وفى المرفقات يوجد ملف الشرح الدرس 2 شرح الدالة IF.rar1 point
-
اعتقد من غير المنصف ان تشتري برنامج بلا تجربة , لانه من الصعب استرداد المال ان كان البرنامج لا يلبي متطلبات العمل او يتضمن خلل فني, عموما شكرا لك استاذ1 point
-
السلام عليكم ورحمة الله وبركاته متابع لك .. لان لدي نفس المشكلة ملف معمول على 2003 وفيها استعلامات مهمة ولااعرف كيف اتعامل معها واريد انا استخدم اوفيس 2013 ولكن لاتعمل الاستعلامات علما بأنه يعمل على اصدار اوفيس 20101 point
-
السلام عليكم بعد اذن الأساتذة ,يمكنك تجربة هذا استاذى الكريم Uploading to Google drive using VBA?1 point
-
وعليكم السلام-تم عمل المطلوب فى كشف الحساب بمعادلات المصفوفة تكاليف محل1.xlsx1 point
-
كان عليك من البداية استخدام خاصية البحث بالمنتدى فقد تناولت هذه الجزئية فى العديد من المشاركات ومنها : ترحيل من صفحة الى عدة صفحات بإسم الصفحة1 point
-
تفضل Sub exit_end() For Each w In Application.Workbooks w.Save Next w Application.Quit End Sub وهذا كود أخر ايضا يلبى طلبك Sub testSave() Application.DisplayAlerts = False ThisWorkbook.Save Application.DisplayAlerts = True Application.Quit End Sub1 point
-
تفضل هذا هو الكود Sub clear() kk = MsgBox("هل تريد مسح البيانات ؟", vbYesNo) If kk = vbYes Then Range("b11:C300").ClearContents Range("J11:k300").ClearContents End If End Sub برنامج التنسيق تعديل14.xlsm1 point
-
تمت معالجة الامر Option Explicit Sub MY_Data_New() Application.ScreenUpdating = False 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")) SH_from.Cells(3, 1).Resize(MY_max, 6).Copy With T.Cells(ro, 1) .PasteSpecial (xlPasteValues) .PasteSpecial (xlPasteFormats) End With ro = ro + MY_max End If Next SH_from With T.Range("A3").Resize(ro - 4, 6) .Sort key1:=Range("b3"), Header:=1 End With Application.ScreenUpdating = True arraNge_all End Sub '+++++++++++++++++++++++++++++++++++ Sub arraNge_all() Application.ScreenUpdating = False Dim nro% Dim MM% nro = Cells(Rows.Count, 1).End(3).Row Dim color_rg As Range For MM = 4 To nro If Range("B" & MM).Interior.ColorIndex = 2 Or _ Range("B" & MM).Interior.ColorIndex = -4142 Then GoTo Next_MM If color_rg Is Nothing Then Set color_rg = Range("B" & MM).Resize(, 5) Else Set color_rg = Union(color_rg, Range("B" & MM).Resize(, 5)) End If Next_MM: Next If color_rg Is Nothing Then GoTo Contenu color_rg.Copy Range("B" & nro + 1) color_rg.EntireRow.Delete Contenu: Range("B4", Range("B3").End(4)).Offset(, -1).Formula = _ "=IF(B4="""","""",MAX($A$3:A3)+1)" With Range("A3").CurrentRegion .Value = .Value .Borders.LineStyle = 1 End With Range("A4").Select Set color_rg = Nothing create_borders Application.ScreenUpdating = True End Sub '+++++++++++++++++++++++++++++++++++ Sub create_borders() Dim My_sh As Worksheet, r For Each My_sh In Sheets If My_sh.Name <> "Total" Then r = My_sh.Cells(Rows.Count, 2).End(3).Row My_sh.Cells.Borders.LineStyle = xlNone My_sh.Range("a2").Resize(r - 1, 6).Borders.LineStyle = 1 End If Next End Sub الملف الأخير Laste_flie.xlsm1 point
-
أ.AhmedEmam جرب المرفق عسى أن يكون المطلوب بالتوفيق Increase TextBox.accdb1 point
-
1 point
-
أ.Khalf جرب المرفق وأفدنى بالنتيجة بالتوفيق معايير متعددة لاستعلام.accdb1 point
-
1 point
-
تمت الإجابة فى المشاركة الأخرى ورجاءا لا تقوم برفع مشاركتين لنفس الطلب جزاك الله كل خير1 point
-
اهلا بك اخ كريم فى المنتدى لو ممكن رفع ملف للعمل عليه حتى تتمكن الأساتذة من المساعدة بارك الله فيك1 point
-
1 point
-
1 point
-
اهلا بك اخ كريم فى المنتدى كان عليك القيام برفع ملف لكنى قمت بعمل هذا الملف لك للترتيب العشوائى ,ورقة بالكود وورقة بالمعادلة تفضل ترتيب عشوائى للأرقام.xlsm1 point
-
تفضل اخى الكريم هذه معادلة اخرى معرفة Payout استخراج ناتج معادلة مكونة من عدة شرائح.xlsm1 point
-
بارك الله فيك استاذ طارق ,ولإثراء الموضوع هذه دالة معرفة My_Customesion تفضل My_Customesion.xlsm1 point
-
اهلا بك فى المنتدى الكريم بارك الله فيك وجزاك الله كل خير1 point
-
اهلا بك اخ كريم فى المنتدى تفضل هذا الفيديو سيكون فيه الإفادة ان شاء الله https://www.youtube.com/watch?v=aOf9rMVejGI وهذا الفيديو ايضا به ملف البيانات وملف البحث بارك الله فيك https://www.youtube.com/watch?v=Fh6vEmFAXOk1 point
-
ولك ايضا هذا https://ar.soringpcrepair.com/how-print-on-single-sheet-excel/1 point
-
وهناك ايضا موضوع اخر فى المنتدى لطباعة عمود طويل فى صفحة واحدة وذلك عن كريق تقسيمه الى اعمدة صغيرة تفضل https://www.officena.net/ib/topic/85873-كيفية-طباعة-ورقتين-فى-ورقة-واحدة/?tab=comments#comment-544405 ويمكنك ايضا متابعة هذا ,اصبح لديك عدة اختيارات كما تشاء https://academy.hsoub.com/apps/productivity/office/microsoft-excel/تخصيص-خيارات-طباعة-أوراق-العمل-في-microsoft-excel-r71/1 point
-
بفرض ان لدينا نموذج به مربع نص اسمه NewDefult و زر اسمه ChangeDefult ونريد عند الضغط على زر ChangeDefult أن يقوم بتغيير القيمة الافتراضية لحقل Price الموجود فى جدول Products وجعل القيمة الفتراضية مساوية للقيمة الموحودة فى مربع النص NewDefult نفوم بكتابة هذا الكود فى حدث Click للزر ChangeDefult Private Sub ChangeDefult_Click() Dim TAbleName As String Dim FieldName As String TAbleName = "Products" FieldName = "Price" CurrentDb.TableDefs(TAbleName).Fields(FieldName).DefaultValue = Me.NewDefult End Sub1 point