Tester si une cellule est utilisée comme référence dans une cellule du même classeur

Taote

XLDnaute Nouveau
Bonjour à tous,

Dans mon obsession de la sécurité :p , je voudrais avant suppression de lignes dans un classeur tester si les cellules de la ligne sont utilisées par d'autres cellules du classeur comme référence.

Peut-on faire cela simplement? C'est à dire, existe-t-il une fonction ou propriété pour cela... ou encore une bonne idée!!

La seule idée que j'ai pour l'instant serait de faire une boucle sur les feuilles et une boucle sur les cellules pour récupérer les formules et voir si la référence d'au moins une cellule de la ligne (a priori mes lignes sont utilisées comme référence en totalité ou pas du tout) est contenu dedans un peu comme ci-dessous (mais je n'ai pas testé, c'est juste des bouts de codes que j'ai pris à droite et à gauche :eek:)
Code:
For Each cell In UsedRange
   If cell.formula Like "*A12*" then z = z + 1
Next cell
If z > 0 then 
  If MsgBox("Blabla?", vbQuestion + vbYesNo, "") = vbNo Then Exit Sub
End If
Mais bon, ça va récupérer aussi tous les A120...

On pourrait aussi tester après suppression si il existe des #REF! avec ISERROR, mais ce serait un peu tard, à moins qu'on puisse annuler l'action d'une macro???

Qu'en pensez-vous?

Merci d'avance
 

Staple1600

XLDnaute Barbatruc
Re : Tester si une cellule est utilisée comme référence dans une cellule du même clas

Bonjour


Sélectionne une cellule puis lance la macro ci-dessous


Code:
Sub test()
Dim cell As Range
For Each cell In Rows(ActiveCell.Row).Cells
   If cell.HasFormula Then
   z = z + 1
   End If
Next cell
If z > 0 Then
  If MsgBox("Blabla?", vbQuestion + vbYesNo, "") = vbNo Then Exit Sub
End If
End Sub
 

Taote

XLDnaute Nouveau
Re : Tester si une cellule est utilisée comme référence dans une cellule du même clas

Merci beaucoup Staple1600,

C'est en fait l'inverse que je demandais :D mais c'est quand même super intéressant de connaître le HasFormula, cela va m'être utile de toutes façons...

Je tente de mieux m'expliquer en prenant juste le cas de la suppression d'une cellule, disons A12. Peu importe qu'elle contienne une valeur ou une formule, je voudrais m'assurer que A12 n'est pas utilisée n'importe où ailleurs dans le classeur pour éviter de faire disparaître des calculs...

Voili...:eek:
 

Discussions similaires

Statistiques des forums

Discussions
312 389
Messages
2 087 932
Membres
103 676
dernier inscrit
Haiti