السلام عليكم
اخي يوسف هذا شرحي للكود
==
For i = 14 To Sheets(1).Cells(100, 2).End(xlUp).Row
هذا السطر لتعريف المتغيير i من الرقم (الصف) 14 وحتى اخر خلية بها بيانات في العمود الثاني (يمتد حتى الصف 100 فقط)
==
With Worksheets((Sheets(1).Cells(i, 10).Value))
هذا السطر يخص اسم الشيت التي سيتم الترحيل اليها
واسم الشيت موجود في الخلية صف i والعمود العاشر من ورقة العمل الاولى
===
x = .Cells(100, 2).End(xlUp).Row + 1
نفس اسلوب تعريف المتغيير i ولكن هذا المتغيير ثابت ويعني رقم صف الخلية التي تلي اخر خلية بها بيانات في العمود الثاني (طبعاً في الشيتات المرحل اليها)
====
الاسطر التالية
.Cells(x, 2) = Sheets(1).Cells(i, 2)
.Cells(x, 3) = Sheets(1).Cells(i, 3)
.Cells(x, 4) = Sheets(1).Cells(i, 4)
بعد تعريف المتغييرين i , x يصبح الترحيل مقرون باخر خلية ليس بها بيانات والعمود الثاني وكذلك العمود الثالث والعمود الرابع
طبعاً الخلايا التي بها المتغيير x يكون موقعها في الشيت المرحل اليه والتي بها المتغيير i تكون في الشيت الأول
والله اعلم