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

مبتدئ فى عالم الاكواد ومطلوب تطوير الكود للاحسن


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

اساتذتى الاجلاء

بالمرفق ملف به كود يقوم بنسخ مدى معين فى الشيت الاول مرتبط باخر خلية فى العمود b ويقوم بنسخ قيمه وتنسيقاته فى نفس المدى ولكن فى الشيت الثانى

فهل يمكن تطوير وتحسين الكود بشكل افضل

تقبلوا منى كل الحب والتقدير

تحديد مدى ونسخه ولصقه فى صفحه اخرى.rar

رابط هذا التعليق
شارك

السلام عليكم

المقصود بتطويره وتحسينه

هى اختصار السطور ان امكن واضافة الاوامر التى تجعله يعمل بشكل افضل وان يتغضى عن الاخطاء ان وجدت

تقبل شكرى واحترامى لشخصكم الكريم

رابط هذا التعليق
شارك

السلام عليكم

أخى الفاضل

هذه بعض التعديلات أرجو أن تعجبك

Sub نسخ()
Set ws = Sheets("Sheet2")
ws.UsedRange.Clear
x = 4
LR = Cells(Rows.Count, 2).End(xlUp).Row
Application.ScreenUpdating = False
Range("b" & x & ":h" & LR).Copy
With ws
    .Range("b" & x).PasteSpecial xlPasteValues
    .Range("b" & x & ":h" & LR).PasteSpecial xlPasteFormats
End With
Application.CutCopyMode = False
Application.ScreenUpdating = True
Set ws = Nothing
End Sub
  • Like 1
رابط هذا التعليق
شارك

استاذى الفاضل المحترم الحبيب رجب جاويش

تعديلات رائعة جزاك الله كل خير ومنك نتعلم ونستفيد

بعد اذنكم لى استفسار عندما اكون فى شيت 2 او شيت 3 بمعنى اخر عندما اكون فى شيت غير الشيت الاول لا يتم تنفيذ الكود

والمطلوب ان يتم تنفيذ الكود من اى شيت ( يعنى تنفيذ النسخ من الاول للثانى رغم اننى فاتح الشيت الثالث مثلاً عن طريق run للكود )

تقبل احترامى وشكرى ودعائى لك بالصحة والستر والبركه

رابط هذا التعليق
شارك

أخى الفاضل / عادل

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

فى هذه الحالة يكون التعديل كالآتى

Sub نسخ()
Set ws1 = Sheets("Sheet1")
Set ws2 = Sheets("Sheet2")
ws2.UsedRange.Clear
x = 4
With ws1
LR = .Cells(Rows.Count, 2).End(xlUp).Row
Application.ScreenUpdating = False
.Range("b" & x & ":h" & LR).Copy
End With
With ws2
    .Range("b" & x).PasteSpecial xlPasteValues
    .Range("b" & x & ":h" & LR).PasteSpecial xlPasteFormats
End With
Application.CutCopyMode = False
Application.ScreenUpdating = True
Set ws1 = Nothing
Set ws2 = Nothing
End Sub

رابط هذا التعليق
شارك

استاذى الفاضل الحبيب رجب جاويش

زادك الله من فضله وعلمه واحسانه ونفعك به فى الدنيا والاخرة وجعل اعمالك نور لك فى الدنيا والاخرة

زيادة فى التعلم والتحسين

ما رايك اذا جعلنا الكود لا يرتبط باسم الشيت بمعنى اننا مهما غيرنا اسم الشيت يظل الكود يتعامل مع محتويات الشيت الاول ونسخه فى الثانى مهما تغيرت اسمائهما

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

رابط هذا التعليق
شارك

أخى الفاضل / عادل

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

فى هذه الحالة يكون الكود كالآتى

Sub نسخ()
Set ws1 = Sheet1
Set ws2 = Sheet2
ws2.UsedRange.Clear
x = 4
With ws1
LR = .Cells(Rows.Count, 2).End(xlUp).Row
Application.ScreenUpdating = False
.Range("b" & x & ":h" & LR).Copy
End With
With ws2
    .Range("b" & x).PasteSpecial xlPasteValues
    .Range("b" & x & ":h" & LR).PasteSpecial xlPasteFormats
End With
Application.CutCopyMode = False
Application.ScreenUpdating = True
Set ws1 = Nothing
Set ws2 = Nothing
End Sub
رابط هذا التعليق
شارك

استاذى الفاضل المحترم الحبيب رجب جاويش ( دينامو المنتدى )

انار الله لك طريقك للحق واثابك بكل ثانية وبكل حرف تقضيه فى قضاء حوائج الناس فقاضى حوائج الناس فى ظل الرحمن يوم القيامه والله فى عون العبد مادام العبد فى عون اخيه جعل الله دائما عون لك

وليستفيد الجميع تم تجميع الاكواد فى ملف وشرح الاختلاف فى محرر الاكواد

ماكرو لنسخه ولصقه فى صفحه اخرى_وتطور الكود.rar

رابط هذا التعليق
شارك

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



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

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

Important Information