نجوم المشاركات
Popular Content
Showing content with the highest reputation since 01/22/26 in مشاركات
-
وعليكم السلام ورحمة الله وبركاته أهلا بك أخي الحبيب الأن أصبحت الأمور ميسرة بالذكاء الأصطناعي كنا دائما في هذا المنتدى نطلق شعار لا تعطني سمكة ولكن علمني كيف أصطاد وبعد انتشار الذكاء الاصطناعي تحولت الأمور إلى أعطني سمكة وخلصني (أنا مشغول) لو تحب أن نعطيك سمكة أرفق ملفك هنا واشرح مطلوبك تقبل تحياتي3 points
-
اعتقد العمل ادناه ( نموذجي / مرن ) هذا ما امكنني الوصول اليه Private Sub SetRating(v As Integer) If Me.MyRating = v Then Me.MyRating = 0 Else Me.MyRating = v End If Me.Dirty = False End Sub Private Sub btnStar1_Click() SetRating 1 End Sub Private Sub btnStar2_Click() SetRating 2 End Sub Private Sub btnStar3_Click() SetRating 3 End Sub Private Sub btnStar4_Click() SetRating 4 End Sub Private Sub btnStar5_Click() SetRating 5 End Sub لتقييم النجوم2.rar2 points
-
استخدم هذا <><><><><><><> Private Sub btnStar1_Click() If Me.MyRating = 1 Then Me.MyRating = 0 Else Me.MyRating = 1 End If Me.Dirty = False End Sub Private Sub btnStar2_Click() If Me.MyRating = 2 Then Me.MyRating = 1 Else Me.MyRating = 2 End If Me.Dirty = False End Sub Private Sub btnStar3_Click() If Me.MyRating = 3 Then Me.MyRating = 2 Else Me.MyRating = 3 End If Me.Dirty = False End Sub Private Sub btnStar4_Click() If Me.MyRating = 4 Then Me.MyRating = 3 Else Me.MyRating = 4 End If Me.Dirty = False End Sub Private Sub btnStar5_Click() If Me.MyRating = 5 Then Me.MyRating = 4 Else Me.MyRating = 5 End If Me.Dirty = False End Sub2 points
-
2 points
-
2 points
-
راودتني هذه الفكرة فعلاً ، ولكن اتضح لي انها تقوم بعمل اختصار من المتصفح فقط وليس تطبيق مثبت فعلاً مع العلم انني على وشك ان اقوم بتنصيب ويندوز سيرفر 2022 على جهازي للتجربة الشاملة والحقيقية وليست كأفكار مبنية على معلومات قديمة .2 points
-
2 points
-
تحفيزاً .. سأقوم بطرح فكرتي التي تمت من خلال مجموعة التحديات التي تقام كل فترة بين أعضاء مجموعة "مجتمع آكسيس جروب" على الواتس أب .. التحدي 10 _ التقييم 5 نجوم.zip2 points
-
العفو أخي الكريم .. يسعدنا أن تستفيد من المعلومة بشكل أكبر من الحلول الجاهزة التي ستتعرض لها مستقبلاً , جميع الجهود مشكورة لمن يحاول المساعدة . ولكن بنظري أن تصحيح المسار أفضل من السير في تعرج2 points
-
بحسب الصورة والذي فهمته منها أنه يجب أن يكون عندك 4 قواطر 1 بترول 2 بترول 1 ديزل 2 ديزل ويجب أن يكون القراءة الحالية لأي يوم تساوي السابقة لليوم الذي بعده لا يكون هناك فرق في العدادات والصورة تظهر مشكلة فرق في القاطرة 2 بترول دعني أشرح لك ( وأنت بالتأكيد فاهم شغلك تمام ولكن لازم نفهم نحن شغلك علشان نساعدك في حل المشكلة حسب الصورة تابع معي سلوك القاطرة (مثلا) 1 بترول في يوم 1/10/2025 السابق 500 والحالي 1500 القاطرة قبل تحركها كانت 500 وبعد ما وصلت 1500 (تمام) في يوم 4/10/2025 السابق 1500 والحالي 2800 ( تمام) القاطرة قبل تحركها كانت 1500 وبعد ما وصلت 2800 (تمام) لا حظ الأن أن الرقم 1500 كان الحالي في 1/10 وأصبح السابق في 4/10 والى الآن كل شيء معقول , ولكن ولكن ! =========== عند تطبيق نفس المنطق السابق على القاطرة 2 بترول يظهر خطأ في يوم 1/10/2025 السابق 250 والحالي 2500 القاطرة قبل تحركها كانت 250 وبعد ما وصلت 2500(تمام) في يوم 4/10/2025 السابق 2800 والحالي 5600( خطأ ) القاطرة قبل تحركها كانت 2800 وبعد ما وصلت 5600 (خطأ ) لا حظ الأن أن الرقم 2500 كان الحالي في 1/10 ولم يصبح السابق في 4/10 بل أصبح 2800 وهذا يدل على وجود فارق 300 (هنا المشكلة) تقبل تحياتي2 points
-
السلام عليكم السبب هو وجود مسافات قبل الارقام وهذا يحدث عادة عند نسح ارقام ناتجة عن معادلات الحل كل القيم تتحول إلى نصوص (CStr) وتُزال الفراغات (Trim) وهذا يضمن التطابق حتى لو كانت القيم أرقام أو نصوص أو ناتجة عن معادلات. اليك الكود المعدل Sub تحويل_اللجان_الى_اسماء_Turbo() Dim ws As Worksheet: Set ws = ActiveSheet Dim r As Long, c As Long Dim lastRowMain As Long, lastRowSearch As Long Dim رقم_اللجنة As String, اسم_اللجنة As String, اسم_المراقب As String Dim فارق_الاعمدة As Long: فارق_الاعمدة = 12 Dim cell As Range lastRowSearch = ws.Cells(ws.Rows.Count, "N").End(xlUp).Row ws.Range("P3:X" & lastRowSearch).ClearContents lastRowMain = ws.Cells(ws.Rows.Count, "B").End(xlUp).Row lastRowSearch = ws.Cells(ws.Rows.Count, "N").End(xlUp).Row For r = 3 To lastRowMain اسم_المراقب = Trim(CStr(ws.Cells(r, "B").Value)) For c = 4 To 12 رقم_اللجنة = Trim(CStr(ws.Cells(r, c).Value)) If رقم_اللجنة <> "" Then For Each cell In ws.Range("C3:C" & lastRowMain) If Trim(CStr(cell.Value)) = رقم_اللجنة Then اسم_اللجنة = Trim(CStr(ws.Cells(cell.Row, "B").Value)) Dim صف_المراقب As Range For Each صف_المراقب In ws.Range("N3:N" & lastRowSearch) If Trim(CStr(صف_المراقب.Value)) = اسم_المراقب Then ws.Cells(صف_المراقب.Row, c + فارق_الاعمدة).Value = اسم_اللجنة Exit For End If Next صف_المراقب Exit For End If Next cell End If Next c Next r End Sub2 points
-
السلام عليكم حسب قهمي للكود الكود يتعامل مع العمود A والذي به ترقيم والمفترض التعامل مع الاسماء في العمود B اذا كان فهمي للامر صحيح اليك الكود المعدل والا قم بتوضيح الامر اكثر تصوري Sub Compare2() Dim lr As Long, i As Long, j As Long Dim strCol As String Dim WS As Worksheet: Set WS = Worksheets("Data") Dim hasMissing As Boolean: hasMissing = False Application.ScreenUpdating = False On Error Resume Next lr = WS.Columns("B").Find(What:="*", SearchDirection:=xlPrevious).Row On Error GoTo 0 If lr < 6 Then Application.ScreenUpdating = True Exit Sub End If For i = 6 To 18 strCol = Split((WS.Columns(i).Address(, 0)), ":")(0) Dim lastInCol As Long lastInCol = WS.Cells(WS.Rows.Count, strCol).End(xlUp).Row If lastInCol < 6 Then lastInCol = 6 For j = 6 To lr If WorksheetFunction.CountIf(WS.Range(strCol & "6:" & strCol & lastInCol + 500), WS.Range("B" & j)) = 0 Then With WS.Cells(WS.Rows.Count, strCol).End(xlUp).Offset(1) .Value = WS.Range("B" & j).Value End With hasMissing = True lastInCol = lastInCol + 1 End If Next j Next i Application.ScreenUpdating = True End Sub2 points
-
هذا اذا استعملت الكود كاملا !! رجاء انظر الى الرابط الذي وضعته في مشاركتي الاولى ، وهذا كود عمل Vcard الموجود هناك ، ولكني استعملت حقول الاسم الاول ومكان العمل ورقم الهاتف وتاريخ الميلاد فقط ، واوفقت الباقي (بهذه الطريقة انت اختار الحقل اللي تريدها) : Function Add_Items() Dim VCard_Text As String 'clear field VCard_Text = "" VCard_Text = "BEGIN:VCARD" & vbCrLf VCard_Text = VCard_Text & "VERSION:3.0" & vbCrLf ' VCard_Text = VCard_Text & "N:" & Me.[Family Name] & ";" & Me.[Given Name] & ";" & Me.[Additional Name] & ";" & Me.[Name Prefix] & ";" & vbCrLf VCard_Text = VCard_Text & "FN:" & Me![Name] & vbCrLf VCard_Text = VCard_Text & "ORG:" & Me.[Organization 1] & vbCrLf VCard_Text = VCard_Text & "TEL;TYPE=" & Me.[Phone 1 - Type] & ",VOICE:" & Me.[Phone 1 - Value] & vbCrLf ' VCard_Text = VCard_Text & "TEL;TYPE=" & Me.[Phone 2 - Type] & ",VOICE:" & Me.[Phone 2 - Value] & vbCrLf ' VCard_Text = VCard_Text & "TEL;TYPE=" & Me.[Phone 3 - Type] & ",VOICE:" & Me.[Phone 3 - Value] & vbCrLf ' VCard_Text = VCard_Text & "ADR;:" & ";;" & Me.[Address 1] & ";;;;" & vbCrLf VCard_Text = VCard_Text & "BDAY:" & Me.[Birthday] & vbCrLf ' VCard_Text = VCard_Text & "EMAIL;TYPE=" & Me.[E-mail 1 - Type] & ":" & Me.[E-mail 1 - Value] & vbCrLf ' VCard_Text = VCard_Text & "EMAIL;TYPE=" & Me.[E-mail 2 - Type] & ":" & Me.[E-mail 2 - Value] & vbCrLf ' VCard_Text = VCard_Text & "NOTE:" & Me.Notes & vbCrLf ' VCard_Text = VCard_Text & "URL:" & Me.[Website 1] & vbCrLf VCard_Text = VCard_Text & "END:VCARD" Add_Items = VCard_Text End Function2 points
-
وعليكم السلام ورحمة الله وبركاته فكرة pdf انه يقوم بانشاء صفحة مؤقتة بها اسماء الموظفين وكل موظف قي ورقة ثم يصدرها الى pdf قم يحذف الورقة عدد الموظفين لديك حوالى 350 موظف بمعنى يتم انشاء حوالى 350 ورقة المقصود مما سبق دكره ان الكود سيأحد بعض الوقت لتنفيذ الامر ويعتمد الامر على مواصفات الجهاز بالنسبة لجهازي تطلب الامر دقيقة ونصف بمواصفات في حدود الجيدة اليك الملف مرتب الفنيين عن شهر يناير 2026 تعديل.xlsm2 points
-
فعلا مع التجربة لاحظت أن البوكمارك يمكن أن تنحذف أو تنلغي بسهولة مع أي تعديل للملف .. فكرتك عبقرية فعلا 👌1 point
-
التوفيق للجميع ان شاء الله استاذي العزيز 🌹 زر البحث موجود بالقاعدة التي تم تحميلها مسبقاً ☝️ ويكون البحث مخصص لسجلات موظف معين في النماذج الفرعية1 point
-
العفو أختي الكريمة ، ولكن تعقيباً على زر البحث ، فلا اعلم مدى نجاح الفكرة التي قمتي بتنفيذها .. ولكن بالتوفيق1 point
-
1 point
-
من المفترض انها نماذج إدخال بيانات وليست نماذج عرض سجلات ، إلا اذا كنتي رح تضطري تضغطي 50 مرة للبحث عن سجل معين داخل سجلات الجدول !!!! على العموم ، تم إضافة زرين ( التالي - السابق ) للنموذجين مع دالة تستعرض السجلات الخاصة بالموظف الحالي فقط .. تفضلي :- ربط واجهات3.zip1 point
-
1 point
-
طيب استخرج المجلد بجوار القاعدة ثم استخدم هذا الكود Sub ExportReports_To_OnePDF_PDFtk() Dim arrReports As Variant Dim i As Integer Dim strTempFolder As String Dim strFinalPDF As String Dim strPDFtk As String Dim strCmd As String strPDFtk = CurrentProject.Path & "\PdftkBuilderPortable\pdftk.exe" strTempFolder = CurrentProject.Path & "\TempPDF\" strFinalPDF = CurrentProject.Path & "\AllReports.pdf" arrReports = Array("rpt1", "rpt2", "rpt3") If Dir(strTempFolder, vbDirectory) = "" Then MkDir strTempFolder End If If Dir(strTempFolder & "*.pdf") <> "" Then Kill strTempFolder & "*.pdf" End If For i = LBound(arrReports) To UBound(arrReports) DoCmd.OutputTo acOutputReport, arrReports(i), acFormatPDF, _ strTempFolder & (i + 1) & "_" & arrReports(i) & ".pdf", False Next i strCmd = """" & strPDFtk & """ " & _ """" & strTempFolder & "*.pdf"" cat output " & _ """" & strFinalPDF & """" Shell strCmd, vbHide MsgBox "تم إنشاء ملف PDF واحد بنجاح ?" & vbCrLf & strFinalPDF, vbInformation Kill strTempFolder & "*.pdf" End Sub PdftkBuilderPortable.rar1 point
-
اذا كان هدفك تصدير عدة تقارير دفعة واحدة بملف PDF واحد ، فأنت ستحتاج الى تقرير واحد يشملهم جميعاً ثم يتم تصديره . خلاف ذلك ستحتاج الى ادوات خارجية مساعدة لتدمج لك 4 ملفات PDF - ( بالفرض 4 تقارير ) - ليتم دمجها بملف واحد .1 point
-
السلام عليكم ورحمة الله تعالى اولا كل الشكر وكل التقدير والاحترام لكل رواد المنتدى المحترمين الافكار جميعها ولا اروع والان حان وقت مشاركتى فكرتى تعتمد على عمل التالى كلاس موديول عارف ان فى اجابات احتوت على افكار بسيطة جدا جدا جدا وفعالةوفكرتى هى كالاتى امكانية عمل نماذج تقييم متعددة ليحتوى احد النماذج على تقييم لا يتعدى الثلاث نجوم ونموذج اخر مثلا 5 نجوم وممكن نموذج كمان يحتوى على 10 نجوم فكرتى كود مركزى واحد يعمل على الجميع امكانية اعطاء نفس النجمة او ازالتها اما من نفس النجمة او بالنجمة التى تسبقها نبدأ شرح المنهج المتبع والفكرة والاكواد انشاء وحدة نمطية عامة من النوع كلاسس باسم: clsStarRating الكود سوف يكون: Option Compare Database Option Explicit ' ========================================== ' الثوابت الافتراضيةالخاصة ' ========================================== Private Const DEFAULT_SOLID_STAR As Long = &H2605 ' رمز النجمة المصمتة Private Const DEFAULT_HOLLOW_STAR As Long = &H2606 ' رمز النجمة المفرغة Private Const DEFAULT_TOTAL_STARS As Integer = 6 Private Const MAX_STARS As Integer = 20 ' ========================================== ' المتغيرات الخاصة Private mStarCount As Integer Private mRating As Integer Private mSolidSymbol As Long Private mHollowSymbol As Long Private mLastForm As Form Private mLastRatingField As String Private mStarsExpression As String ' ========================================== ' التهيئة ' ========================================== Public Sub Initialize(Optional ByVal starCount As Integer = DEFAULT_TOTAL_STARS, _ Optional ByVal SolidSymbol As Long = DEFAULT_SOLID_STAR, _ Optional ByVal HollowSymbol As Long = DEFAULT_HOLLOW_STAR) mStarCount = IIf(starCount >= 1 And starCount <= MAX_STARS, starCount, DEFAULT_TOTAL_STARS) mSolidSymbol = SolidSymbol mHollowSymbol = HollowSymbol mRating = 0 ClearCache End Sub ' ========================================== ' تبديل حالة التقييم ' ========================================== Public Sub StarClick(ByVal index As Integer) If index < 1 Or index > mStarCount Then Exit Sub mRating = IIf(index = mRating, IIf(index = 1, 0, index - 1), index) End Sub ' ========================================== ' تحميل/حفظ >-->> فائق الكفاءة ' ========================================== Public Sub LoadFromForm(Form As Form, ratingControl As String, Optional ByVal showMessage As Boolean = False) On Error GoTo ErrHandler mRating = Nz(Form.Controls(ratingControl).value, 0) CleanExit: Exit Sub ErrHandler: Debug.Print "LoadFromForm Error #" & Err.Number & ": " & Err.Description If showMessage Then MsgBox Err.Description, vbCritical Resume CleanExit End Sub Public Sub SaveToForm(Form As Form, ratingControl As String, Optional ByVal showMessage As Boolean = False) On Error GoTo ErrHandler If Form.NewRecord Then Exit Sub Form.Controls(ratingControl).value = mRating If Form.Dirty Then Form.Dirty = False CleanExit: Exit Sub ErrHandler: Debug.Print "SaveToForm Error #" & Err.Number & ": " & Err.Description If showMessage Then MsgBox Err.Description, vbCritical Resume CleanExit End Sub ' ========================================== ' محرك مركزى لتحديث عرض التقييم فى النموذج ' ========================================== Public Sub UpdateStarsForForm(FormObj As Form, ratingFieldName As String, _ Optional starPrefix As String = "txtStar", _ Optional textBoxName As String = "txtRatingText") On Error GoTo ErrHandler Static lastForm As Form, lastField As String If Not lastForm Is Nothing Then If lastForm Is FormObj And lastField = ratingFieldName Then Exit Sub End If Dim i As Integer, textExpr As String For i = 1 To mStarCount With FormObj.Controls(starPrefix & i) .ControlSource = "=Switch([" & ratingFieldName & "]>=" & i & _ ",ChrW(" & mSolidSymbol & "),True,ChrW(" & mHollowSymbol & "))" End With Next i ' نص التقييم (مرة واحدة) If Len(textBoxName) > 0 Then textExpr = "=Switch([" & ratingFieldName & "]=0,'بدون تقييم'," & _ "[" & ratingFieldName & "]=1,'نجمة'," & _ "[" & ratingFieldName & "]=2,'نجمتان'," & _ "True,[" & ratingFieldName & "] & ' نجوم')" FormObj.Controls(textBoxName).ControlSource = textExpr End If ' تحديث ذاكرة الكاش Set lastForm = FormObj lastField = ratingFieldName CleanExit: Exit Sub ErrHandler: Debug.Print "UpdateStars Error: " & Err.Description Resume CleanExit End Sub ' ========================================== ' تنظيف ذاكرة الكاش ' ========================================== Private Sub ClearCache() Set mLastForm = Nothing mLastRatingField = "" End Sub ---- اولا نبدأ بـــ :دليل التشغيل السريع لنظام تقييم النجوم أعداد اى نموذج مربعات النص المطلوبة: txtRatingValue ← مرتبط بحقل فى الجدول نوع الحقل رقمى ليسجل قيمة التقييم مثل ← (التقييم 0-10) txtRatingText ← (غير منضم ولا يرتبط بأى حقول فى الجدول) يعرض نص مثل ← "3 نجوم" مربعات نص txtStarX تبدأ من txtStar1 الى عدد النجوم التى تريد وضعها فى النموذج مثلا ← txtStar10 (غير منضمة جميعها ولا ترتبط بأى حقول فى الجدول) ← عرض نجوم التقييم ⭐ الأزرار btnStarX خصائصها شفافة وتكون بنفس عدد مربعات النص السابقة وتكون مواضعها فوق مربعات النص فى المقدمة كود النموذج Option Compare Database Option Explicit ' ========================================== ' إعدادات النموذج الثابتة (Configuration) ' ========================================== ' عدد النجوم Private Const cintTotalStars As Integer = 10 ' حقل التقييم Private Const cstrRatingControl As String = "txtRatingValue" ' بادئة أزرار النجوم Private Const cstrButtonPrefix As String = "btnStar" ' بادئة مربعات نص النجوم Private Const cstrStarPrefix As String = "txtStar" ' نص التقييم Private Const cstrTextControl As String = "txtRatingText" Private StarEngine As clsStarRating ' ========================================== ' فتح النموذج - التهيئة الكاملة ' ========================================== Private Sub Form_Open(Cancel As Integer) On Error GoTo ErrHandler Dim ctl As Control ' إنشاء محرك النجوم Set StarEngine = New clsStarRating StarEngine.Initialize cintTotalStars ' تحميل التقييم الحالي If Not Me.NewRecord Then StarEngine.LoadFromForm Me, cstrRatingControl End If ' ربط أزرار النجوم ديناميكيا For Each ctl In Me.Controls If ctl.ControlType = acCommandButton And ctl.Name Like cstrButtonPrefix & "*" Then ctl.OnClick = "=HandleStarClick(""" & ctl.Name & """)" End If Next ctl ' تحديث العرض StarEngine.UpdateStarsForForm Me, cstrRatingControl, cstrStarPrefix, cstrTextControl CleanExit: Exit Sub ErrHandler: Debug.Print "Form_Open Error #" & Err.Number & ": " & Err.Description MsgBox "خطأ في التهيئة: " & Err.Description, vbCritical, "Star Rating" Resume CleanExit End Sub ' ========================================== ' معالج ربط أحداث أزرار تقييم النجوم الديناميكي (مركزي) ' ========================================== Public Function HandleStarClick(ByVal strButtonName As String) As Variant On Error GoTo ErrHandler Dim intStarIndex As Integer intStarIndex = Val(Mid(strButtonName, Len(cstrButtonPrefix) + 1)) ' التحقق من صحة النجمة If intStarIndex < 1 Or intStarIndex > cintTotalStars Then HandleStarClick = False Exit Function End If ' تسلسل العمليات: Load >> Click >> Save >> Refresh StarEngine.LoadFromForm Me, cstrRatingControl StarEngine.StarClick intStarIndex StarEngine.SaveToForm Me, cstrRatingControl, False ' False = no message (بدون رسائل) HandleStarClick = True CleanExit: Exit Function ErrHandler: Debug.Print "HandleStarClick Error [" & strButtonName & "] #" & Err.Number & ": " & Err.Description HandleStarClick = False Resume CleanExit End Function ' ========================================== ' إغلاق آمن ' ========================================== Private Sub Form_Unload(Cancel As Integer) Set StarEngine = Nothing End Sub وطبعا يتم تعديل الاعدادت فى اعلى كود النموذج حسب المسميات ان اردت تغييرها فى النموذج بما يناسبك انت ' عدد النجوم Private Const cintTotalStars As Integer = 10 ' حقل التقييم Private Const cstrRatingControl As String = "txtRatingValue" ' بادئة أزرار النجوم Private Const cstrButtonPrefix As String = "btnStar" ' بادئة مربعات نص النجوم Private Const cstrStarPrefix As String = "txtStar" ' نص التقييم Private Const cstrTextControl As String = "txtRatingText" وبكده يكون معانا فكرة وتنفيذ لكود مرن لا يتطلب اى تدخل منك فى المستقبل ان اردت زيادة اعداد عناصر التقييم الا فقط باتباع نهج المواضع والمسميات لا تعديل فى الكود ولن تحتاج الى اضافة اى اكواد فى النموذج امكانية عمل اكثر من نموذج للتقييم فى نفس قاعدة البيانات على ان يكون لكل نموذج عدد تقييمات خاصة به وتختلف عن غيره وأخيرا اليكم مرفقا للتجربة والتقييم للفكرة وألية العمل الاستاذ الفاضل @ابوخليل اترك لكم حرية اختيار افضل اجابة لتكون مرجعا لرواد المنتدى ولكم خالص الشكر والتقدير لتقييم النجوم ( V1.2).accdb.zip1 point
-
تفضل السمكة بالهناء والشفاء حساب مع الترتيب حسب المديونية رغم أني لا أفهم شيء في المحاسبة عملاء جديد.xlsb1 point
-
1 point
-
1 point
-
ممتاز ولكن مثلا اعطيت احد المنتجات تقييم نجمه واحدة بعد ذلك اريد ازالة النجمة فأريد عند الضغط عليها مرة اخرى يتم الغاء التقييم ومثال اخر مثلا اعطيت احد المنتجات ثلاث نجمات تقييم اريد ان اعيد التقيم الى 2 نجمه فقط فاريد ان يتم ذلك من خلال الضغط على النجمة الثالثة اذا كانت معطاة بالفعل ليتم الغائها و أعرف انه اذا تم الضغط على النجمة الثانية بالفعل سوف يتم عمل وتطبيق نفس السيناريو ولكن انا رخم اريد اقصى درجات المرونة الممكنة1 point
-
لما لا تستخدم مسح البيانات القديمة وادراج الجديد1 point
-
1 point
-
وعليكم السلام ورحمة الله وبركاته .. نرجو منك ارفاق ملف بسيط كي يتمكن الإخوة والأساتذة من التطبيق عليه1 point
-
السلام عليكم استاذ تم حل مشكلة الاستراد ملف الاكسيل عند اضغط على زر استيراد يتم احضار البيانات مباشرة الملف يعمل 100-100 بارك الله فيك1 point
-
1 point
-
1 point
-
كما ذكر الاخ @Foksh فالسبب مرتبط بالويندوز نفسه عموما وجدت لك فيديو يشرح طريقة تحميل واتساب على نفس نسخة الويندوز إن شاء الله تنجح معك رابط الفيديو ومرفق لك ملف مضغوط يحتوي على الملفات المطلوبة في الفيديو قم بنسخ الإصدارات المتوافقة مع جهازك تحياتي LTSC-Add-MicrosoftStore-2024-main.zip1 point
-
الاستاذ / FOKSH اشكرك على المتابعة و الاهتمام و حسن النصيحة و لكن الخطأ منى فى تبسيط المرفق لدرجة اخلت بالمضمون اشكرك مرة اخرى مع كامل تقديرى و احترامى1 point
-
استاذ @AMINYOUSIF اليك الاستعلام بعد تعديل الجدولان . حسب مافهمت . ووافني بالرد . AMINYOUSIF.rar1 point
-
1 point
-
جزاك الله خير الجزاء الحل جميل جدا وهذا هو المطلوب الف شكر لك يالغالي1 point
-
وعليكم السلام ورحمة الله وبركاته ... بعد تتبع مصدر مربع النص Text2 .. وجدت أن أفضل حل هو الحدث التالي بعد تحديث عنصر الـ Ch1 ، بحيث يكون :- Private Sub ch1_AfterUpdate() Dim subForm As Form Set subForm = Me.FMBoxCustomersSup.Form If Me.ch1 = True Then subForm.Filter = "([Sumمنtotalmainstax] - [Sumمنtotal_shop]) - [Price1] <> 0" subForm.FilterOn = True Else subForm.FilterOn = False End If End Sub وطبعاً في حدث عند التحميل للنموذج الرئيسي ، نقوم باستدعاء حدث بعد التحديث للعنصر Ch1 ، ليصبح كالتالي :- Private Sub Form_Load() DoCmd.Maximize ch1_AfterUpdate End Sub ملفك بعد التعديل :- اظهار واخفاء السجلات حسب قيمة الحقل.zip1 point
-
أفهم ان التواريخ كرقم والتنسيق فقط قناع ليسهل علينا قراءته ... أجبت وأفدت، بارك الله فيك وزادك من فضله 🌹🌹🌹1 point
-
وعليكم السلام ورحمة الله وبركاته حسب طلبك في الرسائل الحاصة استاذ هذا هو طلبي لقد اعادة ملف الاكسيل لقد حاولت وضع الكود ولم اسطيع الاجابة على طلبك ارجع الى اول ملف في مشاركتك الاولى اسم الملف (امتداده) يتنهي xlsx ارجع الى الملف الذي ارفقت لك به الاجابه وبه الكود اسم الملف (امتداده) يتنهي xlsb لماذا قمت انا بتغيير امتداد الملف من xlsx الى xlsb ؟ لسبب بسيط وهو ان اي ملف اكسل يتنهي اسمه (امتداده) xlsx لا يمكن ان يحفظ كود في هذه النوعية من الملفات ماذا يحدث لو وضعت كوداً في ملف xlsx؟ إذا قمت بوضع كود داخل ملف xlsx ثم قمت بالحفظ: ستظهر لك رسالة تنبيه واضحة. إذا ضغطت "نعم" (Yes) للحفظ بصيغة xlsx فسيقوم إكسل بمسح الكود تماماً. عند فتح الملف مرة أخرى، لن تجد أي أثر للكود الذي كتبته. وملفك الاخير بنفس الامتداد xlsx فلن يتم حفظ الكود لذلك عند حفظ الملف وظهور رسالة التنبيه احتيار لا بدل نعم كما في الصور المرفقة اليك الملف وبه الكود بغد تحويله من xlsx الى xlsb وهو نفس الملف في احر مشاركة لي Employees.xlsb1 point
-
السلام عليكم تم التعديل ومسح البيانات للنطاق b7:h7 بعد الترحيل مع التسطير كذلك تم اظافة شرط وهو اذا كانت الخلايا في النطاق b7:h7 فارغة لا يتم الترحيل Employees5.xlsb1 point
-
حسب فهمي لسؤالك في الكود المعدل الكود يقرأ عمود التاريخ كرقم وللتوضيح اكثر التواريخ هي في الأصل أرقام (مثلاً تاريخ اليوم هو رقم مثل 46040)، والتنسيق الذي تراه dd/mm/yyyy هو مجرد "قناع" أو مظهر خارجي لتسهيل القراءة علينا كبشر. في الكود توجد الدالة CDbl(.Range("J3").Value)، بحيث يأحد "القيمة الرقمية" الحقيقية المخزنة داخلها. وباحتصار الكود الآن يرى التاريخ كقيمة رقمية مجردة، بغض النظر عن طريقة تنسيق التاريخ في خلايا الجدول (سواء كانت yyyy/mm/dd أو dd-mm-yy). ويمكنك تجربة تبديل بعض التواريح بتغيير التنسيق في الجدول كمثال جعل 15/04/2026 الى 04/15/2026 فالنتيجة واحدة تحياتي1 point
-
وعليكم السلام ورحمة الله وبركاته المشكلة الأساسية في الكود تكمن في طريقة التعامل مع تنسيق التاريخ. في VBA، عندما نستخدم SumIfs مع التواريخ، يفضل تمرير التاريخ كقيمة رقمية (Long) اذا كانت الكميات ارقام صثحيحة و Double بدلاً من Long تحسباً لوجود كسور في الكميات (إذا كانت الكمية تحتوي على فواصل عشرية ) ، لأن تحويله إلى نص (String) مثل "MM/dd/yyyy" قد يتسبب في عدم تطابق البيانات إذا كان إعداد التاريخ في الجهاز مختلفاً. جرب التعديل بالملف المرفق SUMIFS_VBA.xlsm1 point
-
1 point
-
1 point
-
1 point
-
1 point
-
الأن بحسب الصورة التي أرسلتها تبين أن الخلل في : الديزل وفي القاطرة 1 فقط في خانة السابق الأن المعادلة تظهر الرقم 7789 ما هو الرقم اصحيح الذي تريده أن يظهر ؟ الرجاء كتابة النتائج المتوقعة التي تريدها ان تظهر في النتيجة1 point
-
1 point