2012-03-14 3 views
2

코드를 실행할 때 내 워크 시트에서 발생하는 # N/A를 제거해야합니다. 왜 그리고 왜 잠시 동안 디버깅을했는지 모르겠지만 아무 소용이 없습니다. 이 문제를 해결하기 위해 할 수있는 일은 무작위로 발생하는 페이지에서 완전히 삭제하는 것입니다. 누구나 알고 있다면, 나와 함께 VBA 코드를 공유하십시오. 간단한 사본을하고의워크 시트를 통해 나타나는 # N/A를 제거하는 방법은 무엇입니까? (VBA for excel Required)

코드 내 피벗 테이블이 대부분의 시간을 변경하기 때문에 내가 다른 컬럼에 해당 코드를 내포 한 다른 시트

thevaluestocopy = Sheets("pivot").Cells(thefirstrow, 1) _ 
    .Resize(thelastrow - thefirstrow, 1) 
    Worksheets("summary").Cells(3, 16) _ 
    .Resize(thelastrow - thefirstrow + 1, 16) = thevaluestocopy 

에 붙여 넣습니다. 그리고 두 번째로 복사 할 때 # N/A가 나타납니다. 왜 그런지 잘 모르겠지만이 작품이 정상적으로 작동한다고 생각합니다.

+1

이 중 일부를 게시하시기 바랍니다 당신의 암호. 코드를 실행 한 결과 일부 셀에서'# N/A '가 발생하면 코드에 문제가있을 가능성이 있습니다. –

+0

나는 시트에서 다른 시트로 간단한 복사 및 붙여 넣기를하고 있습니다.하지만 같은 일을 시도 할 때 # N/A와 함께 값이 나타납니다. 이유를 알고 있다면 공유하십시오. 나는 당신이 내가하려고하는 것을 이해하기에는 너무 짧지 않길 바래, 아니면 고정 된 값의 칼럼을 복사하는 방법으로 나눌 수 있기를 바랍니다. 그 문제를 해결할 수도 있습니다. – user1204868

+0

소스 시트에'# N/A '이 있습니까? 그렇지 않다면'PasteSpecial Values'를 사용하여 @mattboy가 제안한대로 복사하고 붙여 넣기를 할 수 있습니다. –

답변

10

워크 시트의 모든 #N/A 오류 값을 제거하려면이 줄을 실행할 수 있습니다

Cells.SpecialCells(xlCellTypeFormulas,xlErrors).Clear 
+0

감사합니다. 그게 내가 찾는거야! – user1204868

2

나는 잘 모르겠다. 이것은 일반적으로 문제없이 복사 및 붙여 넣기하는 방법입니다.

Sheets("pivot").Range("your range").Copy 
Worksheets("summary").Range("your range").PasteSpecial 

여전히 단순히 현재 코드에서와 같이/모든 #의 N을 제거하려면 UPDATE , 당신은 다음과 같은 몇 가지 코드를 사용할 수 있습니다. 워크 시트는 당신이 시도 할 수 있습니다 수식이 포함 된 경우

Cells.Replace "#N/A","",xlWhole 

:

If WorksheetFunction.IsNA(Cells(row, column)) Then Cells(row, column).ClearContents 
+0

안녕, 당신의 대답을위한 감사합니다! 값이 고정되어 있지 않으므로 몇 가지 검사를 실행해야 할 수도 있기 때문에 "범위"방법을 사용하는 것이 어려울 것이라고 생각합니다. 어쨌든, 제거가 충분합니다. – user1204868

+1

문제 없습니다. 난 당신이하고있는 전체 Resize 일에 익숙하지 않지만 이것은 여전히 ​​범위를 반환 할 것이라고 믿는다. 그래서 Sheets ("pivot") 셀을 쓰면된다. (Theirstrow, 1) .Resize (thelastrow - thefirstrow , 1) .Copy'와'.PasteSpecial'이 작동합니다. – mattboy

관련 문제