| 
    
     |  | つんさん、asakiさん、ichinoseさん 有難う御座いました。 
 ▼Asaki さん:
 >みなさま、こんにちは。
 >
 >>欠番を全て一挙にエクセルの画面に表示する方法です。
 >ichinose さんのテストで最速だったコードから、テスト関連の処理を削除して
 >Sub test3()
 >  Dim ans       As Range
 >  Dim rng       As Range
 >
 >  Set rng = Range(Cells(1, 1), Cells(Rows.Count, 1).End(xlUp))
 >  With Range("b1:b100")
 >    .Formula = "=if(CountIf(" & rng.Address & ",Row())=0,row(),"""")"
 >    .Value = .Value
 >    On Error Resume Next
 >    Set ans = .SpecialCells(xlCellTypeConstants)
 >    If Err.Number = 0 Then
 >      ans.Copy Range("C1")
 >    End If
 >    .ClearContents
 >  End With
 >  Set rng = Nothing
 >End Sub
 >
 >B列を作業列として使い、C列に欠番が表示されます。
 >
 >
 >ichinose さん
 >自由研究、参考になります。
 >個人的には、多分、でれすけ さんご提案のMatchが速いのではと思います。
 >但し、データが昇順または降順になっている または、並べ替えても良い という前提の場合ですが。
 >
 >Evaluate が、結構速いんですね。
 >これがちょっと意外でした。
 
 
 |  |