Mam skoroszyt programu Excel 2010, który zawiera wiele pojedynczych arkuszy. Komórki na jednym z arkuszy są połączone z pojedynczymi komórkami na dwóch innych arkuszach w tym samym skoroszycie. Używam bezpośredniego odwołania do komórki, które zasadniczo mówi, że dowolna wartość wprowadzona do konkretnej komórki na jednym arkuszu również wypełnia komórki na dwóch innych arkuszach. W tym celu użyłem funkcji (=) z odwołaniem do komórki.
Problem, na który wpadam, polega na tym, że nawet gdy podstawowa komórka jest pusta, komórki wypełniające się z tej podstawowej komórki będą wyświetlać 0, a nie same pozostać puste.
Chcę, aby podrzędne komórki pozostały puste, jeśli podstawowa komórka, z którą są połączone, jest pusta.
Odpowiedzi:
Musisz zmusić program Excel do traktowania zawartości komórki jako wartości tekstowej zamiast liczby, co robi się automatycznie z pustymi wartościami.
Zmusi to program Excel do uczynienia z tej komórki odwołania wartości tekstowej, zapobiegając w ten sposób konwersji pustych znaków w zera.
źródło
Oto trzy odpowiedzi:
1) Pozwolenie other.cell.reference reprezentuje formułę referencyjną, którą aktualnie masz po
=
(np.Sheet17!$H$42
), Zamień referencję na link2) Ustaw format „numer” z Twoich połączonych komórek „Niestandardowy”:
General;–General;
.3) Na stronie „Opcje programu Excel”, na stronie „Zaawansowane”, w sekcji „Opcje wyświetlania tego arkusza roboczego” wyczyść pole wyboru „Pokaż zero w komórkach, które mają wartość zerową”. Ostrzeżenie: spowoduje to zniknięcie wszystkich zer w arkuszu.
źródło
Q1
zawiera (naprawdę długą) formułę iA1
zawiera=Q1
; chcemy zmienićA1
na=IF(Q1<>"", Q1, "")
, którego nigdy nie powinieneś potrzebować ponownie. „Czy naprawdę nie ma lepszych opcji?” Cóż, to pytanie było bezczynne od dziewięciu miesięcy i to wszystko, co zostało opublikowane. Jeśli te odpowiedzi nie są dla Ciebie wystarczające, zadaj nowe pytanie lub nagradzaj je za to.JEŻELI twoje dane referencyjne są tylko typem liczbowym (nietekstowym) lub puste i możesz mieć 0, to jest moje preferowane podejście, z wprowadzaniem formuły tylko raz. Trzeba przyznać, że jest to sposób nieco pośredni, ale myślę, że najlepiej, ponieważ:
Upadek : jeśli potrzebujesz zwróconych danych tekstowych, to nie zadziała. W przypadku danych tekstowych moją preferowaną metodą jest użycie formatu liczbowego, jak wspomniano w innych odpowiedziach powyżej.
A1 w tym przypadku można zastąpić dowolną komórką, w tym innym arkuszem, skoroszytem lub INDIRECT ().
Uwagi na temat tego, jak to działa:
IFERROR () - drugi argument jest ustawiony na pusty ciąg, więc jeśli wystąpi błąd, otrzymamy pusty ciąg. Musimy więc upewnić się, że jeśli komórka źródłowa jest pusta, wywoływany jest błąd.
Metoda numeryczna : Potwierdź wartość źródłową, a następnie pomnóż ją przez 1. Dosłowny ciąg pusty * 1 = # WARTOŚĆ, Ciąg z liczbą jest automatycznie konwertowany na wartość liczbową i nie występuje błąd.
źródło
"" & A1 & ""
? Kiedy to daje różne wyniki zA1 & ""
lub"" & A1
?Jest jeszcze jedna sztuczka: ustaw w pustej komórce soucre formułę
=""
. Zobacz szczegółowy opis tutaj.źródło
Ja również nie znalazłem lepszego rozwiązania niż Scott.
Ale myślę, że w połączeniu z tym podejściem może być prawie do zniesienia:
http://www.ozgrid.com/Excel/named-formulas.htm
Powiedzmy, że mam taką formułę
Ta formuła odczytuje wartość komórki z arkusza danych przy użyciu wyboru warunkowego i przedstawia je na innym arkuszu. Nie mam kontroli nad formatowaniem komórek w arkuszu danych.
Idę do Wstaw> Nazwa> Zdefiniuj iw „Nazwach w skoroszycie” tworzę nową nazwę „RC_P_B”. Następnie w polu „Odwołuje się do” kopiuję moją formułę (bez znaków {} - jest to formuła tablicowa).
Następnie możesz użyć formuły Scotta bez potrzeby powtarzania całego tekstu formuły:
Uważam, że to lepsze niż skopiowanie całej formuły.
źródło
Po prostu nie używam formuły, aby rozwiązać ten problem. Wszystko, co robię, to warunkowo formatować komórki na kolor czcionki biały, jeśli wartość komórki jest równa 0.
źródło
Jeśli połączona komórka jest nienumeryczna, możesz użyć instrukcji IF z ISTEXT:
źródło
Sheet1!A2
, do której istnieje odwołanie ( w twoim przykładzie) zawiera liczbę, spowoduje to wyświetlenie pustego ciągu.Długo szukałem eleganckiego rozwiązania tego problemu.
Używam formuły = if (a2 = "", "", a2) od lat, ale uważam, że jest to trochę kłopotliwe.
Próbowałem powyżej sugestii = a2 & "" i chociaż wydaje się, że działa, pokazuje liczbę, która jest w rzeczywistości tekstem, więc formatowanie liczb nie może być zastosowane i żadne operacje statystyczne, takie jak suma, średnia, mediana itp., Więc jeśli jest wykonalne liczby, których szukasz, nie pasują do rachunku.
Eksperymentowałem z niektórymi innymi funkcjami i znalazłem najbardziej eleganckie jak dotąd rozwiązanie. Kontynuując powyższy przykład:
= KOMÓRKA („treść”, A2)
zwraca wartość liczbową, którą można sformatować jako liczbę i zwraca wartość pustą, gdy komórka odniesienia jest pusta. Z jakiegoś powodu to rozwiązanie nie pojawia się w żadnej z sugestii online, które znalazłem, ale tak
źródło
A2
jest puste, wyświetla się0
. Czy na pewno nic nie robisz z formatowaniem?Rozwiązanie dla Excela 2010:
źródło
źródło
Użyłem formatowania warunkowego, aby sformatować czcionkę w tym samym kolorze co tło komórki, gdzie wartość komórki była równa zero.
źródło
W Office 2013 działało dla mnie:
Gdzie w pierwszym zestawie cytatów nie ma spacji, a w drugim zestawie jest spacja.
Mam nadzieję że to pomoże
źródło
=IF(A2="", "", A2)
działa tak dobrze? Czym by to się różniło=IF(A2<>"", A2, "")
? Czym zatem różni się od najlepiej głosowanej odpowiedzi udzielonej ponad dwa lata temu?Miałem podobny problem i myślę, że znalazłem dla ciebie metodę. To naprawiło moje problemy.
Jeśli chcesz, aby kolumna C odwoływała się do kolumny A i pisała tylko formułę dla komórki referencyjnej, użyj tego i przeciągnij kolumnę w dół.
Jednak mogą istnieć komórki źródłowe w kolumnie A, które są puste i muszą pozostać puste w komórkach odniesienia w kolumnie C, możesz tego użyć i przeciągnąć kolumnę w dół.
Jeśli chodzi o formatowanie komórki, odwołanie (kolumna C) będzie musiało być ogólne.
źródło
Rozwiązanie:
=IF('Wk1 Data-replace w dt bgn & end'!C2>0, 'Wk1 Data-replace w dt bgn & end'!C2, "")
Objaśnienie:
Aby rozwiązać ten problem, użyłem dwóch zestawów
If
poleceń.Część pierwsza polecenia:
Powiedziałem komórce, aby wyświetlała zawartość komórki referencyjnej, jeśli komórka referencyjna zawierała dane (Excel interpretuje to jako komórkę o wartości większej niż 0)
Część druga polecenia:
Powiedziałem, jak się zachować, jeśli nie ma danych; „” oznacza pozostaw puste
Uwaga: Wk1 Data-replace w dt bgn & end '! C2 to moja komórka referencyjna.
źródło
=IF('Wk1 … bgn & end'!C2<>"", 'Wk1 … bgn & end'!C2, "")
, staje się ona równoważna odpowiedzi, która została udzielona już około cztery razy.Wszystkie te rozwiązania są dla mnie zbyt skomplikowane i zdaję sobie sprawę, że może nie być to wykonalne we wszystkich aplikacjach, ale po prostu wypełniam pole źródłowe pustym miejscem i otrzymuję puste pole docelowe.
źródło
Mam dla mnie rozwiązanie:
Wyjaśnienie:
""
jest równe pustej lub pustej komórce. Teraz odwracam tylko jeśli. Jeśli komórka jest pusta, pozostaw ją pustą, w przeciwnym razie użyj odwołania do komórki.źródło
Przejdź do Formatuj komórki.
Następnie wybierz format niestandardowy i wprowadź następujące dane:
0;-0;;@
źródło
General;–General;
.”) - mianowicie (a) jeśli wartość jest liczbą dodatnią, wyświetlać całkowitą wartość bezwzględną; (b) jeżeli wartość jest liczbą ujemną, wyświetl jej całkowitą wartość bezwzględną, poprzedzoną znakiem-
; (c) jeśli wartość wynosi zero, nie wyświetlaj niczego ; oraz (d) jeśli wartość nie jest liczbą, wyświetl jej wartość tekstową. … (Ciąg dalszy)General
daje domyślny format liczb, w tym cyfry dziesiętne, jeśli to konieczne (ale bez-
znaku)). Również końcowy;@
wydaje się niepotrzebny (tj. wydaje się, że jest domyślny), ponieważ moja odpowiedź poprawnie wyświetla wartości tekstowe bez modyfikacji.