اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

نجوم المشاركات

  1. أ / محمد صالح

    أ / محمد صالح

    أوفيسنا


    • نقاط

      19

    • Posts

      4,431


  2. د.كاف يار

    د.كاف يار

    الخبراء


    • نقاط

      14

    • Posts

      1,681


  3. Eng.Qassim

    Eng.Qassim

    الخبراء


    • نقاط

      4

    • Posts

      2,302


  4. ابوخليل

    ابوخليل

    أوفيسنا


    • نقاط

      3

    • Posts

      12,192


Popular Content

Showing content with the highest reputation on 23 أغس, 2021 in all areas

  1. وعليكم السلام-يمكنك جعل المعادلة هكذا =SUMIFS($C$3:$C$7,$D$3:$D$7,$I3,$B$3:$B$7,J$2,$A$3:$A$7,">="&H3,$A$3:$A$7,"<="&EOMONTH(H3,0)) work1.xlsx
    3 points
  2. تفضل التعديل ارجو ان يكون طلبك Access-Import-1.rar
    3 points
  3. تفضل Dim ctl As Control For Each ctl In Me.Controls If TypeName(ctl) = "TextBox" Then If Not IsNull(ctl) Then MsgBox "توجد بيانات بالنموذج", vbExclamation + vbMsgBoxRight, "تأكيد" End If End If Next ctl
    2 points
  4. يمكنك استعمال هذا الاجراء Sub mas_getvalues() With Range("b6:b7") .Formula = "=INDEX('1.xlsx'!$C:$C,MATCH(A6,'1.xlsx'!$A:$A,0))" .Value = .Value End With With Range("b10:b12") .Formula = "=INDEX('1.xlsx'!$C:$C,MATCH(A10,'1.xlsx'!$A:$A,0))" .Value = .Value End With With Range("b15:b16") .Formula = "=INDEX('1.xlsx'!$C:$C,MATCH(A15,'1.xlsx'!$A:$A,0))" .Value = .Value End With With Range("c6:c7") .Formula = "=INDEX('2.xlsx'!$D:$D,MATCH(A6,'2.xlsx'!$A:$A,0))" .Value = .Value End With With Range("c10:c12") .Formula = "=INDEX('2.xlsx'!$D:$D,MATCH(A10,'2.xlsx'!$A:$A,0))" .Value = .Value End With With Range("c15:c16") .Formula = "=INDEX('2.xlsx'!$D:$D,MATCH(A15,'2.xlsx'!$A:$A,0))" .Value = .Value End With وربطه بشكل أو زر ولا تنس حفظ الملف بامتداد مثل xlsb أو xlsm
    2 points
  5. نعم جميع اجهزة الباركود لها اعدادات خاصة حسب رغبات العملاء طريقة فحص قارىء الباركود بعد الاعداد : افتح المفكرة واقرأ الباركود الذي امامك وكرر القراءة ,,, اذا قرأ ونزل لسطر جديد فهذا هو مطلوبك
    2 points
  6. أهلا بكم.. حسب معرفتي أن أجهزة المسح لها إعدادت انتقال مثل(ENTER, TAB, SPACEBAR) وغيرها من طرق الإدخال يتم برمجة الجهاز عن طريق مصورات (باركود) متوفرة في دليل الاستخدام إذا لم يكن دليل الاستخدام متوفر لديك أو كانت هذه الرموز غير متوفرة ضمن الدليل فيمكنك زيارة موقع الشركة للاطلاع على التعليمات المساندة..
    2 points
  7. اتفضل هذا التعديل يابوالحسن الفلتر كالتالي - اما ان تختار نطاق التاريخ او تختار السنة المالية فقط لكي يتم تعيين بداية السنة و نهايتها - نوع الحساب الختياري ضمن الفلتر الدائن و المدين.zip
    2 points
  8. 1 point
  9. شيك على المكتبات لديك حسب الصورة ... لأان البرنامج يعمل لدي ....
    1 point
  10. أنا شخصيا رأيت في xampp مشكلات كثيرة مما جعلني أستعمل Unform Server منذ أكثر من عشرة أعوام بالتوفيق
    1 point
  11. الفكرة في تغيير النطاق الذي سيتم وضع المعادلة له ثم تحويله إلى قيمة مثلا من b6:b1000 With Range("b6:b1000") .Formula = "=iferror(INDEX('1.xlsx'!$C:$C,MATCH(A6,'1.xlsx'!$A:$A,0)),"""")" .Value = .Value End With تم وضع دالة iferror بالتوفيق
    1 point
  12. هو المطلوب جزاك الله خيرا استاذ علي وبارك الله في علمك وصحتك واهلك
    1 point
  13. نعم استاذي المشكلة تباعد الصفوف . جزيت خيرا استاذ محمد / ممكن تكرما كتابة المعادلة في حالة كانت كتله واحده دون تقطيع. مع ازالة نص الخطأ في حالة عدم وجود قيمة
    1 point
  14. المشكلة في ملفك أنها نطاقات متباعدة لو كانت كتلة واحدة من الصف مثلا 5 الى الصف 1000 سيتم كتابة المعادلة مرة واحدة ومعها القيمة في with واحدة لكن ملفك كل صفين مجموعة ثم مجموعها
    1 point
  15. كلامك صحيح استاذ ابو خليل .. ياريت الاخ صاحب المشاركة يجربه على ال Notepad
    1 point
  16. بصراحة لم ارى باركود يقرأ اكثر من سجل في ان واحد رجاء اخبرنا ان توصلت الى نتيجة..تحياتي لك
    1 point
  17. تفضل اخي الكريم لاحظ انه يقوم بوضع سعر البيع في حقل سعر البيع وبعد الخروج يتم الانتقال الى سجل جديد aziz1.accdb تحياتي
    1 point
  18. يمكنك استعمال هذا الإجراء Sub clr_with_pw() If InputBox("من فضلك أدخل كلمة المرور.", "حماية") = "1234" Then Range("A2:D15").ClearContents Range("A2").Select Else: MsgBox "كلمة المرور خطأ": End If End Sub حيث أن كلمة المرور لتنفيذ هذا الإجراء هي 1234 ويمكن استعمال ذلك الكود مع أي ماكرو بوضع اكواد الماكرو مكان السطرين الثالث والرابع وتغيير 1234 إلى كلمة المرور المطلوبة بالتوفيق
    1 point
  19. يا ريت توضح اكثر .... هل تقصد عند الضغط على زر معين يطلب من المستخدم إدخال كلمة مرور فإذا كانت صحيحة يتم تنفيذ الأكواد المخصصة للزر وإلا فلا ينفذ ؟؟؟؟
    1 point
  20. اعطيني قياسات الورقة و اللاصقة و هوامش اللاصقة من جميع الاتجاهات
    1 point
  21. صيح يوجد خطأ هذا هو التعديل بناء على اكبر تاريخ DLast("[Per_Degree]";"[T1]";"[Per_Name] Like '" & [Per_Name] & "' AND [Ex_DATE] Like '" & DMax("[Ex_DATE]";"[T1]";"[Per_Name] Like '" & [Per_Name] & "'") & "'") Last_Degree.mdb
    1 point
  22. ما تطلبه ليس منطقيا يرجى توضيح طلبك انت ماذا تريد ؟ المعادلة قد تختلف نوعا ما عن الاكسل لابد ان يكون المعيار محدد عموما تفضل طلبك مثلما هو في ملف الاكسل Database1.accdb
    1 point
  23. نعم صحيح .. على قول استاذ حسام لقد اخطأت حين الاختيار من الجدول لان لم تنفع استخدام عبارة DISTINCT
    1 point
  24. ليست هنا المشكلة ... يجب ان يكون لديك المبلغ المسدد والمبلغ المتبقي
    1 point
  25. اخي الكريم عادة هذه الملصقات لاعدادها تحتاج منك المحاولات العديدة حتى تصل للمطلوب .... يعني تحاول تعديل حجم التقرير أقصد حجم الملصق الموجود في التقرير وتطبع على ورق A4 ثم تقارن مع اوراق الملصقات وهكذا حتى تصل للتقرير الذي يرضيك ..... وايضا يمكن استخدام المعالج الموجود في الاكسس لطباعة الملصقات لصنع التقرير المناسب ثم تعدل عليه حسب التقرير الذي تريد .... جرب المرفق واظهر المعالج واختر مايناسبك حتى تصل للمطلوب ثم انقل تلك الاعدادا الى تقريرك .... طباعة ملصقات نهائي (1).mdb
    1 point
  26. لا طبعا و ليس هذا هو منطقة لغات البرمجمة تفضل هذه افضل مكتبة لأكواد vba سوف تجد امثلة لكل ما يخطر على بالك https://docs.microsoft.com
    1 point
  27. لحظة حذف الصورة ماهو بهذي الطريقة يكون ! فأنت تقوم بحذف المسار فقط و لا يتم حذف الصورة من المجلد تفضل هذا التعديل thaaer.zip يبدوا انني تسرعت اعتذر لم انتبه انك فعلا تستخدم وظيفة kill
    1 point
  28. نصيحتي لك تعلم لغة الجافا java أو javascript فهي بوابتك لجميع اللغات الأخرى سهلة و من خلالها تستمد اللغات الأخرى
    1 point
  29. أكواد 32بت لا تعمل على 64بت والعكس صحيح والصواب أن يجمع الكود بين النواتين #if vba7 then 64bit codes #else 32bit codes #end if والفرق بين الكودين وضع ptrsafe قبل function أو sub
    1 point
  30. ايسر الطرق و اسهلها ان تجعل رقم الطالب و كود الترم كلتها مفتاح اساسي اي ان الطالب لن يتكرر في الترم الواحد
    1 point
  31. السبب في اللغة تأكد من اعدادات اللغة الاقليمية في جهازك تابع هذا الموضوع سوف تجد فيه ضالتك
    1 point
  32. تفضل هذه مشاركتي اضف ازارا اننشاء تقرير و ضع الشفرة التالية حدث عند النقر Dim ctlLabel As Control, ctlText As Control Dim intDataX As Integer, intDataY As Integer Dim intLabelX As Integer, intLabelY As Integer Dim db As DAO.Database Dim rs As DAO.Recordset intLabelX = 100 intLabelY = 100 intDataX = 1000 intDataY = 100 Set rpt = Application.CreateReport rpt.RecordSource = "TRANSFORM Sum(الخزينة.المداخيل) AS Sumمنالمداخيل SELECT الخزينة.البيان, الخزينة.التصنيف, Sum(الخزينة.المداخيل) AS [إجمالي المداخيل] FROM الخزينة GROUP BY الخزينة.البيان, الخزينة.التصنيف PIVOT الخزينة.[الفرع/المصلحة];" Set rs = CurrentDb.OpenRecordset("TRANSFORM Sum(الخزينة.المداخيل) AS Sumمنالمداخيل SELECT الخزينة.البيان, الخزينة.التصنيف, Sum(الخزينة.المداخيل) AS [إجمالي المداخيل] FROM الخزينة GROUP BY الخزينة.البيان, الخزينة.التصنيف PIVOT الخزينة.[الفرع/المصلحة];") Dim x, x2 As Integer For x = 0 To rs.Fields.Count - 1 Set ctlText = CreateReportControl(rpt.Name, acLabel, acPageHeader, , rs.Fields(x).Name, _ intDataX * x, 0, 555) ctlText.Name = rs.Fields(x).Name & x Set ctlText = CreateReportControl(rpt.Name, acTextBox, acDetail, , rs.Fields(x).Name, _ intDataX * x, 0, 555) ctlText.Name = rs.Fields(x).Name Next rs.Close Set rs = Nothing rpt.RecordSource = "الخزينة_Crosstab"
    1 point
  33. مجهود رائع بارك الله فيك أنا شخصيا لم أذكرها في ملفي للعلم بها وبالنسبة لملف حضرتك يمكن اختصار معادلة تاريخ الميلاد مع الاهتمام بما بعد 2100 إلى =DATE(MID(B4,1,1)*100+1700+ MID(B4,2,2),MID(B4,4,2),MID(B4,6,2)) ويمكن اختصار معادلة السن حاليا سنة - شهر إلى =DATEDIF(C4,TODAY(),"y") & " - " &DATEDIF(C4,TODAY(),"ym") بالتوفيق
    1 point
  34. السلام عليكم إضافة بسيطة للملف و هي الرقم القومي حساب تاريخ المعاش2.xlsx
    1 point
  35. السلام عليكم ورحمة الله وبركاته تفضل اخوي العزيز Aziz.xlsm
    1 point
  36. الكود كما تريد Option Explicit Dim i%, Lr% Dim T As Worksheet Dim Spes_sh As Worksheet Dim Flter_rg As Range Dim RO% Sub ADD_Sheets() Set T = Sheets("تسجيل_الموظفين") Lr = T.Cells(Rows.Count, 2).End(3).Row If Lr < 8 Then Exit Sub With T For i = 8 To Lr If Not Application.Evaluate("ISREF('" & _ .Range("B" & i) & "'!A1)") Then Sheets.Add(, Sheets(Sheets.Count)).Name = _ .Range("B" & i) End If Next End With End Sub '+++++++++++++++++++++++++++ Sub transfer_data() Application.ScreenUpdating = False ADD_Sheets T.Select Set Flter_rg = T.Range("A7").CurrentRegion For Each Spes_sh In Sheets If Spes_sh.Name <> T.Name Then Spes_sh.Range("A7").CurrentRegion.Clear Flter_rg.AutoFilter 2, Spes_sh.Name Flter_rg.SpecialCells(12).Copy With Spes_sh.Range("A7") .PasteSpecial (8) .PasteSpecial (12) .PasteSpecial (4) End With RO = Spes_sh.Cells(Rows.Count, 1).End(3).Row If RO > 7 Then Spes_sh.Range("A8").Resize(RO - 7).Value = _ Evaluate("Row(1:" & RO - 7 & ")") End If End If Next Spes_sh T.AutoFilterMode = False T.Select With Application .ScreenUpdating = True .CutCopyMode = False End With End Sub الملف لآحر مرة و سوف يغلق الموضوع بعد الرد مباشرة لأنه أخذ ما يزيد من الوقت Hatem_Last.xlsm
    1 point
  37. في الخلية J2 هذه المعادلة (Ctrl+Shift+Enter) =SUM(IF(MOD(ROW(J$6:J$1000),2)=1,J$6:J$1000,0)) في الخلية J3 استدبل الرقم 1 بالرقم 0 (Ctrl+Shift+Enter) =SUM(IF(MOD(ROW(J$6:J$1000),2)=0,J$6:J$1000,0)) و الان ضع التنسيق الشرطي الذي تريده
    1 point
  38. السلام عليكم تم إنشاء "دالة مستحدثة" سميتها CONCAT متغيراتها ثلاثة : النطاق - الشرط - الفاصل... تقوم هذه الدالة بسَلْسَة Concatenation لقيم خلايا "النطاق" (المتغير الأول) التي يتحقق عليها "الشرط" (المتغير الثاني) وتفصل بينها بـ "الفاصل" (المتغير الثالث)... وتمت إضافات أخرى تحسينية (اختيار المتغيرين الثاني والثالث من قوائم منسدلة - تنسيقات شرطية لتلوين خلايا "النطاق" التي يتحقق عليها "الشرط")... أرجو أن تفي بالغرض المطلوب... بن علية حاجي استفسار2.zip
    1 point
  39. شكرا أخي لذوقك العالي لم أكن أعلم أن الكود الخاص بك يقوم بجلب نتائج البحث من الشيت وهذا الانتقال من النموذج إلى أوراق العمل ينقل البؤرة مما يشتت المؤشر بين النموذج وأوراق العمل فأعتقد أن ما قمت لك به هو أنسب حل
    1 point
  40. أخي الكريم للعلم ستحتاج لضبط المعادلة بعد رمضان
    1 point
  41. أخي الكريم إكسل يمكنك من عمل سلسلة من الأرقام تبدأ من 1 أو اي رقم إلى 10048000 في إكسل 2007 أما إذا كنت تقصد أن يمنعك البرنامج من إدخال الرقم المسلسل مرتين كما هو الحال في أكسس فأعتقد أنها غير موجودة في إكسل والأفضل أن تملأ السلسلة ثم تبدأ بالكتابة في باقي حقول السجل وإذا أردت إضافة سجل يمكنك نسخ السلسلة مرة أخرى حتى يتم إعادة الترتيب للترتيب الصحيح تحياتي
    1 point
  42. وهذا الملف بالنسبة لمن لا يمتلكون أوفيس 2007 جرب أن تحذف المعادلات الموجودة في العمودين c و d ستجد كتابتهم مرة ثانية تحياتي للجميع mas123-example-2003.rar
    1 point
  43. ما دام عدد الصفوف في كل شيت ثابت على 500 فإليكم هذا الكود الذي يقوم بكتابة المعادلة في الخليتين c9 و d9 وينسخهم بعدد العملاء الموجود في الخلية c6 ويتم تحديث الشيت في كل لحظة بمعنى أنه إذا زاد عدد العملاء فقط يجب كتابة العدد في الخلية c6 وسيتم نسخ المعادلة لهذا العميل وكذلك إذا تم زيادة شيت فسيتم إضافته للمعادلة تلقائيا أتمنى أن ينال إعجابكم كل عام أنتم بخير mas123-example.rar
    1 point
  44. أنا ما قلت تغير التاريخ الهجري أنا قلت تغير المعادلة الموجودة عندك في الخلية إلى =CONCATENATE("التكميل اليومي لإدارة الشؤون الادارية ليوم ( ";TEXT(TODAY();"B2DDDD");" ) الموافق ";TEXT(TODAY()-1;"B2YYYY/M/D");"هـ") لاحظ هذا الجزء من المعادلة TEXT(TODAY()-1 هو المسئول عن تقليل التاريخ الهجري يوم
    1 point
  45. يمكنك استعمال دالة countif فلو مثلا فرزت بواسطة عمود الاسم (b2:b200) أن يكون مثلا "محمد" يمكنك استعمال الدالة بهذه الصورة countif(b2:b200;"محمد") ستكون النتيجة عدد الصفوف الناتجة عن الفرز كل عام أنتم بخير
    1 point
×
×
  • اضف...

Important Information