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

Sortieren & doppelte suchen

Sortieren & doppelte suchen
Manuela
Hallo :-)
Ich bin schon seit Stunden dabei irgendwelche Code-Schnippsel zusammen zukopieren, aber irgendwie scheitere ich dabei total :-(. Daher brauche erneut Eure Hilfe bei der Umsetzung von zwei Makros. Hoffentlich könnt Ihr mir dabei helfen..
Makro1
a) Daten A4 bis L nach Spalte B aufsteigend sortieren
b) In Spalte P bei jeder doppelten Zeile aus Spalte B(B4:B) eine "1" schreiben.
zu b) Würde es Sinn machen mit VBA eine Formel in Spalte P zu schreiben ( z.B. =WENN(B4=B5;"1";"") )? Gibt's ne bessere Möglichkeit?
Makro2
a) Komplette Zeile löschen wenn in Spalte P eine 1 steht
Liebe Grüße,
Manu

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Sortieren & doppelte suchen
03.03.2012 21:34:23
Josef

Hallo Manu,
geht auch ein Makro?
Sub manuela()
  
  With ActiveSheet
    With .Range("A4:L" & Application.Max(.Cells(.Rows.Count, 1).End(xlUp).Row))
      .Sort Key1:=.Range("B4"), Order1:=xlAscending, Header:=xlNo
      .RemoveDuplicates Columns:=2, Header:=xlNo
    End With
  End With
  
End Sub



« Gruß Sepp »

Anzeige
AW: Sortieren & doppelte suchen
03.03.2012 22:19:51
Manuela
Hallo,
vielen Dank für Deine schnelle Hilfe! Beim ausführen vom Makro bekomme ich allerdings einen Laufzeitfehler 438 (Objekt unterstützt diese Eigenschaft oder Methode nicht).
Ich finde Deine Idee mit nur einem Makro top, allerdings bin ich mir nicht sicher ob ich diese "1"-Variante in Spalte P besser finde, wenn die Daten visuell geprüft werden sollen. Es wäre z.B. möglich, dass Zelle B4 mit B5 identlisch ist, aber C4 mit C5 nicht. Dann wäre es blöd wenn Zeile 4 bzw. 5 gelöscht wird... mhhh
Bei meinen Testdaten reicht ein einziges Makro, aber es könnte sein, dass ich die andere Variante auch noch brauche. Könntest du mir daher 2 Makros machen? Du würdest mir damit echt einen riesigen gefallen tun :-))
lg,
Manu
Anzeige
AW: Sortieren & doppelte suchen
03.03.2012 22:34:20
Josef

Hallo Manu,
siehst du, die Version ist also doch relevant!
Sub SortierenUndMarkieren()
  On Error GoTo ErrExit
  Application.ScreenUpdating = False
  
  With ActiveSheet
    .Range("A4:L" & Application.Max(4, .Cells(.Rows.Count, 1).End(xlUp).Row)).Sort _
      Key1:=.Range("B4"), Order1:=xlAscending, Header:=xlNo
    With .Range("P4:P" & Application.Max(4, .Cells(.Rows.Count, 1).End(xlUp).Row))
      .Formula = "=IF(COUNTIF($B$4:B4,B4)>1,1,"""")"
      .Value = .Value
    End With
  End With
  
  ErrExit:
  Application.ScreenUpdating = True
End Sub


Sub Loeschen()
  On Error Resume Next
  
  With ActiveSheet
    .Range("P4:P" & Application.Max(4, .Cells(.Rows.Count, 1).End(xlUp).Row)) _
      .SpecialCells(xlCellTypeConstants, xlNumbers).EntireRow.Delete
  End With
  
  On Error GoTo 0
End Sub



« Gruß Sepp »

Anzeige
AW: Sortieren & doppelte suchen
03.03.2012 22:57:58
Manuela
Klasse Sepp, einfach klasse.
Ich versteh dein Code zwar nicht (leider), aber ... DANKE :-)! Bei Gelegenheit musst Du mir Deinen Code nochmal erklären, aber für meinen Zweck bin ich nun erstmal überglücklich das er das macht was ich möchte.
lg,
Manu
AW: Sortieren & doppelte suchen
06.03.2012 08:06:51
Manuela
Hallo Sepp,
ich bräuchte nochmal deine Hilfe. Könntest du deinen Code bitte für mich etwas anpassen?
Dein Code (etwas von mir angepasst):
Sub SortierenUndMarkieren()
On Error GoTo ErrExit
Application.ScreenUpdating = False
With ActiveSheet
.Range("A4:O" & Application.Max(4, .Cells(.Rows.Count, 1).End(xlUp).Row)).Sort _
Key1:=.Range("C4"), Order1:=xlAscending, Header:=xlNo
With .Range("P4:P" & Application.Max(4, .Cells(.Rows.Count, 1).End(xlUp).Row))
.Formula = "=IF(COUNTIF($C$4:C4,C4)>1,1,"""")"
.Value = .Value
End With
End With
ErrExit:
Application.ScreenUpdating = True
' Call Loeschen
End Sub
Vorweg Info: Ich lese meine Daten als CSV ein und schreibe in jede neue Zeile Datum&Uhrzeit (mit Now) in Spalte N ein
Daher hätte ich gern folgende Änderung deines Makros:
- Wenn doppelte Zeilen gefunden wurden, dann schreibe bei der älteren Zeile (-> "Now" steht in Spalte N) die "1" in Spalte P
Schonmal vielen Dank! Könntest Du mir ggf. bei Umsetzung eines weiteren Makros helfen?
LG,
Manu
Anzeige
AW: Sortieren & doppelte suchen
06.03.2012 11:35:12
Manuela
Hab's gelöst :-)
Key1:=.Range("C4"), Order1:=xlAscending, Key2:=.Range("N4"), Order2:=xlDescending

Gruß,
Manu

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige