شكرا لك أستاذ عماد
الكود التالى يوجد به صيغتان للإشارة للمدى مع تغيير رقم الصف
لاستجلاب بيانات
الكود يستخلص جدول مدرس من جدول مدرسى كبير
طبعا كل مدرس جدوله فى صف واحد من الجدول الرئيس
لجلب جدول مدرس رقم 2
نحتاج لتغيير رقم الصف
و هكذا حتى نجلب جدول آخر مدرس
Sub tar()
'الإعلان عن المتغيرات
'العناوين
Dim k1 As String
Dim k2 As String
Dim k3 As String
Dim k4 As String
'رقم الصف فى الجدول الأصلى
Dim t1 As Integer
'رقم الصف فى الشيت الثانى الذى ستنسخ إليه الجداول للمدرسين
Dim t2 As Integer
k1 = "مدرسة kemas الإعدادية للبنين"
k2 = "جدول الأستاذ"
k3 = ""
k4 = "اليوم"
t1 = 6
t2 = 2
Sheets("new").Columns("a:l").ClearContents
Application.ScreenUpdating = False
Sheets("new").Range("a1:l500").Font.Bold = True
For i = 1 To 50
'لصق العناوين
Sheets("new").Range("a" & t2).Value = k1
Sheets("new").Range("d" & t2).Value = k2
Sheets("عام").Range("b" & t1).Copy Sheets("new").Range("f" & t2)
'النزول صفا لأسفل
t2 = t2 + 1
Sheets("new").Range("a" & t2) = k4
Sheets("عام").Range("f5:m5").Copy Sheets("new").Range("b" & t2)
t2 = t2 + 1
Sheets("new").Range("a" & t2) = "الأحد"
'نسخ جدول أول أستاذ ليوم الأحد
'طريقةالأستاذ خبور للإشارة للمدى مع المتغير
Sheets("عام").Range("f" & t1 & ":m" & t1).Copy Sheets("new").Range("b" & t2 & ":i" & t2)
'Sheets("عام").Range(("f" & t1), ("m" & t1)).Copy Sheets("new").Range(("b" & t2), ("i" & t2))
'النزول صفا لأسفل
t2 = t2 + 1
'نسخ جدول أول أستاذ ليوم الإثنين
Sheets("new").Range("a" & t2) = "الإثنين"
'طريقة أخرى الإشارة لمدى مع متغير لرقم الصف
Sheets("عام").Range(("n" & t1), ("u" & t1)).Copy Sheets("new").Range(("b" & t2), ("i" & t2))
t2 = t2 + 1
Sheets("new").Range("a" & t2) = "الثلاثاء"
Sheets("عام").Range(("v" & t1), ("ac" & t1)).Copy Sheets("new").Range(("b" & t2), ("i" & t2))
t2 = t2 + 1
Sheets("new").Range("a" & t2) = "الأربعاء"
Sheets("عام").Range(("ad" & t1), ("ak" & t1)).Copy Sheets("new").Range(("b" & t2), ("i" & t2))
t2 = t2 + 1
Sheets("new").Range("a" & t2) = "الخميس"
Sheets("عام").Range(("al" & t1), ("as" & t1)).Copy Sheets("new").Range(("b" & t2), ("i" & t2))
t1 = t1 + 1
t2 = t2 + 2
Sheets("new").Range(("a" & t2), ("i" & t2)) = k3
Next
Application.ScreenUpdating = True
Sheets("new").Activate
Range("a1").Select
End Sub
و مرفق البرنامج نفسه للاطلاع و إبداء الرأى
فى كود جلب جداول المدرسين
و ذلك فى الورقة المسماة
new
فى انتظار الرد
و تقييم هذا الكود البدائى
واقتراح تحسينات عليه
مع الشكر
جدول للتدريب على الكود للرفع.zip