web-dev-qa-db-fra.com

Comment faire en sorte que Excel reconnaisse le texte VRAI ou FAUX comme des valeurs booléennes?

J'utilise la formule INT pour convertir les valeurs booléennes TRUE et FALSE en 1 et en 0. Cependant, j'ai copié certaines données qui me sont fournies dans ma feuille de calcul et Excel n'a pas reconnu le texte comme étant booléen dans certains cas.

Le texte VRAI et FAUX est aligné à gauche et est formaté en tant que 'Général'. La formule INT ne reconnaît pas cela comme booléen. Cependant, dès que je clique sur une cellule VRAI ou FAUX, puis que je tape sur Entrée, le texte devient aligné au centre et ma formule la reconnaît comme booléenne et la convertit en entier.

Puis-je faire en sorte qu'Excel le reconnaisse sans qu'il soit nécessaire de cliquer sur chaque cellule et d'appuyer sur Entrée?

7
Abbie

Excel ne reconnaîtra pas le texte "TRUE" ou "FALSE" comme leurs équivalents booléens ... Si vous devez les convertir, une instruction IF accomplira la tâche suivante:

=IF(OR(A24,A24="TRUE"),TRUE,FALSE)

IF Statement Example

5
Excel Tactics

Lorsque vous convertissez vos valeurs logiques en nombres, pourquoi voulez-vous modifier vos données au lieu d’ajuster votre formule pour accepter le texte également: =INT(IF(ISLOGICAL(A1),A1,A1="TRUE"))

1
Máté Juhász

Vieille question - mais la méthode suivante peut être utile pour la postérité.

Excel reconnaît les booléens sous forme de texte. Vous pouvez modifier le format en General pour la colonne entière, mais Excel ne le réévaluera pas tant que vous n’aurez pas cliqué dans chaque cellule et appuyé sur Entrée. Une alternative consiste à utiliser la fonction de texte en colonnes et par ex. utilisez une largeur très large et fixe. Le résultat sera la même colonne unique, mais Excel sera obligé de réévaluer le format et de mettre à jour toutes vos entrées true et false en booleans.

http://dailydoseofexcel.com/archives/2009/10/12/converting-cells-formatted-as-text/

1
Josh

Vous avez peut-être collé des données comprenant des espaces incorporés.

"true" et "false" seront automatiquement convertis en TRUE et FALSE "true" et "false" seront traités comme du texte.

0
J Cohn

Si vous utilisez la fonction TRIM, la valeur booléenne de la cellule cible sera évaluée à TEXT. A2 = VRAI (booléen) B2: = IF (TRIM (A2) = "VRAI", "Y", "N") l’évaluera en tant que "VRAI" dans la fonction résultant en "Y".

0
rfk

Aucune de ces solutions ne fonctionnait bien pour moi (très longue formule aboutissant au texte), alors je me suis énervé et j'ai écrit ma propre solution.

Public Function ConvertToBoolean(InputString As String) As Variant
Dim TempResults As Variant

If InputString = "True" Then
    TempResults = True
ElseIf InputString = "False" Then
    TempResults = False
Else
    TempResults = InputString
End If

ConvertToBoolean = TempResults


End Function

Cela ne vous gêne pas de traiter les 1 et les 0, mais vous pouvez l'enrouler autour d'une chaîne et obtenir True, False ou la chaîne d'origine, selon votre choix.

0
Selkie

Que montre =TYPE(Value) pour la colonne TRUE/FALSE?

J'utilise LibreOffice et pas le "vrai" Excel, mais il reconnaît même les champs de texte correctement ...

Peut-être pourriez-vous rechercher/remplacer TRUE par =TRUE?

spreadsheet

0
beroe