Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1064to1068
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA für Zahlen mit drei Nullen

VBA für Zahlen mit drei Nullen
07.04.2009 16:27:50
Jeron
Hallo zusammen,
ich bräuchte bitte ein Makro für folgenden Fall: in meiner Spalte liegen drei Sorten von Zahlen vor
1) 0001234 : In Zeile 1) und 2) stehen die gleichen Zahlen, ich brauch aber nur die Zahl aus Zeile 2)
2) 1234 : " " Zeile 1) muss gelöscht werden
3) 0001235: In Zeile 3) steht allein die Zahl und es gibt auch keine Dublette in der Spalte, diese Zahl soll bleiben
Das Makro soll so arbeiten:
Schritt 1. Das Makro soll immer in der ganzen ersten Spalte überprüfen, ob es gleiche Zahlen gibt.
Schritt 2. Wenn es zwei gleiche Zahlen gibt, soll immer die gesammte Zeile mit der Zahl die mit 000... beginnt gelöscht werden.
Schritt 3. Liegen keine gleichen Zahlen vor, soll nichts gelöscht werden
Zur veranschaulichung eine Datei anbei.
Für jede Hilfe bin ich sehr dankbar!!
Viele Grüße aus München
Jeron Bitto

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
so gehts nicht.
07.04.2009 18:01:35
Tino
Hallo,
man könnte etwas machen, aber Du müsstest Dich in der Spalte A für ein Format entscheiden.
Einmal Postleitzahl, einmal Benutzerdefiniert 0000000, damit kann man nichts anfangen.
Gruß Tino
hier mal ein Code
07.04.2009 18:05:07
Tino
Hallo,
hier mal ein Code fürs Format 0000000.
Tabellenname anpassen.
Sub LoescheDatenMit_000()
Dim Bereich As Range



With Sheets("Tabelle1") 'Tabellenname anpassen 
 Application.ScreenUpdating = False
    
    Set Bereich = .Range("A1", .Cells(.Rows.Count, 1).End(xlUp))
    Set Bereich = Bereich.Offset(0, .Columns.Count - 1)
    Bereich.FormulaR1C1 = "=IF(AND(LEFT(TEXT(RC1,""0000000""),3)=""000"",COUNTIF(R1C2:RC2,RC2)>1),0,"""")"

    
    If Application.WorksheetFunction.CountIf(Bereich, 0) > 0 Then
     Bereich.SpecialCells(xlCellTypeFormulas, 1).EntireRow.Delete
    End If

    .Columns(.Columns.Count).Delete
 
 Application.ScreenUpdating = True
End With

End Sub


Gruß Tino

Anzeige

316 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige