hussam031 قام بنشر فبراير 9, 2019 قام بنشر فبراير 9, 2019 تحياتي الاخوة الاعضاء لدي عامو باسماء الموظفين و يجب تسجيلهم في عامود آخر حسب التسلسل و عند انتهاء التسجيل يجب ان اعيد التسجيل من البداية للاسماء ما هي المعادلة الواجب استخدامها مرفق ملف مع الشكر المصنف1.xlsx
سليم حاصبيا قام بنشر فبراير 9, 2019 قام بنشر فبراير 9, 2019 جرب هذه المعادلة =INDEX(A:A,MOD(ROWS($A$1:A1)-1,COUNTA(A:A))+1) الملف مرفق salim_formula.xlsx 1
hussam031 قام بنشر فبراير 9, 2019 الكاتب قام بنشر فبراير 9, 2019 اشكرك استاذ سليم من باب الفضول هل يمكن استخدام الدالة offest؟ امر اخر استاذ سليم من الممكن ان اضيف اسم موظف آخر و بهذه الحالة البيانات القديمة سوف تعدل ؟ كيف يمكن تلافي هذا الامر بحيث ان تمة اضافة موظف جديد يستمر بالعمل القديم و من ثم ياتي اسم الموظف الجديد مع التكرار التالي بعد التكرار الذي لم يوجد به
سليم حاصبيا قام بنشر فبراير 9, 2019 قام بنشر فبراير 9, 2019 يمكنك اضافة و تعديل ما تشاء من الاسماء كله سوف يحدّث بالنسبة offest لم اجربها
hussam031 قام بنشر فبراير 9, 2019 الكاتب قام بنشر فبراير 9, 2019 استاذ سليم في حال قمت بتطبيق المعادلة ووصلت إلى مرحلة اعادة تكرار الاسماء ثم قمت باضافة اسم جديد فإن المعادلة ستقوم بتعديل الترتيب من البداية و تضيف الاسم الجديد للترتيب القديم. الهدف من الملف ان لكل اسم موظف له دور او تسلسل معين لياخذ عمل و من يأتي اخيرا سينتظر دوره الى نهاية التسلسل التالي
سليم حاصبيا قام بنشر فبراير 10, 2019 قام بنشر فبراير 10, 2019 يمكن الحل بواسطة الماكرو الكود Option Explicit Sub Salim_Order() With Sheets("ورقة1") If ActiveSheet.Name <> .Name Then Exit Sub Dim Ful_Rg As Range Dim Part_Rg As Range Dim My_Number: My_Number = [i2] Dim How_many: How_many = [k2] Dim K%, x%, m%: m = 2 Dim last_row If Not IsNumeric(How_many) Or How_many < 1 Then: How_many = 1 How_many = Int(How_many) If Not IsNumeric(My_Number) Or My_Number < 0 Then: My_Number = 0 My_Number = Int(My_Number) If My_Number >= Application.CountA(Range("A:A")) Then: My_Number = 0 .Range("E2", Range("E1").End(4)).ClearContents Set Ful_Rg = .Range("a1", Range("a1").End(4)) Set Part_Rg = Ful_Rg.Resize(Ful_Rg.Rows.Count - My_Number) For x = 1 To How_many - 1 .Range("e" & m).Resize(Part_Rg.Rows.Count).Value = _ Part_Rg.Value last_row = Cells(Rows.Count, "e").End(3).Row m = last_row + 1 Next .Range("e" & m) _ .Resize(Ful_Rg.Rows.Count).Value = Ful_Rg.Value End With End Sub الملف مرفق salim_Macro_For_repetition.xlsm
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.