Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1504to1508
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

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

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!
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

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige