اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

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

قام بنشر

السلام عليكم

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

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

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

 

الملف مرفق

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

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.

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

×
×
  • اضف...

Important Information