اذهب الي المحتوي
أوفيسنا

الردود الموصى بها

قام بنشر

ههههههههههههههه

تمام بس انا جربت معظمهم شغال ياغالى

يمكن من السهر هيست او يمكن لما وصلت :wink2: هنجت

حبيبى هجرب المعادله

جزاك الله كل خير يا ابو البراء

قام بنشر
5 ساعات مضت, بن علية حاجي said:

السلام عليكم ورحمة الله

لست أدري إن كنت تأخرت في الرد، وهذه معادلة يمكن وضعها في الخلية B1 (أو غيرها) ثم سحبها إلى الأسفل...


=IF(ROW($A1)<=COUNTA($A$1:$A$6);OFFSET($A$1;COUNTA($A$1:$A$6)-ROW($A1);;1);"")

بن علية

ما شاء الله تبارك الله  رائع اخي الكريم

قام بنشر
3 ساعات مضت, ياسر خليل أبو البراء said:

أخي الحبيب بن علية

بارك الله فيك وجزيت خيراً على المعادلة الجميلة والرائعة ..

أخي الغالي ابو يوسف

جزيت خيراً على المشاركة الجميلة وإن كانت مكررة من قبل أخونا الحبيب أحمد الفلاحجي ولكنها مقبولة منك .. ربنا يبارك فيك ومشكور على المشاركة الرائعة

أخي الحبيب أبو بسملة

هوووووووووب جبت حلول كتير في المشاركة الأخيرة ليك وللأسف كلها مش مناسبة !! طبعاً معظمها شغال تمام التمام ..ولكن راعي أن تكون عملية البحث غير مقتصرة على النقل وفقط ..بل يجب أن يتم تجربة كل كود والتعديل عليه بما يتناسب مع الملف.. عايزين بحث وتدقيق وتفحيص وتمحيص ..

وأعتقد إنك وصلت لي !! :wink2:

 

بالنسبة للملحوظة : السطر المشار إليه ليس بكود إنما معادلة توضع في الخلية B1 ثم يتم سحبها لأسفل

اخي ابو البراء

ما زلت انتظر الرد على اقتراحي بتجنب الفراغات في هذا الموضوع

ام ان الاخوان يريدون السمكة وبلاش التعلّم على الصّيد....؟؟؟

 

 

قام بنشر

هي فكرة جيدة ولكن هذا سيشتت الأخوة ..دعنا نركز الآن في نقطة واحدة وربما نطرح الموضوع بعد ذلك بهذه الإضافة الجديدة

ومن لديه حل أيضاً بالنسبة لفكرتك فليتقدم بها ..الموضوع مفتوح للجميع ودعوة عاااااااااااااااااامة للمشاركة

تقبلوا جميعاً وافر تقديري واحترامي

قام بنشر
20 دقائق مضت, محمد الريفى said:

اتفضل اخى واستاذى ياسر اليك حلا اخر


{=INDEX($A$1:$A$6,LARGE(ROW($A$1:$A$6),ROW($A1)))}

145831837240081.jpg

اخي محمد

نريد نطاقاً ديناميكياً يتسع او يضيق مع حجم البيانات

مغ ازال الفراغات اذا وجدت في هذا النطاق

 

قام بنشر

أخي الحبيب محمد الريفي بارك الله فيك وعوداً حميداً ولا تحرمنا من تواجد بيننا

فنحن نشتاق لك ولرؤية مشاركاتك القيمة

أخي الغالي سليم قدم ما لديك من حلول ليستفيد الأخوة فما زال في جرابك الكثير

تقبلوا تحياتي

  • Like 1
قام بنشر (معدل)
منذ ساعه, ياسر خليل أبو البراء said:

أخي الحبيب محمد الريفي بارك الله فيك وعوداً حميداً ولا تحرمنا من تواجد بيننا

فنحن نشتاق لك ولرؤية مشاركاتك القيمة

أخي الغالي سليم قدم ما لديك من حلول ليستفيد الأخوة فما زال في جرابك الكثير

تقبلوا تحياتي

اعزك الله استاذى وحبيبى فى الله ابوالبراء  مشاغل الحياه بعدتنى عن اخوتى واحبابى فى اوفيسنا بل وحتى فى الاكسيل . واتمنى ان اكون بشكل دائم فى وسط اساتذتى واخوتى فى اوفيسنا

واليك اخى واستاذى سليم حسب مافهمت منك اعددت معادلة بنفس الفكره التى طرحتها سابقا مع بعض التغيير

ارجو ان اكون قد فهمت بشكل صحيح

{=IFERROR(INDEX($A$1:$A$25,LARGE(IF($A$1:$A$25<>"",ROW($A$1:$A$25),""),ROW($A1))),"")}

145832887337251.jpg

rev.rar

تم تعديل بواسطه محمد الريفى
  • Like 1
قام بنشر

ايه الحلاوه والجمال ده ياعم سليم

جزاك الله كل خير وعاوزين نشوف اللى لسه بقا متحرمناش ومتشوقناش

تسلم ياغالى

وجزاكم الله كل خير

 

  • Like 1
قام بنشر

معادلة رائعة أخي الحبيب محمد الريفي وتفي بالغرض تماماً

لا فض فوك أخينا محمد الريفي

أخي الغالي سليم بارك الله فيك على هداياك الرائعة والجميلة

أخي الحبيب أحمد الفلاحجي

مشكور على متابعتك الجيدة للموضوعات المختلفة

تقبلوا وافر تقديري واحترامي

  • Like 3
قام بنشر

السلام عليكم ورحمة الله وبركاته

يسعدنى المشاركة معكم فى هذا الموضوع الشيق

أولا : فى حالة وجود الفراغات نستخدم هذا الكود

Sub Transpose_RG()
Dim i As Integer
Dim LR As Integer
Dim arr() As Variant
'=============================================================
[B1:B1000].ClearContents
LR = Cells(Rows.Count, 1).End(xlUp).Row
ReDim arr(1 To LR)
'=============================================================
For i = LR To 1 Step -1
    arr(LR + 1 - i) = Cells(i, 1)
Next
[B1].Resize(LR) = Application.WorksheetFunction.Transpose(arr)
End Sub

وفى حالة اهمال الفراغات نستخدم الكود التالى

Sub Transpose_RG()
Dim i As Integer
Dim ii As Integer
Dim LR As Integer
Dim arr() As Variant
'=============================================================
[B1:B1000].ClearContents
LR = Cells(Rows.Count, 1).End(xlUp).Row
'=============================================================
For i = LR To 1 Step -1
    If Not IsEmpty(Cells(i, 1)) Then
        ii = ii + 1
        ReDim Preserve arr(1 To ii)
        arr(ii) = Cells(i, 1)
    End If
Next
[B1].Resize(ii) = Application.WorksheetFunction.Transpose(arr)
End Sub

 

Transpose.rar

Transpose2.rar

  • Like 4
قام بنشر

جزاك الله كل خير اخى رجب

عت بتغيب كتير هناخدك انقطاع ومش هنقبضك 

ربنا يعينك على مايشغلك ويسرلك احوالك

بالتوفيق اخى الغالى

قام بنشر (معدل)

بارك الله قيك اخي الفاضل رجب

و اسمح لي باضاقة بسيطة على الكود ليتجنب التكرار و يصبح هكذا

Sub Transpose_RG1()
Dim i As Integer
Dim ii As Integer
Dim LR As Integer
Dim arr() As Variant
'=============================================================
[B1:B1000].ClearContents
LR = Cells(Rows.Count, 1).End(xlUp).Row
'=============================================================
For i = LR To 1 Step -1

 x = Application.WorksheetFunction.CountIf(Range("a1:a" & i), Cells(i, 1))
 If x > 1 Or Cells(i, 1) = Empty Then GoTo 1

        ii = ii + 1
        ReDim Preserve arr(1 To ii)
        arr(ii) = Cells(i, 1)
1:
Next
[B1].Resize(ii) = Application.WorksheetFunction.Transpose(arr)


End Sub

 

تم تعديل بواسطه سليم حاصبيا
  • Like 3
قام بنشر

ببساطة ممكن نضغ عمود مسلسل1 2 3 4 5 6 وهكذا امام كل اسم رقم

ثم من DATA نرتب المسلسل من Z TO A

ياتي المطلوب

ارجو الرد على الفكرة

  • Like 1
قام بنشر

اخي محسن الامر ليس متعلقاً بالعدد 6 او 7 أو 50 

يجب ان يكون النطاق ديناميكياً بمعنى انه مهما بلغ عدد الاسماء (زيادة او نقصان ) يثحدث كل شيء (مع غض النظر عن الخلايا الفارغة)

و الا لما لزوم كل ذلك حيث ان  هناك مغادلة أو بالاحرى معادلات تستطيع ان تفي بالغرض

قام بنشر

أخي الكريم محسن ..

يرجى تغيير اللقب من 33 للقب يعبر عن شخصكم الكريم

وبارك الله على فكرتك الجميلة .. بالفعل فكرة جميلة وبسيطة ورائعة وتؤي الغرض بشكل بسيط جداً

تعجبني الأفكار البسيطة والحلول البسيطة .. واصل أخي محسن بلا فواصل .. فأول ارهاصات المبرمج بحق أن يبدع ويطلق العنان للتفكير ويفكر بشكل غير تقليدي

أخي الحبيب سليم بارك الله فيك على حلولك المميزة والرائعة .. لا حرمنا الله منك أبداً

تقبلوا تحياتي .. وفي انتظار المزيد من الأفكار والحلول التي تثري العقول وليس الموضوع فقط ... أكرر الموضوع للمناقشة والبحث وشحذ همم التفكير لأقصى درجة للحصول على جيل جديد يفكر بأسلوب جديد ويساهم في حل المشكلات بشكل إبداعي منقطع النظير

قام بنشر

هذه مشاركتي

اكيد الاخوان افضل مني

افترضت العمود  من B4 الى B28

اريد ان اقلب النتيجة في العمود C

هذا ما جادت به قريحتي

Sub Try()
    Dim xx, dd
    dd = 28
    For xx = 4 To 28
        Cells(xx, 3) = Cells(dd, 2)
        dd = dd - 1
    Next
End Sub

 

  • Like 1
قام بنشر

أبي الغالي أبو يوسف

ينفع تدخل الموضوع وايدك فاضية .. ننتظر منك مساهمات أخرى غير التي ساهمت بها .. أعتقد الموضوع مناسب لك حيث أنك تهوى البحث والتنقيب ، فهذه فرصة لإثراء عمليات البحث في موضوع محدد وإن شاء الله يكون كل أسبوع موضوع جديد ، لمزيد من تقديم الفرص لمن أرد التعلم

أخي الفاضل أبو تركي

مشكور على كلماتك الطيبة ولا تنسى أن مشوار الألف ميل بيبدأ بخطوة والحمد لله إنت ابتديت أكتر من خطوة .. لأن بالفعل التعامل مع الحلقات التكرارية يحتاج لذهن صافي .. في بداية تعلمي للبرمجة كنت أعاني من الحلقات التكرارية (كانت بتخلي دماغي بتلف) لحد ما استوعبتها

تقبلوا وافر تقديري واحترامي

قام بنشر (معدل)

 

عن طريق المعادلة

INDEX

=INDEX($A$1:$A$6;ROWS($A$1:$A$6)-ROWS($A$1:$A2)+1)

56f1be17b515e_22-03-201622-35-22.png.bb7

 

 

تم تعديل بواسطه الجموعي
  • Like 3

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information