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

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

قام بنشر

السلام عليكم

عندي ملف اكسل فيه ارقام لعملاء بعض العملاء يطلب ازالته من القائمة، أنشأت ورقة فيها قائمة يتم ازالتهم باستمرار

هل يمكن أن تكون هذه القائمة مربوطة تلقائياً حيث أي رقم اضيفه يتم حذفه من القائمة تلقائياً؟

(لو كان على شكل عمود في نفس الصفحة بيكون افضل من ورقة مستقلة)   

 

الملف مرفق

officena.xlsx

قام بنشر

وعليكم السلام ورحمة الله وبركاته

منذ ساعه, رحااال said:

(لو كان على شكل عمود في نفس الصفحة بيكون افضل من ورقة مستقلة)   

 

في نفس الصفحة في العمود E بمكن تغييره من الكود 

الكود 

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim cell As Range
    Dim foundCell As Range
    Dim ws As Worksheet
    Dim rng As Range
    Dim lastRow As Long
    Dim deleteRow As Long
    
    Set ws = Me
    Set rng = ws.Range("A:A")
    
    If Not Intersect(Target, Me.Range("E:E")) Is Nothing Then
        Application.EnableEvents = False
        
        For Each cell In Intersect(Target, Me.Range("E:E"))
            If cell.Value <> "" Then
                Set foundCell = rng.Find(What:=cell.Value, LookIn:=xlValues, LookAt:=xlWhole)
                If Not foundCell Is Nothing Then
                    deleteRow = foundCell.Row
                    foundCell.Delete xlShiftUp
                Else
                    MsgBox "رقم العميل " & cell.Value & " غير موجود في قائمةالعملاء .", vbExclamation, "رقم غير موجود"
                End If
            End If
        Next cell

        lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row
        Set rng = ws.Range("A2:A" & lastRow)
        rng.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlNo

        Application.EnableEvents = True
    End If
End Sub

الملف

officena.xlsb

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

وعليكم السلام ورحمة الله وبركاته

في نفس الصفحة في العمود E بمكن تغييره من الكود 

الكود 

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim cell As Range
    Dim foundCell As Range
    Dim ws As Worksheet
    Dim rng As Range
    Dim lastRow As Long
    Dim deleteRow As Long
    
    Set ws = Me
    Set rng = ws.Range("A:A")
    
    If Not Intersect(Target, Me.Range("E:E")) Is Nothing Then
        Application.EnableEvents = False
        
        For Each cell In Intersect(Target, Me.Range("E:E"))
            If cell.Value <> "" Then
                Set foundCell = rng.Find(What:=cell.Value, LookIn:=xlValues, LookAt:=xlWhole)
                If Not foundCell Is Nothing Then
                    deleteRow = foundCell.Row
                    foundCell.Delete xlShiftUp
                Else
                    MsgBox "رقم العميل " & cell.Value & " غير موجود في قائمةالعملاء .", vbExclamation, "رقم غير موجود"
                End If
            End If
        Next cell

        lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row
        Set rng = ws.Range("A2:A" & lastRow)
        rng.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlNo

        Application.EnableEvents = True
    End If
End Sub

الملف

officena.xlsb 16.12 kB · 2 downloads

 

 

 

لقطة شاشة 2024-11-26 210408.png

قام بنشر
8 ساعات مضت, عبدالله بشير عبدالله said:

وعليكم السلام ورحمة الله وبركاته

في نفس الصفحة في العمود E بمكن تغييره من الكود 

الكود 

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim cell As Range
    Dim foundCell As Range
    Dim ws As Worksheet
    Dim rng As Range
    Dim lastRow As Long
    Dim deleteRow As Long
    
    Set ws = Me
    Set rng = ws.Range("A:A")
    
    If Not Intersect(Target, Me.Range("E:E")) Is Nothing Then
        Application.EnableEvents = False
        
        For Each cell In Intersect(Target, Me.Range("E:E"))
            If cell.Value <> "" Then
                Set foundCell = rng.Find(What:=cell.Value, LookIn:=xlValues, LookAt:=xlWhole)
                If Not foundCell Is Nothing Then
                    deleteRow = foundCell.Row
                    foundCell.Delete xlShiftUp
                Else
                    MsgBox "رقم العميل " & cell.Value & " غير موجود في قائمةالعملاء .", vbExclamation, "رقم غير موجود"
                End If
            End If
        Next cell

        lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row
        Set rng = ws.Range("A2:A" & lastRow)
        rng.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlNo

        Application.EnableEvents = True
    End If
End Sub

الملف

officena.xlsb 16.12 kB · 2 downloads

 

نفس المشكلة، ألاحظ أن الامتداد يختلف عن ملفات الاكسل عندي، لو استطعت أن تحفظها بامتداد اكسل الطبيعي

 

قام بنشر
20 ساعات مضت, أبومروان said:

وعليكم السلام ورحمه الله وبركاته

بعد اذن استاذي @عبدالله بشير عبدالله حل اخر بالمعادلات

=IF(ISNA(VLOOKUP(A1, 'إزالة من القائمة'!A:A, 1, FALSE)), "إبقاء", "إزالة")

 

image.png.6bcae7e2ff92c84766011964ef97a5c4.png

أهلاً أبو مروان وجزاك الله خير ،،، المقصد أن تتم الإزالة فعلياً من القائمة وليس يظهر ازالة وابقاء

أرغب بعمود أو ورقة أضعف يها اي رقم من القائمة الرئيسية فيتم ازالته من القائمة الرئيسية .... ان شاءالله الفكرة وضحت

قام بنشر

السلام عليكم

هل فتح الملف  الثاني لم تخبرنى بالنتيجة 

يمكنك نسخ الكود ووضعه في حدث الورقة

 كلما كتبت رقما في العمود E يقوم بمسحه من العمود A ويتم نقل البيانات الى اعلى في العمود A لكي لا يبقى فراغ

انتظر ردك

 

 

قام بنشر
3 ساعات مضت, رحااال said:

أهلاً أبو مروان وجزاك الله خير ،،، المقصد أن تتم الإزالة فعلياً من القائمة وليس يظهر ازالة وابقاء

أرغب بعمود أو ورقة أضعف يها اي رقم من القائمة الرئيسية فيتم ازالته من القائمة الرئيسية .... ان شاءالله الفكرة وضحت

اشكرك علي التوضيح اذان كود وملف المرفق استاذنا @عبدالله بشير عبدالله يعمل بدون اذني مشكله ويفي بالمطلوب ان شاء الله 

 

  • Like 1

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

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

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

Important Information