Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Makro doppelte Werte - leere Zellen

Makro doppelte Werte - leere Zellen
14.07.2016 17:23:29
hammsi
Liebe Ex(cel)perten!
Langsam bin ich süchtig nach diesem Forum. Sicher könnt ihr auch diesmal helfen. Nachfolgend eine Problemstellung, wo untereinander stehende Duplikate so eliminiert werden müssten, dass bloß immer der oberste Begriff stehen bleibt. Wenn ihr das Musterfile öffnet, wird schnell klar, worum's genau geht(Tab 1 soll nachher aussehen wie Tab 2). Vermutlich ist das über ein Makro machbar, doch zählen diese neben Altgriechisch und Poweryoga definitiv nicht zu meinen Stärken ;(
https://www.herber.de/bbs/user/107018.xlsx
Der Vollständigket möchte ich noch ergänzen, dass die Zeilenabstände (= Anzahl an Produkten pro Kunde) immer gleich ist, wobei das Optimum natürlich eine Variante wäre, die sich bloß auf die Werte stützt.
1000Dank again und lg,
Hammsi

Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro doppelte Werte - leere Zellen
14.07.2016 17:27:17
Hajo_Zi
warum nicht einfach Daten, Datentools, Duplikate entfernen?

AW: Makro doppelte Werte - leere Zellen
14.07.2016 17:42:31
hammsi
Danke für die Nachricht! Soweit ich das Duplikate-Entfernen-Tool kenne bleiben die Werte dann halt nicht mehr auf Position, auf der ich sie brauche. Die dürfte sich nicht verändern. Also zumindest, wenn ich die Spalte markiere und das Duplikate-entfernen-Tool anwende. Pls help!
Anzeige
AW: Makro doppelte Werte - leere Zellen
14.07.2016 19:59:53
Werner
Hallo,
probier mal folgenden Code an einer Kopie deiner Datei aus. Der Code ist nicht getestet. Ich habe gerade keinen Computer parat und habe den Code auf einem Tablet geschrieben. Bin also nicht sicher ob es passt.
Wenn es klappt, dann werden zunächst im Blatt 2 die Daten gelöscht, dann die Daten von Blatt 1 nach Blatt 2 kopiert und dann die mehrfachen Einträge in Spalte A und Spalte B entfernt.
Sub Hammsi()
Dim loLetzte As Long
Dim Bereich As Range
Dim Zelle As Range
Sheets("Tabelle2").Cells.ClearContents
Sheets("Tabelle1").Cells.Copy Sheets("Tabelle2").Cells(1, 1)
loLetzte = Sheets("Tabelle2").Cells(Rows.Count, 1).End(xlUp).Row
With Sheets("Tabelle2")
Set Bereich = .Range(.Cells(2, 1), .Cells(loLetzte, 1))
For Each Zelle In Bereich
If Zelle.Value = Zelle.Offset(1, 0).Value Then
Zelle.Offset(1, 0).Resize(0, 1).ClearContents
End If
Next Zelle
End With
End Sub
Gruß Werner
Anzeige
AW: Makro doppelte Werte - leere Zellen
14.07.2016 20:07:26
Werner
Hallo,
vergiss es. Bin einem Denkfehler aufgesessen, wird so nicht gehen.
Gruß Werner
AW: Makro doppelte Werte - leere Zellen
15.07.2016 09:36:39
hammsi
Schade, aber vielen Dank für deine Bemühungen, Werner! Ein kurzer Schimmer der Hoffnung ist immerhin besser als gar keiner ;)
AW: Makro doppelte Werte - leere Zellen
14.07.2016 20:23:32
Daniel
Hi
ohne code so:
1. in einer Hilfsspalte am Tabellenende ab der Zeile 2 folgende Formel eintragen und bis zum Datenende runterziehen.
=Wenn(A2=A1;1;"")

2. mit dem autofilter nach 1 filtern und in den Spalten A und B die Inhalte löschen.
3. Filter aufheben und Hilfspalte leeren.
sieht als code so aus (hier werden die Zeilen nicht per autofilter, sondern über Gehe zu - Inhalte ausgewählt)
With ActiveSheet.Usedrange
With .Columns(.Columns.count).Resize(.Rows.Count - 1).Offset(1, 1)
.formulaR1C1 = "=IF(RC1=R[-1]C1,1,"""")"
Intersect(.SpecialCells(xlcelltypeformulas, 1).EntireRow, Range("A:B")).ClearContents
.ClearContents
end with
End with
so eine Liste ist aber höchst unpraktisch, weil du sie nicht mehr sortieren, filtern und auswerten kannst.
Wenns nur um die Optik geht, würde ich in den betroffenen Zellen die Schriftfarbe auf Weiss setzen, dann kannst du mit der Tabelle ohne Einschränkung weiter arbeiten.
für die Bedingte Formatierung müsstest du so vorgehen:
Markiere die Zellen in Spalte A und B ab Zeile 2 (also ohne die Überschrift) und füge eine Bedingte Formatierung mit dieser Formel als Regel für die schriftfarbe Weiss ein (die Zelle A2 muss die aktive Zelle sein)
=$A2=$A1
Gruß Daniel
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige