Excel: Jeśli instrukcja ma numer # nie dotyczy

27

Mam ponad 6000 rekordów, a połowa z nich to formuły, w których brakuje zmiennej, więc wynikają one #N/Az arkusza kalkulacyjnego. Chcę, aby komórka #N/Apozostawiła komórkę pustą, w przeciwnym razie wydrukuj taki ciąg

=IF(AR6347="#N/A","","string in here")

Ale to nie działa ="#N/A", czy jest na to sposób?


źródło

Odpowiedzi:

33

Spróbuj użyć ISNA()funkcji:

=IF(ISNA(AR6347),"","string in here")
RocketDonkey
źródło
zrobi to dla pojedynczych komórek, ale nie pozwoli mi to skopiować 6000 komórek, poddaje się this operation requires the merged cells to be identically sized, czy istnieje sposób, aby to zrobić, więc mogę skopiować to dla wszystkich komórek?
Wygląda na to, że niektóre komórki w kolumnie docelowej są scalone. Zakładając, że potrzebujesz ich, aby pozostać scalone, postępuj zgodnie z instrukcjami z saruman576 w połowie mrexcel.com/forum/excel-questions/74144-find-merged-cells.html (używając Formatopcji znajdowania scalonych komórek). Następnie możesz skopiować formułę do każdej scalonej komórki, a następnie osobno obsłużyć scaloną komórkę. Proponuję jednak zajrzeć do opcji Centralny wybór, jeśli dotyczy ( thenewpaperclip.com/2008/04/15/… ). Mam nadzieję że to pomoże!
patrzyłem na to, a komórki nie zostały scalone (przeszły do ​​formatowania komórek), więc to nie to: /
Czy nigdzie w tej kolumnie nie ma scalonych komórek? Wygląda na to, że dzieje się tak, gdy próbujesz skopiować formułę w dół, jest ona uruchamiana w komórce scalającej, która rozszerza zakres kopiowania w kolumnach, aby objąć całą komórkę (która również zbierze scalone komórki w drugiej kolumnie a następnie je rozwinąć itp.). Jeśli nie potrzebujesz żadnych scalonych komórek, spróbuj zaznaczyć wszystko, a następnie rozłącz komórki (w Excel 2007, Strona główna -> Wyrównanie -> Rozłącz wszystkie komórki [w menu rozwijanym Scal i wyśrodkuj]).
zrobiłeś to, co zasugerowałeś i nadal
8

W programie Excel 2007 i nowszych możesz używać:

= IFERROR (A1; „”)

to replace = "# N / A" lub jakikolwiek inny błąd z pustym ciągiem.

kurp
źródło
5

Użyj iserror()funkcji. Na przykład, gdy vlookup nie znajduje wartości w mojej tabeli, chcę wyświetlić Not foundzamiast #N/A, a następnie wpisuję:

=if(iserror(vlookup(A1,Sheet2!$A$1:$C$360,3,0)),'Not found',vlookup(A1,Sheet2!$A$1:$C$360,3,0))

Tak więc ta formuła mówi tylko: jeśli vlookupfunkcja pobiera błąd, zwróć ciąg 'Not found', w przeciwnym razie zwróć wynik vlookupfunkcji.

Nicolas C.
źródło
1

NAJPROSTSZA METODA

Możesz użyć tego bezpośrednio w komórce z formułą, jeśli chcesz pominąć pośrednie kroki komórki

=IFNA(formula,"text/value if formula result is #N/A")

Spowoduje to umieszczenie wyniku formuły w komórce (jeśli wynik nie jest #N/A) i umieszczenie ciągu tekstowego (lub dowolnej innej wartości podanej jako drugi argument) w komórce zamiast tego, jeśli wynikiem jest formuła #N/A.

Używam go VLOOKUPi INDEX-MATCHprzez cały czas, kiedy nie chcesz, # N / A, aby pokazać. W razie potrzeby zastępuję wynik # N / A pustą komórką („”) lub zerem (0) lub tekstem („ciągiem tekstowym”).

Jeffery Hall
źródło
-1

Użyłem czegoś podobnego, aby ustalić, czy element w A pasuje do elementu w D i nie wyświetla # N / A. Używany do celów prezentacji. = JEŻELI (JEŻELI.BŁĄD (MATCH (A4, $ D 2 $: $ D 11,0)), 0)> 0, „tekst dla PRAWDA”, „tekst dla FAŁSZ”

Kok
źródło
6
Jest to absurdalnie skomplikowana odpowiedź, gdy odpowiedź kurpa opisuje już odpowiedni sposób użycia IFERROR.
fixer1234