水曜日、19 1月2022
  1 返信
  8.8K訪問
親愛なるすべて

n行目(非常に多い)の場合。 10セルごとに重複をカウントしたいと思います。 例えば

たとえば、私は次のセットを持っています
2
1
1
1
1
1
1
3
2

重複を数える必要があります(最初の重複を考慮に入れて)。各3セル、つまり出力は次のようになります。
2
1
3


助言がありますか
よろしくお願いします。 
こんにちはmtornado、

10セルごとに重複する値を削除するには、次のようにします。

  1. ワークシートで、を押します 他の + F11、[OK]をクリックします インセット > モジュール;
  2. 以下のコードをコピーして、モジュールボックスに貼り付けます。
  3. イベント F5 コードを実行すると、 Kutools for Excel 以下に示すようなダイアログ:
  4.   ダイアログ.png
  5. ワークシートに戻り、範囲を選択します。 次に、をクリックします OK ダイアログのボタン。


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


Nセルごとに重複する値を削除するには、コード内の10をNに変更することに注意してください。

アマンダ
添付ファイル(1)
  • ページ:
  • 1
この投稿に対する返信はまだありません。