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

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

قام بنشر

إخواني أعضاء المنتدي الكرام بعد سلام الله عليكم ورحمته وبركاته

هذا كود لعمل ترحيل لبيانات التلميذ 

ولكن لا يرحل كل التلاميذ بيعدي 1 أو اثنين

عايز اعرف ايه الخطا

 'هذا الكود للنابغه ساجده العزاوي
' وهي من أهلنا بالعراق أعز الله العراق وأذل أعداءه
'تم في اكتوبر 2017
'كمعطيات المحترم ابو أحمد محمدي
'الهدف من الكود هو استخراج الشهادات
'كل 3 شهادات في صفحه واحدة
'بثلاث معايير
'=*=*=*=*=*
 Dim SHEHADA As Worksheet, DATA As Worksheet
 Dim myArray, targt, targt2 As String
 
    'اسم صفحة المصدر
    Set DATA = Worksheets("ص")
    
     'اسم صفحة الهدف
    Set SHEHADA = Worksheets("جدول الامتحان مع رقم الجلوس ")
'===================
 
   ' targt3 = "5/1"
    targt = SHEHADA.Range("N125").Value & "*"
'===================
C = 0
Application.ScreenUpdating = False
    lr = DATA.Cells(Rows.Count, 2).End(xlUp).Row   'اخر صف به بيانات

' عدد الصفوف الخارجة
'عن التوزيع في ورقة مصدر البيانات
  'هذا السطر في حال شهادات الكل
       For i = 14 To lr      
       'هذا السطر في حال طلب شهادات محدده
     '   For i = sh4.Cells(7, 18).Value To sh4.Cells(7, 19).Value
    '=======
If DATA.Cells(i, 5) Like targt & "*" And C = 0 Then
     Range("E117") = DATA.Cells(i, 2)
            C = C + 1
   ElseIf DATA.Cells(i, 5) Like targt & "*" And C = 1 Then
     Range("E130") = DATA.Cells(i, 2)
            C = C + 1
      ElseIf DATA.Cells(i, 5) Like targt & "*" And C = 2 Then
     Range("E143") = DATA.Cells(i, 2)
            C = C + 1
   ElseIf DATA.Cells(i, 5) Like targt & "*" And C = 3 Then
     Range("E156") = DATA.Cells(i, 2)
            C = C + 1
  ' ElseIf DATA.Cells(i, 101) Like targt & "*" And DATA.Cells(i, 104) Like targt2 & "*" And DATA.Cells(i, 103) Like targt3 & "*" And c = 3 Then
    ' SHEHADA.Range("M51") = DATA.Cells(i, 2)
           ' c = c + 1
            '===
            End If
     If i = lr And C = 4 Then SHEHADA.Range("A149:L160").PrintOut: Exit For
     If i = lr And C = 3 Then SHEHADA.Range("A136:L147").PrintOut: Exit For
    If i = lr And C = 2 Then SHEHADA.Range("A123:L134").PrintOut: Exit For
    If i = lr And C = 1 Then SHEHADA.Range("A109:L121").PrintOut: Exit For
     If i < lr And (Range("E143") = "" Or Range("E156") = "") Then GoTo 1
    If i < lr And C = 4 Then SHEHADA.Range("A109:L160").PrintOut
      C = 0
     Range("E117") = ""
     Range("E130") = ""
     Range("E143") = ""
      Range("E156") = ""
    ' Range("M51") = ""
    
1:
   Next i
     Range("E117") = ""
     Range("E130") = ""
     Range("E143") = ""
      Range("E156") = ""

    ' Range("M51") = ""
   Application.ScreenUpdating = True
End Sub

ولكم جزيل الشكر

انشئ حساب جديد او قم بتسجيل دخولك لتتمكن من اضافه تعليق جديد

يجب ان تكون عضوا لدينا لتتمكن من التعليق

انشئ حساب جديد

سجل حسابك الجديد لدينا في الموقع بمنتهي السهوله .

سجل حساب جديد

تسجيل دخول

هل تمتلك حساب بالفعل ؟ سجل دخولك من هنا.

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

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

Important Information