نجوم المشاركات
Popular Content
Showing content with the highest reputation on 09/12/22 in مشاركات
-
السلام عليكم ..مرفق الملف بالأكواد SEPTEMBER UPDATE TEST-o.xlsm ملحوظة : لو عايز المستخدم ليه صلاحيات التغيير ينستعمل الكود ده الفورم مرتبطه مباشرة بالخليه بمعنى ان اي تغيير اثناء عرض الفورم يتم تحديثه مباشرة Connect_With_Row (ComboBox1.ListIndex + 4) اما لو عايز له صلاحيات عرض فقط يبقى حط علامة ' اول السطر السابق وشيلها من السطر ده الفورم تعرض السطر فقط بمعنى ان اي تغيير اثناء عرض الفورم لا يتم تحديثه مباشرة يحتاج لكود اخر للتحديث 'Show_Row (ComboBox1.ListIndex + 4)3 points
-
وعليكم السلام -تفضل بهذه المعادلة سحباً لليسار ثم الى الأسفل =COUNTIFS(data!C$2:C$1000,"<>"&"",data!$A$2:$A$1000,$B4,data!$B$2:$B$1000,1) trasnport1.xlsx3 points
-
تفضل اخي Workbook ضع هدا الكود في حدث Private Sub Workbook_Open() Application.OnTime Now + TimeValue("00:00:15"), "SAVE_MH" Call SAVE_MH End Sub Module وهدا في Sub Save_MH() Application.DisplayAlerts = False Application.OnTime Now + TimeValue("00:00:15"), "SAVE_MH" ActiveWorkbook.SaveCopyAs Filename:="c:\Backups\" & ActiveWorkbook.Name ActiveWorkbook.Save Application.DisplayAlerts = True End Sub Sub Save2_MH() Application.DisplayAlerts = False ThisWorkbook.Save Application.DisplayAlerts = True Application.OnTime Now + TimeValue("00:00:15"), "Save2_MH" End Sub قد تمت اضافة الكود للملف للتجربة في حالة كانت عندك رغبة بالاحتفاظ بجميع النسخ رغم انني ارى انك في غنى عنها يمكنك جعل الكود بهده الطريقة و تجعلها كل 10 دقائق مثلا Workbook ضع هدا الكود في حدث Private Sub Workbook_Open() Application.OnTime Now + TimeValue("00:10:00"), "save_MH3" 'Application.OnTime Now + TimeValue("00:00:15"), "save_MH3" Call save_MH3 End Sub ---------Module وهدا في---------- Sub save_MH3() Dim MyDate MyDate = Date Dim MyTime MyTime = Time Dim TestStr As String 'تاريخ اليوم TestStr = Format(MyTime, "hh-mm-ss") Dim Test1Str As String 'ساعة الحفظ Test1Str = Format(MyDate, "DD-MM-YYYY") Application.DisplayAlerts = False 'Application.OnTime Now + TimeValue("00:00:15"), "save_MH3" Application.OnTime Now + TimeValue("00:10:00"), "save_MH3" 'تحديد مسار حفظ الملف ActiveWorkbook.SaveCopyAs Filename:="c:\Backups\" & Test1Str & ". " & TestStr & " " & ActiveWorkbook.Name ActiveWorkbook.Save Application.DisplayAlerts = True End Sub Sub Save2_MH() Application.DisplayAlerts = False ThisWorkbook.Save Application.DisplayAlerts = True Application.OnTime Now + TimeValue("00:00:15"), "Save2_MH" End Sub تجريبى-حفظ نسخة من الملف كل 10 دقائق.xlsm تجريبي.xlsm2 points
-
2 points
-
يمكنك استخدام هذه المعادلة لطلبك ..معادلة مصفوفة (Ctrl+Shift+Enter) =IFERROR(INDEX(Table2[التاريخ],SMALL(IF(Table2[اسم الموقع/ المخزن]=$C$3,ROW($A$4:$A$11)-ROW($A$4)+1),ROWS(A$1:A1))),"") كشف حساب مشروع1.xlsx2 points
-
حاولت بشتى الطرق اني اجد فرق ولو بيوم واحد والى عام 2079 ولم اجد شغل كبار2 points
-
كل الشكر لك أخي @عمر ضاحى 🙂 وأستغل هذه المناسبة الجميلة لعرض طريقة جديدة تعلمتها لكتابة الأكواد مع قيم True & False .. جرب كتابة الأكواد بهذه الطريقة : Private Sub Command31_Click() Me.ApprovedOK = Not ApprovedOK Me.imgApproved.Visible = ApprovedOK End Sub Private Sub Form_AfterUpdate() Me.imgApproved.Visible = ApprovedOK End Sub Private Sub Form_Current() Me.imgApproved.Visible = ApprovedOK End Sub والنتيجة نفسها طبعا .. مع زيادة إمكانية التراجع عن الموافقة 🙂2 points
-
بارك الله فيك أخي الفاضل ..فهمت المشكله الحمد الله أن الكود الحفظ كده شغال ف النسخه الاحتياطيه وعشان تشغلها يبقه حيحفظها مرتين ف نفس المكان وبنفس الاسم وده مش حينفع وهو سبب الخطأ لازم تكون ف مسار تاني ..الملف والكود اشتغل تمام..الف شكر على اهتمامك ومتابعتك.. لك ودي واحترامي لشخصك الكريم1 point
-
أخي الفاضل هذه مسألة طبيعية .هذا بسبب أنك تقوم بفتح الملف في نفس المسار الذي يتم حفظه فيه جرب نسخه إلى مكان آخر قبل فتحه وشاهد النتيجة او تغيير صيغة حفظ الملف من xlsM إلى xlsx1 point
-
1 point
-
اخي الفاضل المسار غير صحيح انشا مجلد داخل بارتشين E Backups باسم ... وقم باستبدال المسار هكدا ActiveWorkbook.SaveCopyAs Filename:="e:\Backups\" & ActiveWorkbook.Name1 point
-
قم بإلغاء حدث workbook حتى تقوم بتعديل مسار حفظ الملف على جهازك. ثم أعد تفعيله من جديد الملف يشتغل عندي بدون مشاكل!!!!!1 point
-
لا يمكن أن نصل إلى تحويل للتاريخ بمعادلة من سطر واحد وباستخدام المتوسطات. ما عملته أنا فقط للحصول على السنة الهجرية ليس إلا ، فلا يذهب تعبكم سدى ، فالتقاويم لها قوانين وتفاصيل كثيرة مثل مدد الشهور ونطام الدورات والكبس. هذه دالة فحصي للمعادلة لمن يريد أن يكثر من الاختبارات واللعب على قيمة الضبط: Sub HijriYearTest() Dim Hyy As Long Dim Days As Long Dim Greg As Long Dim Hijri1 As Long Dim Hijri2 As Double For Hyy = 1 To 9666 Greg = Hijri2Greg(Hyy, 1, 1) For Days = Greg - 1 To Greg Hijri1 = Left(Greg2Hijri(CDate(Days)), 4) 'Hijri2 = (Days + 466580.47) / 354.366666666667 + 1 Hijri2 = (Days + 466581 - 0.53) / (10631 / 30) + 1 If Hijri1 <> Fix(Hijri2) Then Debug.Print CDate(Days), Hijri1, Hijri2 End If Next Days Next Hyy Debug.Print "Done" End Sub1 point
-
1 point
-
1 point
-
شكرا استاذ Ali Mohammed Ali .. سلمت يداك المعادلة 100% بعد التجربة على البيانات الحقيقية 🙂1 point
-
إضافة متميزة ورائعة كتميزكم المعتاد.. وبهذه الطريقة نعالج مشكلة إضافة سجل جديد،، تمت تجربة الكودين ولم تكن رائعة... بل بل أروووووع أرووووع من الرائعة سلمكم الله وأغناكم وزادكم علما وهدى وتقى وصحة وعافية،،1 point
-
شكرا جزيلا اخوي ابو احمد 🙂 شرح وافي وواضح 🙂 جعفر1 point
-
الحمدلله اني افهم شوي في الاكسس 🙂 ارسل له هذه الصورة من البرنامج ، لما اردت فتح وحدة نمطية ، والرسالة بكل وضوح تقول: لا يمكن استيراد، تصدير، عمل، تغيير، او اعدادة تسمية اي نموذج، تقرير او وحدة نمطية في البرنامج الذي بصيغة ACCDE, MDE او ADE . ولما تفك الضغط لملفك المرفق ، ستلاحظ ان البرنامج بصيغة ACCDE . جعفر1 point
-
(Date + 466581 - 0.53) / (10631 / 30) + 1 Date يمثل التاريخ الميلادي للأكسس والإكسل و الـ vba 466581 هو الرقم التسلسلي لبداية التقويم الميلادي في 18/07/0622 زائدا واحد حتى تكون النتيجة المطلوبة تساوي يوم واحد. طبعا الرقم التسلسلي يساوي 466580- نصفره ونضيف عليه يوم واحد وهو قيمة بداية التقويم الهجري (أول يوم). (10631 / 30) هو طول السنة الهجرية بالأيام وناتجها 354.367 ولكني فضلت استخدم عملية التقسيم حتى أحصل على كسر مفتوح لمزيد من الدقة. 0.53 هو لعملية ضبط adjustment حصلت عليه بعد عدة تجارب/اختبارات وتظهر حاجته غالبا في آخر يوم في السنة وأحيانا في أول يوم أيضا. 1 هو للسنة الناقصة (غير المكتملة)1 point
-
السلام عليكم 🙂 لماذا عملت التقرير بالكود ؟ احد المبرمجين كان يعمل بلغات البرمجة الاخرى ، والتي كان يجب عليه عمل اي شيء بالكود ، فكان يعمل نماذج الاكسس بالكود ، بينما الاكسس يعمل لك الكائنات بأسبط ما يكون ، فرجاء اترك الكود واعمل التقرير بطريقة الاكسس ، ونحن نساعدك 🙂 انت وضعت التقارير الفرعية في القسم الغلط ، يجب ان تكون في قسم "Detail" كما في الصورة : . والنتيجة: . في المرفق ، افتح التقرير rpt مباشرة 🙂 جعفر 1524.SubReports.accdb.zip1 point
-
@2saad لدي فضول اذا لم يكن لديك مانع ارسل لي رابط الموقع وما هو الذي تريد جلبه ؟ اذا استطعت ان اسحب بياناته سافيدك بذلك. تحياتي1 point
-
ليس كل المواقع يمكن جلب البيانات منها . بعض اصحاب المواقع يضع حظر لذلك ، لذا ليس كل الاكواد يمكن سحب البيانات من الموقع . كما ان هناك خطوات لتنزيل برنامج السلينيوم وتنزيل تحديث اصدار جوجل كروم لديك وايقاف تحديثه حتى لا يتغير التحديث وتظطر في كل مرة تنزيل تحديث جديد . خطوات يجب ان تعرفها قبل البد بسحب اي بيانات . يمكنك البخث في الانترنت لاتقان هذه الخطوات اولا . تحياتي1 point
-
فقط يمكنك استخدام هذه المعادلة أو بعمل تنسيق للخلايا بأن يكون تنسيق الخلية يوم وليس تاريخ B2dddd =TEXT(B3,"b2dddd") هاجر البصمة1.xlsx1 point
-
وعليكم السلام ورحمة الله وبركاته ...... راجع مصدر تصدير البيانات الى الاكسل وتأكد من ان بيانات النموذج الفرعي ظاهرة فيها ..... او ارفق مثال مصغر لماتريد فعله ز1 point
-
السنة الهجرية = (السنة الميلادية-622)/0.97 +1 622 هي السنة الميلادية لبداية التقويم الهجري 0.97 هي نسبة طول السنة الهجرية إلى طول السنة الميلادية 354.3667 / 365.2425 = 0.970223071 1 هو للزيادة سنة لما يسمى بالسنة الناقصة/غير المكتملة1 point
-
السلام عليكم قبل البدء انت محتاج تغير ال listbox اللى قدام الكود الى combobox وليكن combobox2 اولا انت محتاج تملا الكمبو بوكس مع بداية عمل الفورم Private Sub UserForm_Initialize() Dim LR As Long With Sheets("update 2022 September") LR = .Range("A" & .Rows.Count).End(xlUp).Row Me.ComboBox2.RowSource = "=$A$4:$A$" & LR Me.ComboBox1.RowSource = "=$C$4:$C$" & LR End With End Sub كده انت ملأت الاتنين الكمبوبوكس يبقى انت محتاج كود عند تغيير الكمبوبوكس Private Sub ComboBox2_Change() ComboBox1.ListIndex = ComboBox2.ListIndex If ComboBox2.ListIndex <> -1 Then TextBox3.ControlSource = "=$H$" & ComboBox2.ListIndex + 4 Else TextBox3.ControlSource = "" TextBox3.Text = "" End If End Sub وبكده التكست بوكس اصبحت مرتبطه بالخليه يعنى اي تغيير فيها ها يتحدث اتوماتيتك فى الخليه * الجمله الشرطية للتأكد انك كتبت كود موجود داخل الليست , , والا يلغى ارتباط التكست بوكس بالخلية ثم يمسح محتوى التكست بوكس * ال 4 دي بداية اول سطر بيانات فى الجدول1 point
-
تفضل التعديل أخي m.r 🙂 Sub CopyFile() Dim sPathDeskTop As String sPathDeskTop = Environ("USERPROFILE") & "\Desktop" & "\b\" ' هنا اسم المجلد الذي سيتم انشاؤه في سطح المكتب Dim CopyFrom As String, CopyTo As String CopyFrom = Me.SourceFilePath ' هنا تضع اسم الحقل الذي به رابط الملف المراد نسخه CopyTo = sPathDeskTop & Me.NewFileName & ".pdf" ' هنا تضع اسم الحقل الذي به اسم الملف الجديد وامتداده If Len(Dir(sPathDeskTop, vbDirectory)) = 0 Then MkDir (sPathDeskTop) If Len(Dir(CopyTo, vbDirectory)) = 0 Then FileCopy CopyFrom, CopyTo Else MsgBox "هذا الملف موجود مسبقا", vbOKOnly Exit Sub End If End Sub1 point
-
العفو أخي العزيز 🙂 معلمومة : لكي تتم عملية النسخ الكود يحتاج إلى اسم الملف كاملا مع الامتداد هكذا مثلا (fileName.pdf) سؤال : في حقل اسم الملف هل سيتم كتابة الاسم كاملا مع الامتداد (pdf.) أم الاسم لوحده فقط (fileName) ؟ سؤال آخر :وهل جميع الملفات pdf أم ستكون مختلفة ؟1 point
-
وعليكم السلام 🙂 كود اخوي موسى ، ولكن بطريقتي 🙂 Sub CopyFile() Dim sPathDeskTop As String sPathDeskTop = Environ("USERPROFILE") & "\Desktop" & "\b\" ' هنا اسم المجلد الذي سيتم انشاؤه في سطح المكتب Dim CopyFrom As String, CopyTo As String CopyFrom = Me.a ' هذا اسم الحقل الذي به رابط الملف المراد نسخه CopyTo = sPathDeskTop & Dir(CopyFrom) If Len(Dir(sPathDeskTop, vbDirectory)) = 0 Then MkDir (sPathDeskTop) If Len(Dir(CopyTo, vbDirectory)) = 0 Then FileCopy CopyFrom, CopyTo Else MsgBox "هذا الملف موجود مسبقا على سطح المكتب", vbOKOnly Exit Sub End If End Sub جعفر1 point
-
استبدل الدالة acExportDelim الموجودة داخل الكود بهذه acExportMerge الاخيرة تزيل الفواصل1 point
-
تفضل ضع هذا الكود في حدث الزر DoCmd.TransferText acExportDelim, "", "Tbl1", strPath & "\Tbl1.txt", True, "" Tbl1 هو اسم الجدول المراد تصديره strPath هو الامتداد او مكان حفظ الجدول Tble1.txt هو اسم النسخة المحفوظة1 point