Ich habe eine Excel 2010-Arbeitsmappe, die eine Reihe von einzelnen Arbeitsblättern enthält. Die Zellen in einem der Arbeitsblätter sind mit einzelnen Zellen in zwei anderen Arbeitsblättern in derselben Arbeitsmappe verknüpft. Ich verwende eine direkte Zellreferenz, die im Wesentlichen besagt, dass jeder Wert, der in eine bestimmte Zelle auf einem Blatt eingegeben wird, auch Zellen auf zwei anderen Blättern auffüllt. Ich habe die (=) Funktion mit dem Zellverweis verwendet, um dies zu erreichen.
Das Problem, auf das ich stoße, ist, dass selbst wenn die primäre Zelle leer bleibt, die Zellen, die aus dieser primären Zelle ausgefüllt werden, 0 anzeigen, anstatt selbst leer zu bleiben.
Ich möchte, dass die untergeordneten Zellen leer bleiben, wenn die primäre Zelle, mit der sie verknüpft sind, leer ist.
Antworten:
Sie müssen Excel zwingen, den Inhalt der Zelle als Textwert anstelle einer Zahl zu behandeln, was bei leeren Werten automatisch der Fall ist.
Dadurch wird Excel gezwungen, diesen Zellbezug zu einem Textwert zu machen, wodurch die Umwandlung von Leerzeichen in Nullen verhindert wird.
quelle
Hier sind drei Antworten:
1) Lassen Sie other.cell.reference die Referenzformel darstellen, die Sie derzeit nach
=
(z. B.Sheet17!$H$42
) haben, und ersetzen Sie diese Linkreferenz durch2) Stellen Sie die „Nummer“ Format der verknüpften Zellen zu „Custom“:
General;–General;
.3) Deaktivieren Sie auf der Seite "Excel-Optionen", "Erweitert", im Abschnitt "Anzeigeoptionen für dieses Arbeitsblatt" das Kontrollkästchen "Null in Zellen mit Nullwerten anzeigen". Warnung: Dadurch verschwinden alle Nullen im Arbeitsblatt.
quelle
Q1
der eine (sehr lange) Formel undA1
enthält=Q1
; wir wollen ÄnderungA1
zu=IF(Q1<>"", Q1, "")
, die Sie nie wieder ändern müssen , sollten. "Gibt es wirklich keine besseren Optionen?" Nun, diese Frage ist seit neun Monaten unbeantwortet, und das ist alles, was gepostet wurde. Wenn diese Antworten für Sie nicht gut genug sind, stellen Sie eine neue Frage oder setzen Sie eine Prämie auf diese.WENN Ihre Referenzdaten entweder nur ein numerischer Typ (kein Text) oder leer sind und Sie möglicherweise Nullen haben, ist dies mein bevorzugter Ansatz, bei dem die Formel nur einmal eingegeben wird. Zugegeben, ein wenig indirekter Weg, aber ich denke am besten, weil:
Untergang : Wenn Sie Textdaten benötigen, die zurückgegeben werden, funktioniert dies nicht. Meine bevorzugte Methode für Textdaten ist die Verwendung des Zahlenformats, wie in den anderen Antworten oben erwähnt.
A1 kann in diesem Fall durch eine beliebige Zelle ersetzt werden, einschließlich eines anderen Arbeitsblatts, einer Arbeitsmappe oder von INDIRECT ().
Hinweise zur Funktionsweise:
IFERROR () - Das zweite Argument ist auf eine leere Zeichenfolge gesetzt. Wenn also ein Fehler auftritt, erhalten wir eine leere Zeichenfolge. Wir müssen also sicherstellen, dass ein Fehler ausgelöst wird, wenn die Quellzelle leer ist.
Numerische Methode : Stringifizieren Sie den Quellwert und multiplizieren Sie ihn dann mit 1. Leerer Literal-String * 1 = #WERT, String mit Numerik wird automatisch in numerisch konvertiert, und es tritt kein Fehler auf.
quelle
"" & A1 & ""
? Wann führt das zu unterschiedlichen Ergebnissen vonA1 & ""
oder"" & A1
?Es gibt noch einen anderen Trick: Setze die leere Zelle der Quelle auf Formel
=""
. Siehe die detaillierte Beschreibung hier.quelle
Auch ich habe keine bessere Lösung gefunden als die von Scott.
Aber in Verbindung mit der Herangehensweise von hier könnte es fast erträglich sein, denke ich:
http://www.ozgrid.com/Excel/named-formulas.htm
Nehmen wir an, ich habe eine Formel wie diese
Diese Formel liest den Zellenwert aus einem Datenblatt unter Verwendung der bedingten Auswahl und zeigt sie auf einem anderen Blatt an. Ich habe keine Kontrolle über die Formatierung der Zellen im Datenblatt.
Ich gehe zu Einfügen> Name> Definieren und erstelle in der "Namen in Arbeitsmappe" einen neuen Namen "RC_P_B". Dann kopiere ich in das Feld "Bezieht sich auf" meine Formel (ohne {} Zeichen - es ist eine Matrixformel).
Dann können Sie Scotts Formel verwenden, ohne den gesamten Formeltext wiederholen zu müssen:
Ich glaube, das ist besser, als die ganze Formel zu kopieren.
quelle
Ich benutze einfach keine Formel, um dieses Problem zu überwinden. Alles, was ich tue, ist das bedingte Formatieren von Zellen in die Schriftfarbe Weiß, wenn der Zellenwert gleich 0 ist.
quelle
Wenn die verknüpfte Zelle nicht numerisch ist, können Sie eine IF-Anweisung mit ISTEXT verwenden:
quelle
Sheet1!A2
, auf die verwiesen wird ( in Ihrem Beispiel), eine Zahl enthält, wird eine Nullzeichenfolge angezeigt.Ich habe lange nach einer eleganten Lösung für dieses Problem gesucht.
Ich habe jahrelang formula = if (a2 = "", "", a2) verwendet, finde es aber etwas umständlich.
Ich habe oben suggestion = a2 & "" ausprobiert und obwohl es zu funktionieren scheint, zeigt es eine Zahl, die tatsächlich Text ist, so dass die Zahlenformatierung nicht angewendet werden kann und keine statistischen Operationen wie Summe, Durchschnitt, Median usw. funktionieren, wenn es also funktioniert Zahlen, die Sie suchen, passen nicht in die Rechnung.
Ich habe mit einigen der anderen Funktionen experimentiert und festgestellt, dass dies meiner Meinung nach die eleganteste Lösung ist. Fortsetzung des obigen Beispiels:
= CELL ("Inhalt", A2)
gibt einen numerischen Wert zurück, der als Zahl formatiert werden kann, und gibt ein Leerzeichen zurück, wenn die Zelle, auf die verwiesen wird, leer ist. Aus irgendeinem Grund scheint diese Lösung in keinem der von mir gefundenen Online-Vorschläge zu erscheinen, aber sie ist es
quelle
A2
leer ist, wird dies angezeigt0
. Sind Sie sicher, dass Sie mit der Formatierung nichts anfangen?Lösung für Excel 2010:
quelle
quelle
Ich habe eine bedingte Formatierung verwendet, um die Schriftart so zu formatieren, dass sie dieselbe Farbe wie der Zellenhintergrund hat, bei dem der Zellenwert gleich Null war.
quelle
In Office 2013 hat Folgendes für mich funktioniert:
Wo im ersten Satz von Zitaten kein Leerzeichen und im zweiten Satz ist ein Leerzeichen.
Hoffe das hilft
quelle
=IF(A2="", "", A2)
so gut? Wie würde das anders sein als=IF(A2<>"", A2, "")
? Dann , wie ist , dass ich von der höchsten gestimmt Antwort, die mehr als zwei Jahren gegeben wurde?Ich hatte ein ähnliches Problem und ich glaube, ich habe eine Methode für Sie gefunden. Es hat meine Probleme behoben.
Wenn Sie möchten, dass Spalte C auf Spalte A verweist und nur eine Formel für die Referenzzelle schreibt, verwenden Sie diese und ziehen Sie die Spalte nach unten.
Möglicherweise befinden sich jedoch Quellzellen in Spalte A, die leer sind und in den Referenzzellen in Spalte C leer bleiben müssen. Sie können dies verwenden und die untere Spalte ziehen.
In Bezug auf die Zellenformatierung muss die Referenz (Spalte C) allgemein sein.
quelle
Lösung:
=IF('Wk1 Data-replace w dt bgn & end'!C2>0, 'Wk1 Data-replace w dt bgn & end'!C2, "")
Erläuterung:
Um dieses Problem zu lösen, habe ich zwei
If
Befehlssätze verwendet.Teil eins des Befehls:
Ich forderte die Zelle auf, den Inhalt der Referenzzelle anzuzeigen, wenn die Referenzzelle Daten enthielt (Excel interpretiert dies als die Zelle mit einem Wert größer als 0).
Teil zwei des Befehls:
Ich habe ihm gesagt, wie er sich verhalten soll, wenn keine Daten vorhanden sind. "" bedeutet leer lassen
Hinweis: Wk1 Data-replace w dt bgn & end '! C2 ist meine Referenzzelle.
quelle
=IF('Wk1 … bgn & end'!C2<>"", 'Wk1 … bgn & end'!C2, "")
, entspricht dies einer Antwort, die bereits ungefähr viermal gegeben wurde.All diese Lösungen sind mir viel zu kompliziert und ich stelle fest, dass dies möglicherweise nicht für alle Anwendungen durchführbar ist, aber ich fülle das Quellfeld einfach mit einem Leerzeichen aus und bekomme ein Leerzeichen im Zielfeld.
quelle
Ich habe eine Lösung für mich:
Erläuterung:
""
ist gleich leer oder leere Zelle. Jetzt drehe ich nur das wenn um. Wenn die Zelle leer ist, machen Sie sie leer, andernfalls verwenden Sie den Zellbezug.quelle
Gehen Sie zu Zellen formatieren.
Wählen Sie dann ein benutzerdefiniertes Format und geben Sie Folgendes ein:
0;-0;;@
quelle
General;–General;
Zahlenformat Ihrer verknüpften Zellen auf" Benutzerdefiniert ":" ein . ") - nämlich (a) wenn der Wert eine positive Zahl ist, zeige seinen ganzzahligen absoluten Wert an; (b) Wenn der Wert eine negative Zahl ist, wird der ganzzahlige Absolutwert mit vorangestelltem Wert angezeigt-
. (c) wenn der Wert Null ist, nichts anzeigen ; und (d) wenn der Wert keine Zahl ist, den Textwert anzeigen. … (Fortsetzung)General
gibt Ihnen das Standardformat für Zahlen an, einschließlich Dezimalstellen, falls erforderlich (jedoch ohne-
Vorzeichen).) Außerdem;@
scheint das Finale nicht erforderlich zu sein (dh es scheint die Standardeinstellung zu sein), da meine Antwort Textwerte korrekt anzeigt ohne Änderung.