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

خالد الرشيدى

الخبراء
  • Posts

    889
  • تاريخ الانضمام

  • تاريخ اخر زياره

  • Days Won

    7

كل منشورات العضو خالد الرشيدى

  1. اخى الكريم لكل الطلاب ولكل المواد يمكنك استخدام المعادلة التالية لجلب اعمال السنة اى F7..... =VLOOKUP(INDIRECT(ADDRESS(ROW();3));INDIRECT("'"&INDIRECT(ADDRESS(2;COLUMN()))&"'!B2:D200");2;0) ولجلب م. امتحان الفصلين اى G7.... =VLOOKUP(INDIRECT(ADDRESS(ROW();3));INDIRECT("'" & INDIRECT(ADDRESS(2;COLUMN()-1)) & "'!B2:D200");3;0) تقبل تحياتى
  2. لا يوجد حدث استدعاء للكود سواء زر امر او تنشيط الورقة او .... لهذا تم اضافة زر امر llllllllllllllll - Copy.rar
  3. اخى الكريم اتفهم استخدامك لهذا الكم الكبير من التكست بوكس .. ولكن !!! جرب المرفق وابدى ملاحظاتك Book1.rar بالمرفق كود الترحيل فقط اما عن اكواد الاستدعاء والتعديل والحذف قم بفتح موضوع جديد لكل منهم تقبل تحياتى
  4. اخى الكريم لم افهم المطلوب جيداً ارفق ملف اكسيل مشروح فية المطلوب.. وان شاء الله تجد المساعدة تقبل تحياتى
  5. قم بمسح كود الترقيم وفى الكود الاخر ...فى نهايتة... اى قبل الجملة End Sub الصق هذا الكود If Not Intersect(Target, Range("E10:E60")) Is Nothing Then Range("c10:c60").ClearContents s = 0 For T = 10 To 60 If Cells(T, 5) > "" Then s = s + 1 Cells(T, 5).Offset(0, -2).Value = s End If Next End If تقبل تحياتى
  6. لا يوجد مرفق ومع ذلك يمكنك استخدام الكود التالى حيث يبدأ الترقيم من A4 (يمكنك تغييرها ) الى الخلية التى بها 0.00 Dim k, i As Long, n As Long بالخلية المطلوبة A4 اذا اردت تغيير خلية بداية التسلسل فقط استبدلى With Range("A4:A" & Range("A" & Rows.Count).End(xlUp).Row) k = .Value For i = 1 To UBound(k, 1) If Len(k(i, 1)) = 0 Then n = n + 1 k(i, 1) = n End If Next .Value = k End With
  7. جرب المرفق ترحيل_3.rar
  8. م. ياسر فتحى اسأل الله ان يشفى والدك ويعافية بخصوص المعادلة استخدم COUNTA لعد الخلايا غير الفارغة (النصية والرقمية وقيم الفراغ) =COUNTA(B4:B38) ويمكنك استخدام الدالة COUNTIF لعد القيم النصية هكذا =COUNTIF(B4:B38;"><") او هكذا =COUNTIF(B4:B38;"*") اما وعن الخطأ فهو ناتج عن صياغة المعادلة حيث استخدمت حضرتك Count وهى لعد القيم الرقمية واستخدمت معها كمعامل ثانى شرط ">0" وهذه الدالة لا تعد بشرط وانما COUNTIF هى دالة العد بشرط خالص تحياتى
  9. استبدل الكود السابق بهذا الكود Private Sub Worksheet_Change(ByVal Target As Range) If Target.Cells.Count > 1 Or IsEmpty(Target) Then Exit Sub If Not Intersect(Target, Range("D6:D115")) Is Nothing Then If Target.Value = 4 Then Target.Offset(, 2).ClearContents End If End Sub
  10. اخى الكريم يمكن جعل الكود ينشط تلقائى عند تغير قيمة الخلية المرادة هنا D5 Private Sub Worksheet_Change(ByVal Target As Range) If Target.Cells.Count > 1 Or IsEmpty(Target) Then Exit Sub If Target.Address = "$D$5" Then If Target.Value = 4 Then Range("F5").ClearContents End If End Sub جرب المرفق مسح محتوى_2.rar
  11. اخى الكريم لا يمكن لمعادلة مسح محتويات خلية اخرى ولهذا لابد من استخدام الاكواد وقد افادك استاذنا القدير / ياسر خليل بالكود المطلوب تقبل تحياتى
  12. الاخت الفاضلة صحيح انك قد وضحتى المطلوب تماما ولكن لم تذكرى حدث تنفيذ الكود .. اى .. كيف ينفذ الكود .. من خلال زر امر ام عند تنشيط الصفحة الكود المستخدم فى الترتيب استناداً الى عدم فراغ خلايا العمود C وينفذ عند تنشيط الصفحة عموماً اليكى الملف التالى وابدى ملاحظاتك ع بنات اغسطس 555_3.rar
  13. اخى الكريم طلبك غير واضح قم بادراج ملف اكسيل موضح فية طلبك تماماً ... وان شاء الله تجد المساعدة تقبل تحياتى
  14. اخى الكريم هذا هو عمل الكود السابق !!!!!! - وعن الاخفاء فقط ضع هذا السطر فى نهاية كود ترحيل الفاتورة ومسح بياناتها Range("C10:J60").Borders.LineStyle = xlNone اما وان اردت كود يقوم باضافة تسطير حال اضافة قيمة الى العمود E ومسح التسطير حال حذف تلك القيمة Private Sub Worksheet_Change(ByVal Target As Range) If Target.Cells.Count > 1 Then Exit Sub If Not Intersect(Target, Range("E10:E60")) Is Nothing Then If Target.Value <> "" Then Target.Offset(0, -2).Resize(1, 8).Borders.LineStyle = xlDot Else Target.Offset(0, -2).Resize(1, 8).Borders.LineStyle = xlNone End If End If End Sub
  15. اخى الكريم استبدل الكود السايق بهذا الكود Private Sub Worksheet_Change(ByVal Target As Range) If Target.Cells.Count > 1 Then Exit Sub If Not Intersect(Target, Range("E10:E60")) Is Nothing Then With Target.Offset(0, -2).Resize(1, 8) .Borders.LineStyle = xlDot End With End If End Sub اما وعن ازالة التسطير عند افراغ الخلايا الافضل ..ان يكون هذا الامر فى حدث ترحيل الفاتورة وافراغ بياناتها .... من خلال اضافة الكود التالى Range("C10:J60").Borders.LineStyle = xlNone تقبل تحياتى
  16. اخى الكريم جرب المرفق وابدى ملاحظاتك الكود يقوم بالتسطير حال اضافة قيمة الى خلايا العمود C العطارتمسنا_2015_07_21.zip
  17. استاذى الحبيب / الشهابى استخدام الدالة INDIRECT ليس لسبب معين .. ولكن نظرا لان المطلوب كان غير واضح تماما حتى لصاحب الموضوع فكرت فى اكثر من طريقة استخدمت فيها INDIRECT ثم هذه الطريقة ولم يخطر ببالى صراحة هذا التعديل عمل رائع استاذنا الفاضل .. جزاك الله خيراً خالص تقديرى واحترامى لشخصكم الكريم
  18. السلام عليكم اخى الفاضل .. هناك مشكلة بالملف المرفق... لا استطيع تحميلة ...راجع الامر تقبل تحياتى
  19. اخى الكريم عدد الاعمدة كبير جداً ومن ثم عرض الجدول اكبر من ان يظهر بالكامل فى ورقة الطباعة لهذا هل هناك اعمدة معينة تريد طباعتها... ام اننى لم افهم المطلوب بشكل جيد ...
  20. اخى واستاذى الحبيب ابو البراء كلام حضرتك شرف كبير لى .... جزاك الله خيراً خالص حبى وتقديرى لشخصكم الكريم
  21. استاذى الحبيب ياسر اسمح لى ان اقدم مشاركة لاثراء الموضوع ... بإستخدام المعادلات اخى الكريم الملف المرفق قائم على فكرة اضافة قيمة الدفعة ليظهر اجمالى الدفعات المسددة والمبلغ المتبقى تلقائى ايرادات KG.rar
  22. اخى الكريم يمكنك استخدام الكود التالى فقط ضعة فى الخلية C2 وقم بالسحب =IF(B2>0;MIN(INDIRECT("A"&ROW()+1&":A"&COUNT(A1:A500)));"") تقبل تحياتى
  23. اخى الكريم اليك احد الحلول ..... ولعلك تجد عند اساتذتى افضل منها If Date <= DateSerial(2015, 8, 20) Then 'code هنا يوضع Else End End If فكرة هذا الكود هو التنفيذ حال ان التاريخ اقل من او يساوى تاريخ معين تقبل تحياتى
  24. بعد اذن استاذى القدير ياسر خليل اخى الكريم نظراً لان ادخال قيمة داخل خلية تحوى معادلة يؤدى الى حذف المعادلة الموجودة وتحتفظ الخلية بالقيمة المدخلة والان الاعمدة التى تريد تطبيق المعادلة عليها لا يتم حسابها من خلال معادلة اخرى وانما يتم ادخال قيمتها بشكل يدوى لذلك انت بحاجة الى كود VBA وليس معادلة يمكنك استخدام الكود التالى فى حدث ورقة العمل Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("AD2:AD50000")) Is Nothing Then i = Cells(Target.Row, 4).Value Cells(Target.Row, 4).Value = i - (i / 30 * Target.Value) ism = Cells(Target.Row, 10).Value Cells(Target.Row, 10).Value = ism - (ism / 30) * Target.Value isu = Target.Offset(0, -14) Target.Offset(0, -14).Value = isu - (isu / 30) * Target.Value isuu = Target.Offset(0, -13) Target.Offset(0, -13).Value = isuu - (isuu / 30) * Target.Value End If End Sub اليك الملف المرفق مرتب.rar
×
×
  • اضف...

Important Information