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

قوائم الفصول


waledms
إذهب إلى أفضل إجابة Solved by سليم حاصبيا,

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

انسخ هذه المعادلة الى الخلية F5

و يتم التبديل من الخلية  L8

=VLOOKUP($L$8,{1,"الصف الاول";2,"الصف الثاني ";3,"الصف الثالث";4,"الصف الرابع";5,"الصف الخامس";6,"الصف السادس"},2,0)

 

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

4 دقائق مضت, waledms said:

عند التنفيذ لا يستجيب ويعطى الرسالة المرفقة ........ فلو أمكن عمل قائمة منسدلة فى الخلية F5 ليتم التغيير منها نفسها

بدون عنوان1.png

الملف مرفق

قوائم salim.rar

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

13 دقائق مضت, waledms said:

ولكن لماذا لاتظهر الأسماء وباقى البيانات مثل النوع والديانه وحالة القيد لكل فصل

قوائم salim.rar

انت لم تطلب ذلك

ارفق ملفاً فية بيانات مكتوبة عن كل فصل(حوالي 10اسطر في كل قصل)

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

الملف المرفق به المطلوب الشيت الأول بعنوان الأسماء وبه أسماء التلاميذ وباقى البيانات المطلوب نقلها فى الشيت الثانى المسمى قوائم الفصول

ومعذرة لعدم توضيحى ذلك من البداية

قوائم salim.rar

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

هذه فصول المدرسة كلها 1/1   2/1    1/2    2/2     ......... إلى 1/6 و 2/6  ومكتوب أمام كل مجموعه تلاميذ فصلها( 1/1   2/1    1/2    2/2 .... وهكذا ...... والمطلوب عمل قائمة منسدلة فى شيت القوائم تحتوى على الفصول كلها (  1/1و 2/1  و 1/2 و 2/2 و 1/3و2/3و1/4و2/4و3/4و1/5و2/5 و  1/6 و 2/6) وعند إختيار الفصل من القائمة المنسدلة يظهر فى جدول القوائم أسماء تلاميذ الفصل وبياناتهم......

قوائم salim.rar

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

  • أفضل إجابة

الكود

Option Explicit

Sub Give_Std()
If ActiveSheet.Name <> "قوائم الفصول  " Then GoTo 1
 With Application
  .ScreenUpdating = False
  .Calculation = xlCalculationManual
  End With
Dim Source_Sh As Worksheet, Tar_Sh As Worksheet
Dim Source_Lr%
Dim My_Str As String
Dim R%, C%, i%, t%, m%
Set Source_Sh = Sheets("الأسماء"): Set Tar_Sh = Sheets("قوائم الفصول  ")
Source_Lr = Source_Sh.Cells(Rows.Count, 1).End(3).Row
If Source_Lr < 5 Then Source_Lr = 5
My_Str = Tar_Sh.Range("G5")
Tar_Sh.Range("b7:k41").ClearContents
R = 7:  t = 6
    For i = 5 To Source_Lr
         If Source_Sh.Range("c" & i) = My_Str Then
          t = t + 1
                If t <= 41 Then
                       Tar_Sh.Range("b" & R).Resize(1, 5).Value = Source_Sh.Range("a" & i).Resize(1, 5).Value
                        R = R + 1
                Else
                       R = 7 + m
                       Tar_Sh.Range("G" & R).Resize(1, 5).Value = Source_Sh.Range("a" & i).Resize(1, 5).Value
                       m = m + 1
                 End If
          End If
    Next
1:
  With Application
  .ScreenUpdating = True
  .Calculation = xlCalculationAutomatic
  End With
End Sub

الملف

 

قوائم salim.rar

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

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

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



سجل دخولك الان
×
×
  • اضف...

Important Information