自動化して配布している大規模なデータセットがいくつかあります。テキストとして保存された数値についてユーザーに警告する小さな緑色の三角形を削除したいと考えています。次のコードを使用しましたが、大規模なシートでは非常に遅くなります。
Range(Cells(1, 1), Cells(lastrow, lColumn)).Select
'kill those dang green cell triagles
Dim rngCell As Range, bError As Byte
For Each rngCell In Selection.Cells
For bError = 3 To 3 Step 1
With rngCell
If .Errors(bError).Value Then
.Errors(bError).Ignore = True
End If
End With
Next bError
Next rngCell
ご覧のとおり、回避しようとしているすべてのエラーをループしないことで、すでに 1/7 の時間に短縮されていますが、それでも非常に遅いです。
また、私はすでに知っています
Application.ErrorCheckingOptions.NumberAsText = False
しかし、ユーザーのシステム設定を変更したくないので、使用したくありません。すべてのセルをループせずにループの効果が必要です。セルごとにループせずに範囲全体のチェックを停止するように Excel に指示することはできますか?
これを行うための効果的かつ迅速な方法は非常に役立ちます。前もって感謝します!!