Makro zum Löschen

Bild

Betrifft: Makro zum Löschen
von: Muggi
Geschrieben am: 24.09.2003 09:59:27

Hallo Forengemeinde,

ich bräuchte bitte für folgende Aufgabe ein Makro

Wenn in Spalte E der Wert Q016 erscheint,
dann lösche in Spalte D die dazugehörige Kundnennummer und alle gleichlautenden Kundennummern (Dubletten) in Spalte D.
Die Löschung sollte zeilenweise erfolgen.

Vielen Dank im Voraus !!!

Bild


Betrifft: AW: Makro zum Löschen
von: Guido Palacios
Geschrieben am: 24.09.2003 10:11:16

Hi,

mit folgender Prozedur löscht du die Zeile,
wenn in Spalte "E" der Wert Q016 eingetragen wird...
Den Rest muss dir jemand anderes erklären..
..leider keine Zeit..

Grüße
Guido P.
-----------------------------------------

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Column = 5 Then
        If Target.Value = "Q016" Then
            Target.Select
            Selection.Delete Shift:=xlUp
        End If
    Else
    
    End If
End Sub

-----------------------------------------


Bild


Betrifft: AW: Makro zum Löschen
von: WernerB.
Geschrieben am: 24.09.2003 10:17:11

Hallo Muggi,

wie gefällt Dir dieses Makro:


Option Explicit

Sub Muggi()
Dim c As Range
Dim Kn As String
Dim laRD As Long, laRE As Long, i As Long
    Application.ScreenUpdating = False
    laRE = Cells(Rows.Count, 5).End(xlUp).Row
    For i = 1 To laRE
      If Cells(i, 5).Value = "Q016" Then
        Kn = Cells(i, 4).Value
        laRD = Cells(Rows.Count, 4).End(xlUp).Row
        For Each c In Range("D1:D" & laRD)
          If c.Value = Kn Then
            c.ClearContents
          End If
        Next c
      End If
    Next i
    Application.ScreenUpdating = True
End Sub

Viel Erfolg wünscht
WernerB.

P.S.: Das Forum lebt auch von den Rückmeldungen der Fragesteller an die Antworter (siehe Forums-FAQ).


Bild


Betrifft: AW: Makro zum Löschen
von: muggi
Geschrieben am: 24.09.2003 10:23:12

Hallo Werner B.
dein Makro läuft richtig, könntest Du aber bitte die zeilenweise Löschung mit einbauen ?
Ich wäre Dir zu ewigem Dank verpflichtet !

Gruß
Muggi


Bild


Betrifft: AW: Makro zum Löschen
von: WernerB.
Geschrieben am: 24.09.2003 12:01:09

Hallo Muggi,

könntest Du bitte näher erläutern, was Du unter "zeilenweiser Löschung" verstehst?
Falls Du damit meinst, dass jeweils die komplette Zeile gelöscht werden soll, soll dann die Zeile mit "Q016" ebenfalls gelöscht werden?


Gruß WernerB.


Bild


Betrifft: AW: Makro zum Löschen
von: muggi
Geschrieben am: 24.09.2003 13:45:43

Hallo WernerB.,

Du meinst das schon richtig.
Bei deinem Makro werden bisher nur die Werte in Spalte D gelöscht. Könntest Du das Ganze so umschreiben, dass eben nicht nur der Zellenwert, sondern jeweils die ganzen Zeilen (incl. der Zeile mit Q016) gelöscht werden?

Gruß
Muggi


Bild


Betrifft: AW: Makro zum Löschen
von: WernerB.
Geschrieben am: 24.09.2003 14:54:59

Hallo Muggi,

das sollte Deine Träume wahr werden lassen:


Option Explicit

Sub Muggi()
Dim Kn As String
Dim laRD As Long, laRE As Long, i As Long, j As Long
    Application.ScreenUpdating = False
    laRE = Cells(Rows.Count, 5).End(xlUp).Row
    For i = laRE To 1 Step -1
      If Cells(i, 5).Value = "Q016" Then
        Kn = Cells(i, 4).Value
        laRD = Cells(Rows.Count, 4).End(xlUp).Row
        For j = laRD To 1 Step -1
          If Cells(j, 4).Value = Kn Then
            Cells(j, 1).EntireRow.Delete
          End If
        Next j
      End If
    Next i
    Application.ScreenUpdating = True
End Sub



Gruß WernerB.


Bild


Betrifft: AW: Makro zum Löschen
von: muggi
Geschrieben am: 24.09.2003 15:24:21

Ich bin sprachlos vor Begeisterung !!!
Genial !!!

Gruß

Muggi


 Bild

Beiträge aus den Excel-Beispielen zum Thema " Übergabe Feldvariablen in Funktionen"