Récuprer l'adresse de la cellule avec erreur

Bonsoir,

J'aimerai pouvoir récupérer l'adresse des cellules (2 normalement) où il y a une erreur #valeur! suite à une erreur d'entrée de données.

Merci beaucoup

Troph

Bonjour Trophinou

Trophinou a écrit :

J'aimerai pouvoir récupérer l'adresse des cellules (2 normalement) où il y a une erreur #valeur! suite à une erreur d'entrée de données.

C'est une très bonne question

Mais j'en ai d'autres

avec Formules ou VBA ?

pour en faire quoi ?

#valeur est-il dans la même la même ligne, le même colonne, le même onglet ?

Bonjour

Bonjour andrea73

A tester

Sub RecupErreur()

  On Error Resume Next    ' Au cas ou pas de cellule en erreurs
  MsgBox "Formule en erreur : " & Cells.SpecialCells(xlCellTypeFormulas, xlErrors).Address
  MsgBox "Constante en erreur : " & Cells.SpecialCells(xlCellTypeConstants, xlErrors).Address
End Sub

Bonjour Banzaï

Effectivement ! Ce peut être une idée !

Pas mauvaise d'ailleurs

Merci à vous deux

andrea73 a écrit :

Bonjour Trophinou

C'est une très bonne question

Mais j'en ai d'autres

avec Formules ou VBA ? Oui

pour en faire quoi ? mettre les cellules en couleurs pour pouvoir les repérer plus facilement

#valeur est-il dans la même la même ligne, le même colonne, le même onglet ? le même onglet, mais sur une plage précise.

Banzai m'a apporté une partie de la solution. (bizarre j'avais tenté qqchose de similaire sans succès)

me reste plus qu'à me restreindre sur la plage.

merci

en bidouillant j'ai trouvé ceci qui semble me convenir.

Dim Plager As Range, Cibler As Range

    'Recherche dans la plage A1:P5000
    Set Plager = Range("A1:P5000")

    On Error Resume Next
    Set Cibler = Plager.SpecialCells(xlCellTypeFormulas, xlErrors)
    If Not Cibler Is Nothing Then MsgBox Cibler.Address(0, 0)

par contre je voudrais pointer les cellules impliquant cette erreur qui sont 1 ou 2 lignes au dessus. et j'y arrive pas.

Bonjour

Avec 2 lignes au dessus

Sub test()
Dim Plager As Range, Cibler As Range

    'Recherche dans la plage A1:P5000
   Set Plager = Range("A1:P5000")

    On Error Resume Next
    Set Cibler = Plager.SpecialCells(xlCellTypeFormulas, xlErrors)
    If Not Cibler Is Nothing Then
      Cibler.Offset(-2).Select
      MsgBox Cibler.Address(0, 0)
    End If

End Sub

Génial ça marche impec.

J'avais essayé de bidouiller avec offset aussi mais sans résultat.

Un grand merci

++

Troph

Rechercher des sujets similaires à "recuprer adresse erreur"