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

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

قام بنشر
4 ساعات مضت, عبد القادر محمد مهدى said:

اريد أن ادخل 2كود فى صفحة وكل كود يبدأ بهذا السطر

هل احذف هذا السطر من الكود الثانى؟

ورقة واحدة

 

لا اعلم ماذا لديك في الكود 2 من سطور ولكن لا يمكن تسمية اجرائين Procedures بنفس الاسم

قام بنشر

اسلام عليكم

اريد أن ادخل هذان الالكود فى صفحة واحدة ولكن يحدث تعارض بينهما

الكود الأول

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Cells.Count > 1 Then Exit Sub
     If Not Intersect(Target, Range("d1:d10000")) Is Nothing Then
      VBA.Calendar = vbCalGreg
      If IsEmpty(Target) Then
         Target(1, 2).ClearContents
    Else
         With Target(1, 2)
               .Value = Date
               .EntireColumn.AutoFit
           End With
       End If
End IfEnd Sub

==============================

الكود الثانى

Private Sub Worksheet_Change(ByVal Target As Range)
Dim MyRows As Integer, MyRange As Range, MyRange1 As Range
On Error GoTo 1
With Range("kh_test_1")
    MyRows = .Rows.Count - 1
    Set MyRange = .Range(Cells(MyRows, 1), Cells(MyRows, 4))
    If Not Intersect(Target.Cells(1, 1), MyRange.Cells) Is Nothing _
    And Target.Value <> "" Then
        MyRange.EntireRow.Insert
        Set MyRange1 = .Range(Cells(MyRows, 1), Cells(MyRows, 4))
        MyRange1.Value = MyRange.Value
        MyRange.ClearContents
    End If
End With
1 End Sub
 

قام بنشر (معدل)

لماذا لا تدمجهما تحت واحد ؟

 

هكذا مثلا ً

 

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim MyRows As Integer, MyRange As Range, MyRange1 As Range

    If Target.Cells.Count > 1 Then Exit Sub
    
    If Not Intersect(Target, Range("d1:d10000")) Is Nothing Then
        VBA.Calendar = vbCalGreg
        If IsEmpty(Target) Then
            Target(1, 2).ClearContents
        Else
            With Target(1, 2)
                .Value = Date
                .EntireColumn.AutoFit
            End With
        End If
    End If
    
    On Error GoTo 1
    With Range("kh_test_1")
        MyRows = .Rows.Count - 1
        Set MyRange = .Range(Cells(MyRows, 1), Cells(MyRows, 4))
        If Not Intersect(Target.Cells(1, 1), MyRange.Cells) Is Nothing _
           And Target.Value <> "" Then
            MyRange.EntireRow.Insert
            Set MyRange1 = .Range(Cells(MyRows, 1), Cells(MyRows, 4))
            MyRange1.Value = MyRange.Value
            MyRange.ClearContents
        End If
    End With
1
End Sub

 

اقتباس

 

تم تعديل بواسطه أبو عبد النور
قام بنشر (معدل)

أشكرك أستاذى/ أبو عبد النور

العلم نور

تم الدمج والحمد لله الكود شغال 100%

أشكرك استاذى الفاضل

جعل الله كل أعمالك الطيبة فى ميزان حسناتك

تحياتي لك استاذي

تم تعديل بواسطه عبد القادر محمد مهدى

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

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

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

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

سجل حساب جديد

تسجيل دخول

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

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

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

Important Information