|  
    
Il existe plusieurs façons d'identifier si une cellule Excel contient un nombre directement saisi plutôt qu'un nombre issu d'une formule :
  
 1. Utilisation des fonctions `ISNUMBER` et `ISFORMULA` :  
  
 C'est la méthode la plus simple et la plus fiable. Combinez ces fonctions pour vérifier les deux conditions : 
  
 * `ISNUMBER(A1)` : Cette fonction renvoie « VRAI » si la cellule A1 contient un nombre (soit directement saisi, soit le résultat d'une formule qui donne un nombre), et « FAUX » dans le cas contraire.  
 * `ISFORMULE(A1)` : Cette fonction renvoie « VRAI » si la cellule A1 contient une formule, et « FAUX » sinon.  
  
 Pour vérifier si une cellule contient un nombre *directement saisi*, vous avez besoin que `ISNUMBER` soit `TRUE` et `ISFORMULA` soit `FALSE` : 
  
 ``` exceller  
 =ET(ESTNUMERO(A1), NON(ISFORMULE(A1)))  
 ```  
  
 Cette formule renverra « VRAI » uniquement si la cellule A1 contient un nombre qui a été saisi directement dans la cellule, et non calculé par une formule. Placez cette formule dans une autre cellule, en remplaçant « A1 » par la cellule que vous souhaitez vérifier.  
  
  
 2. Utilisation de la fonction `CELL` (moins fiable) :  
  
 La fonction `CELL` peut fournir des informations sur le formatage et le contenu d'une cellule. Cependant, il est moins fiable pour cette tâche spécifique, car il peut ne pas toujours faire la distinction avec précision entre un nombre saisi directement et une formule aboutissant à un nombre : 
  
 ``` exceller  
 =SI(CELLULE("type",A1)="v",VRAI,FAUX)  
 ```  
  
 Cela vérifie si le type de cellule est "v" (valeur), ce qui *pourrait* indiquer un nombre directement saisi. Mais une formule évaluant un nombre renverrait également « v », cette méthode n'est donc pas infaillible.  
  
  
 3. Macro VBA (pour des scénarios plus complexes) :  
  
 Pour des besoins plus complexes ou des analyses à grande échelle, une macro VBA offre une plus grande flexibilité. Vous pouvez parcourir les cellules et examiner leurs propriétés pour déterminer s’il s’agit de formules ou de nombres directement saisis. C'est plus avancé mais vous donne un contrôle précis. Voici un exemple simple : 
  
 ```vba  
 Sous CheckCellType()  
  
 Dim cellule comme plage  
 Pour chaque cellule dans la plage ("A1:A10") 'Ajustez la plage selon vos besoins  
 Si IsNumeric (cell.Value) et non cell.HasFormula alors  
 Debug.Print cell.Address &"contient un numéro directement saisi."  
 Fin si  
 Cellule suivante  
  
 Fin du sous-marin  
 ```  
  
 Cette macro parcourt les cellules A1 à A10. `IsNumeric` vérifie un nombre et `cell.HasFormula` vérifie s'il s'agit d'une formule. Le résultat est imprimé dans la fenêtre d'exécution (Affichage> Fenêtre d'exécution).  
  
  
 La méthode `AND(ISNUMBER(A1), NOT(ISFORMULA(A1)))` est l'approche la plus fiable et la plus recommandée pour déterminer si une cellule contient un nombre directement saisi dans Excel. Les autres méthodes sont fournies par souci d’exhaustivité mais présentent des limites.
 
 |