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

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

قام بنشر

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

بلاش الألغاز الصعبة دي ..عايزين حاجة سهلة كدا على أد مستوانا ..

عموما شوف دا ينفع (مش عاجبني بس أهو حاجة نتقدم بيها عشان الصقر مياكلش وشي)

Merge UnMerge.rar

  • Like 1
قام بنشر

السلام عليكم

هذا حل بخصوص دمج الخلايا و الغاء الدمج مهوش بعيد عن حل الاخ ياسر يشبهلو تقريبا مع شوية تغيرات

Sub MergeCells()
Dim wSh As Worksheet: Set wSh = ActiveSheet
Dim lLrw     As Long:  lLrw = wSh.Cells(wSh.Rows.Count, 1).End(xlUp).Row
Dim iI  As Integer
    Application.DisplayAlerts = False
For iI = 2 To lLrw
If wSh.Range("A" & iI - 1) = wSh.Range("A" & iI) Then wSh.Range("A" & iI - 1 & ":A" & iI).Merge
Next
    Application.DisplayAlerts = True
End Sub

Sub UnMergeCells()
Dim wSh As Worksheet: Set wSh = ActiveSheet
Dim lLrw     As Long:  lLrw = wSh.Cells(wSh.Rows.Count, 1).End(xlUp).Row
Dim iI  As Integer
    Application.DisplayAlerts = False
For iI = 1 To lLrw
If wSh.Range("A" & iI).MergeCells Then wSh.Range("A" & iI).UnMerge: wSh.Range("A" & iI + 1) = wSh.Range("A" & iI)
Next
    Application.DisplayAlerts = True
End Sub

قام بنشر

 اخي ياسر الكود يعمل جيداً

لكن ينقصه حاجة

اذا كان عدد الخلايا  المتتالية والمتساوية اكثر من خليتين انه يتوقف عن العمل بشكل صحيح

هل تريد ان ارسل الكود الذي كتبته انا او لسه بدري شوية

قام بنشر

نورت الموضوع أستاذي الكبير عبد الله باقشير

مشكور على تشريفك للموضوع .. ويا ريت متحرمناش من لغز (بس يكون على أد مستوانا .. :yes: )

 

الأخ سليم تفضل المرفق التالي فيه ما تريد

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

Merge UnMerge YK.rar

قام بنشر

الله الله على الجمال والروعة ..

بسم الله ما شاء الله تبارك الله ..

ملف في منتهى الروعة والإبداع

بارك الله فيك ولا حرمنا من إبداعاتك التي لا تنقطع

 

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

 

تقبل تحياتي وتقديري واحترامي وحبي وأشواقي :fff: :fff:

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

بعد إذن العمالقة .. (هذا اللغز للمبتدئين فقط) :rol:

اختصر الكود التالي في سطر واحد :yes:

Sheet1.Range("A1:A20").Copy
Sheet1.Range("B1").PasteSpecial
Application.CutCopyMode = False   

ممنوع الإجابة من الأعضاء المميزين أو الخبراء أو المشرفين ..هذا اللغز للمبتدئين في عالم البرمجة :geek:

الكود يقوم بنسخ النطاق A1:A20 إلى الخلية B1 كأول خلية يتم لصق البيانات بها ، ثم يتم إلغاء خاصية النسخ واللصق ..أي مسح الحافظة Clipboard

المطلوب : اختصار الكود في سطر واحد متجاوزين الحافظة (بدون تخزبن البيانات في الحافظة) .. ممنوع استخدام العلامة : حيث أن هذه العلامة تستخدم لكتابة سطر جديد في نفس السطر هكذا

Sheet1.Range("A1:A20").Copy: Sheet1.Range("B1").PasteSpecial: Application.CutCopyMode = False

هذا غير مسموح به ..غير مسموح استخدام علامة :

 

في انتظار إجابات الأعضاء ..(جمد قلبك وحاول ..الموضوع بسيط ..) :power:

تم تعديل بواسطه YasserKhalil
قام بنشر

كفاية شغل محترفين يا أخ سليم :smile:

أنا متأكد إن عندك الحل ، وممكن يكون حل أفضل من الحل اللي عندي كمان... :yes:

بس ندي فرصة للأعضاء يشاركوا   :frown3:  ..عشان ميكونش الموضوع مقتصر على بعض الأعضاء دون الكل

تقبل تحياتي أخي وحبيبي في الله سليم :fff: :fff:

قام بنشر

استاذ / ياسر خليل
و اساتذتى الذين تفاعلوا مع الموضوع
 

بارك الله فيكم
اسجل اعجابى بتنوع الافكار و الابداعات

لأنه يجعل هناك روح فريق و تنافس ابداعى بين اعضاء المنتدى


تحياتى و كل عام و انتم بخير

قام بنشر

مشكور على مرورك العطر أخي جلال

بس إنت داخل الموضوع وايدك فاضية (المرة الجاية تجيب معاك لغز ومتدخلش فاضي علينا)

نورت الموضوع بمشاركتك وكلامك الطيب

تقبل تحياتي

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

إخواني المبتدئين يبدو أن الألغاز لا تروقهم

عموماً ..نترك لغز المبتدئين ، ونطرح لغز للمتقدمين قليلاً ...

اللغز مطلوب حله في سطر واحد فقط :yes:

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

ممنوع استخدام الـ Name Manager .. ممنوع استخدام علامة : للفصل بين الأسطر في سطر واحد

سطر واحد فقط يفي بالغرض ..

في انتظار الهمة

تم تعديل بواسطه YasserKhalil
قام بنشر

جزيت خيراً أخي عبد المنعم

ممكن نختصر كود في سطرواحد :

Range(Cells(1, 1), Cells(ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row, ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Column)).Select

بس بردو مش دا المطلوب .. فيه سطر مختصر عن كدا

قام بنشر

أخي سليم بارك الله فيك يا غالي

يا منور الموضوع بشكل دائم غير منقطع

الكود أعطاني خطأ .. مش عارف إذا كان الخطأ بيظهر عند الكل ولا لا ..لأنك أكيد جربت الكود :

عموما لما جربته بالشكل ده اشتغل تمام

Range(Cells(1, 1), Cells(ActiveSheet.UsedRange.Rows.Count, ActiveSheet.UsedRange.Columns.Count)).Select

تقبل تحياتي

قام بنشر

عندي لم يحصل اي خطأ

ربمل وضعت الكود في module  مستقل و اذا كان هناك صفحات اخرى في المصنف تحتوي على بيانات ،فأن اكسل لا يعرف الى اي صفحة يتجه

ربما  كان هذا السبب والله أعلم.

قام بنشر

أخي الغالي سليم

أنا عادة لا أعمل إلا مع ورقة عمل واحدة فقط

الخطأ سببه عدم إحساسه بالكائن Activesheet .. ولا أعرف السبب في أن يعمل لديك ولا يعمل لدي .. أنا أعمل على نسخة أوفيس 2007 ... قد تكون النسخ مختلفة !!

قام بنشر

فين الجدول ؟ يبدو أن إرفاق الملفات لا يعمل ..

جربت من شوية إرفاق ملف ولم يعمل معي ...

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

  • Like 1

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