By mtornado am Mittwoch, 19. Januar 2022
Veröffentlicht in Excel
Antworten 1
Likes 0
Views 8.8k
Bewertungen 0
Dear all

Wenn ich die n-te Reihe habe (sehr große Zahl). Ich möchte die Duplikate alle 10 Zellen zählen. Zum Beispiel

Ich habe zum Beispiel das folgende Set
2
1
1
1
1
1
1
3
2

Ich muss die Duplikate zählen (unter Berücksichtigung des ersten Duplikats), jeweils 3 Zellen, also die Ausgabe
2
1
3


Irgendwelche Vorschläge
Vielen Dank im Voraus. 
Hallo mtornado,

Gehen Sie wie folgt vor, um alle 10 Zellen doppelte Werte zu entfernen:

  1. Drücken Sie in Ihrem Arbeitsblatt Andere + F11, dann klick Insert > Modul;
  2. Kopieren Sie den Code unten und fügen Sie ihn in das Modulfeld ein.
  3. Presse- F5 Um den Code auszuführen, wird ein angezeigt Kutools for Excel Dialog wie unten gezeigt:
  4.   dialog.png

  5. Gehen Sie zurück zu Ihrem Arbeitsblatt und wählen Sie den Bereich aus. Klicken Sie dann auf OK Klicken Sie auf die Schaltfläche im Dialog.


Sub RemoveDuplicatesValue_10()

Dim xSltRg, xCells, xRg As Range
Dim xStartRg, xEndRg As Range
Dim xSInt, xCount, xRntInt, xNumInt, xF As Integer
On Error Resume Next

xSInt = 10
Set xSltRg = Application.InputBox("Select range:", "Kutools for Excel", , , , , , 8)
If xSltRg Is Nothing Then Exit Sub
Set xSltRg = Application.Intersect(ActiveSheet.UsedRange, xSltRg)
Set xSltRg = Application.Union(xSltRg, xSltRg.Item(1))
xCount = xSltRg.Count
xNumInt = Int(xCount / xSInt)
xRntInt = 0
xRntInt = xCount Mod xSInt
For xF = 1 To xNumInt
Set xStartRg = xSltRg.Item(((xF - 1) * xSInt + 1))
Set xEndRg = xSltRg.Item(xF * xSInt)
Set xCells = xSltRg.Worksheet.Range(xStartRg.AddressLocal & ":" & xEndRg.AddressLocal)
For xInt = xCells.Count To 1 Step -1
Set xRg = xCells.Item(xInt)
If WorksheetFunction.CountIf(xCells, xRg.Value) > 1 Then
xRg.Value = ""
End If
Next
Next
If xRntInt > 0 Then
Set xStartRg = xSltRg.Item(xNumInt * xSInt + 1)
Set xEndRg = xSltRg.Item(xCount)
Set xCells = xSltRg.Worksheet.Range(xStartRg.AddressLocal & ":" & xEndRg.AddressLocal)
For xInt = xCells.Count To 1 Step -1
Set xRg = xCells.Item(xInt)
If WorksheetFunction.CountIf(xCells, xRg.Value) > 1 Then
xRg.Value = ""
End If
Next
End If

End Sub


Beachten Sie, dass Sie die 10 im Code in „N“ ändern müssen, um alle N Zellen doppelte Werte zu entfernen.

Amandas
·
2 Jahren
·
0 Likes
·
0 Stimmen
·
0 Kommentare
·
Vollständigen Beitrag anzeigen