J'ai un classeur Excel 2010 qui contient un certain nombre de feuilles de calcul individuelles. Les cellules de l'une des feuilles sont liées aux cellules individuelles de deux autres feuilles de calcul du même classeur. J'utilise une référence de cellule directe qui dit essentiellement que la valeur entrée dans une cellule particulière sur une feuille remplit également les cellules de deux autres feuilles. J'ai utilisé la fonction (=) avec la référence de cellule pour accomplir cela.
Le problème que je rencontre est que, même lorsque la cellule principale est laissée vide, les cellules qui se remplissent à partir de cette cellule principale afficheront 0, plutôt que de rester elles-mêmes vides.
Je veux que les cellules subordonnées restent vides si la cellule principale à laquelle elles sont liées est vide.
Réponses:
Vous devez forcer Excel à traiter le contenu de la cellule comme une valeur de texte au lieu d'un nombre, ce qu'il fait automatiquement avec des valeurs vides.
Cela forcera Excel à faire de cette référence de cellule une valeur de texte, empêchant ainsi la conversion des blancs en zéros.
la source
Voici trois réponses:
1) Laisser other.cell.reference représenter la formule de référence que vous avez actuellement après
=
(par exemple,Sheet17!$H$42
), remplacez cette référence de lien par2) Définir le format « Nombre » de vos cellules liées à « Custom »:
General;–General;
.3) Dans la section «Options Excel», page «Avancé», section «Options d'affichage pour cette feuille de calcul», décochez la case «Afficher un zéro dans les cellules qui ont une valeur zéro». Avertissement: cela entraînera la disparition de tous les zéros de la feuille de calcul.
la source
Q1
contient une formule (vraiment longue) etA1
contient=Q1
; nous voulons changerA1
à=IF(Q1<>"", Q1, "")
, que vous ne devriez jamais avoir besoin de changer à nouveau. «N'y a-t-il vraiment pas de meilleures options?» Eh bien, cette question est inactive depuis neuf mois, et c'est tout ce qui a été publié. Si ces réponses ne vous conviennent pas, postez une nouvelle question ou attribuez une prime à celle-ci.SI vos données de référence ne sont que de type numérique (non textuel) ou vides, et vous pouvez avoir des 0, alors c'est mon approche préférée, avec une seule entrée de formule. Certes, une manière un peu indirecte, mais c'est mieux je pense car:
Chute : Si vous avez besoin de données texte renvoyées, cela ne fonctionnera pas. Pour les données texte, ma méthode préférée utilise le format numérique comme mentionné dans les autres réponses ci-dessus.
Dans ce cas, A1 peut être remplacé par n'importe quelle cellule, y compris une autre feuille, un classeur ou INDIRECT ().
Notes sur la façon dont cela fonctionne:
IFERROR () - le deuxième argument est défini sur une chaîne vide, donc si une erreur se produit, nous obtenons une chaîne vide. Nous devons donc nous assurer que si la cellule source est vide, une erreur est déclenchée.
Méthode numérique : Stringify la valeur source, puis multipliez par 1. Literal emtpy string * 1 = #VALUE, String with numeric est automatiquement converti en numérique et aucune erreur ne se produit.
la source
"" & A1 & ""
? Quand cela produit-il des résultats différents deA1 & ""
ou"" & A1
?Il existe une autre astuce: définissez la cellule vide de soucre sur la formule
=""
. Voir la description détaillée ici.la source
Moi non plus, je n'ai pas trouvé de meilleure solution que celle de Scott.
Mais combiné avec l'approche d'ici, cela pourrait être supportable, je pense:
http://www.ozgrid.com/Excel/named-formulas.htm
Disons que j'ai une formule comme celle-ci
Cette formule lit la valeur des cellules d'une feuille de données à l'aide de la sélection conditionnelle et les présente sur une autre feuille. Je n'ai aucun contrôle sur le formatage des cellules sur la fiche technique.
Je vais dans Insertion> Nom> Définir et dans le "Noms dans le classeur" je crée un nouveau nom "RC_P_B". Ensuite, dans le champ "Fait référence à", je copie ma formule (sans {} caractères - c'est une formule matricielle).
Ensuite, vous pouvez utiliser la formule de Scott sans avoir à répéter tout le texte de la formule:
Je pense que c'est mieux que de copier la formule entière.
la source
Je n'utilise simplement pas de formule pour surmonter ce problème. Tout ce que je fais est de formater conditionnellement les cellules en couleur de police blanche si la valeur de la cellule est égale à 0.
la source
Si la cellule liée n'est pas numérique, vous pouvez utiliser une instruction IF avec ISTEXT:
la source
Sheet1!A2
, dans votre exemple) contient un nombre, cela affichera une chaîne nulle.J'ai longtemps cherché une solution élégante à ce problème.
J'utilise la formule = if (a2 = "", "", a2) depuis des années, mais je trouve que c'est un peu lourd.
J'ai essayé ci-dessus suggestion = a2 & "" et bien que cela semble fonctionner, il affiche un nombre qui est en fait du texte, donc la mise en forme des nombres ne peut pas être appliquée et aucune opération statistique ne fonctionne, comme la somme, la moyenne, la médiane, etc., donc si c'est réalisable les chiffres que vous recherchez ne correspondent pas à la facture.
J'ai expérimenté certaines des autres fonctions et trouvé ce que je pense être la solution la plus élégante à ce jour. Poursuivant l'exemple ci-dessus:
= CELLULE ("contenu", A2)
renvoie une valeur numérique qui peut être formatée sous forme de nombre et renvoie un blanc lorsque la cellule référencée est vide. Pour une raison quelconque, cette solution ne semble apparaître dans aucune des suggestions en ligne que j'ai trouvées, mais elle
la source
A2
est vide, cela s'affiche0
. Êtes-vous sûr de ne rien faire avec la mise en forme?Solution pour Excel 2010:
la source
la source
J'ai utilisé une mise en forme conditionnelle pour formater la police pour qu'elle soit de la même couleur que l'arrière-plan de la cellule où la valeur de la cellule était égale à zéro.
la source
Ce qui a fonctionné pour moi dans Office 2013 était:
Là où sur le premier ensemble de citations il n'y a pas d'espace, et sur le deuxième ensemble il y a un espace.
J'espère que cela t'aides
la source
=IF(A2="", "", A2)
marche pas aussi bien? En quoi cela serait-il différent=IF(A2<>"", A2, "")
? En quoi est- ce différent de la réponse la plus votée, qui a été donnée il y a plus de deux ans?J'ai eu un problème similaire et je pense avoir trouvé une méthode pour vous. Cela a résolu mes problèmes.
Si vous souhaitez que la colonne C fasse référence à la colonne A et écrivez uniquement une formule pour la cellule de référence, utilisez-la et faites glisser la colonne vers le bas.
Cependant, il peut y avoir des cellules source dans la colonne A qui sont vides et doivent rester vides dans les cellules de référence dans la colonne C, vous pouvez l'utiliser et faire glisser la colonne vers le bas.
En ce qui concerne le formatage des cellules, la référence (colonne C) devra être générale.
la source
Solution:
=IF('Wk1 Data-replace w dt bgn & end'!C2>0, 'Wk1 Data-replace w dt bgn & end'!C2, "")
Explication:
Pour résoudre ce problème, j'ai utilisé deux ensembles de
If
commandes.Première partie de la commande:
j'ai dit à la cellule d'afficher le contenu de la cellule de référence si la cellule de référence contenait des données (Excel interprète cela comme la cellule ayant une valeur supérieure à 0)
Deuxième partie de la commande:
je lui ai expliqué comment se comporter en l'absence de données; "" signifie laisser vide
Remarque: Wk1 Data-replace w dt bgn & end '! C2 est ma cellule de référence.
la source
=IF('Wk1 … bgn & end'!C2<>"", 'Wk1 … bgn & end'!C2, "")
, cela devient équivalent à une réponse qui a déjà été donnée environ quatre fois.Toutes ces solutions sont beaucoup trop compliquées pour moi et je me rends compte que cela peut ne pas être possible pour toutes les applications, mais je remplis simplement le champ source avec un blanc et j'obtiens un blanc dans le champ de destination.
la source
J'ai une solution qui fonctionne pour moi:
Explication:
""
est égal à une cellule vide ou vide. Maintenant, je ne fais que tourner le si. Si la cellule est vide, rendez-la vide, sinon utilisez la référence de cellule.la source
Allez dans Formater les cellules.
Sélectionnez ensuite un format personnalisé et entrez les informations suivantes:
0;-0;;@
la source
General;–General;
.») - à savoir (a) si la valeur est un nombre positif, afficher sa valeur absolue entière; (b) si la valeur est un nombre négatif, afficher sa valeur absolue entière, précédée de-
; (c) si la valeur est nulle, n'afficher rien ; et (d) si la valeur n'est pas un nombre, afficher sa valeur textuelle. … (Suite)General
vous donne le format par défaut pour les nombres, y compris les chiffres décimaux si nécessaire (mais sans inclure le-
signe).) De plus, la finale;@
semble inutile (c'est-à-dire qu'elle semble être la valeur par défaut), dans la mesure où ma réponse affiche correctement les valeurs de texte sans modification.