2017-05-23 6 views
1
내가 워크 시트에서 모든 # N/A 오류를 제거하려면 다음 줄을 사용하고

:VBA 코드 워크 시트에서 # N/A 오류를 제거 할 수있는

Cells.SpecialCells(xlCellTypeFormulas, xlErrors).Clear 

나는 그것을 재구성 할 수있는 방법 어떤 식 으로든 # N/A 오류가있을 경우에만 제거하려고 시도합니다 (모든 경우가 아니기 때문에 오류가 발생하기 때문에).

도움 주셔서 감사합니다.

답변

1

국가 마일에 의해 가장 좋은 방법은 식을

=IFNA(A1, "") 

또는 동등한

=IF(ISNA(A1), "", A1) 

(복사를 워크 시트에 추가 영역 (또는 다른 워크 시트)를 정의하고 사용하는 것입니다 명백하게).

그런 식으로 구조체 워크 시트의을 손상시키지 않고 셀 변환을 통해 셀을 사용하면 # N/A가 기본 제공 Excel 기능에서 전파되는 경향이 있으므로 계산주기에 문제가 발생할 수 있습니다.

, 당신 해야 사용 VBA가 어떤 이유로, 다음 양식 v 셀의 값을 포함하는 Variant입니다

If v = CVErr(xlErrNA) 

의 코드를 사용하여 특정 # N/A 오류를 감지 할 수 있다면, 그것은 이미 오류 값을 갖는 것으로 설정되었습니다.

0

트랩이 같은 오류 :

Dim rngToFind As Range, PossError As Range 

On Error Resume Next 
Set rngToFind = Cells.SpecialCells(xlCellTypeFormulas, xlErrors) 
On Error GoTo 0 

If Not rngToFind Is Nothing Then 
    For Each PossError In rngToFind 
     If PossError.Text = "#N/A" Then PossError.Clear 
    Next 
End If 
:

Dim rngToFind As Range 

On Error Resume Next 
Set rngToFind = Cells.SpecialCells(xlCellTypeFormulas, xlErrors) 
On Error GoTo 0 

If Not rngToFind Is Nothing Then 
    rngToFind.Clear 
End If 

이 같은 #N/A를 특정 오류 유형을 추가하려는 경우, 당신은이 작업을 수행 할 수