Insérer un texte au-dessus d'une cellule contenant un mot

Bonjour tout le monde,

J'ai essayé sans succès d'adapter la solution donnée par nonesofar13 à mon post précédent "Masquer des lignes au-dessus d'une ligne contenant un mot".

Je cherche cette fois-ci à insérer un texte dans une cellule qui se trouve 3 cellules au-dessus de celle contenant un mot, le mot "test" par exemple, lorsque l'on clique sur ma case à cocher (contrôle ActiveX).

Par exemple, si je clique sur la case à cocher alors s'affiche en B52 le texte "blablabla" car B52 se trouve 3 cellules au-dessus de B55 qui contient le mot "test".

Je cherche cette solution car les utilisateurs de mon fichier auront le droit d'insérer des lignes. Je veux donc utiliser un point stable à la fin de mon document.

Merci d'avance pour votre aide !

Bonjour Caribou, bonjour le forum,

Hors contexte c'est pas évident. Le code ci-dessous pourrait être beaucoup plus précis si j'avais une idée de la structure des données dans l'onglet. Mais bon, tu adapteras...

Dim R As Range
Set R = Sheets("Feuil1").Cells.Find("test", , xlValues, xlWhole)
If Not R Is Nothing Then R.offset(-3, 0).Value = "Blablabla"

Merci beaucoup ThauThème,

c'est tout à fait ça !

sauf que j'ai oublié de dire que le texte "blablabla" dans mon exemple doit disparaître si la case est décochée...

Bon, peut-être pas très élégant mais ça fonctionne :

Private Sub CheckBox1_Click()

Dim R As Range

If CheckBox1.Value = True Then

Set R = Sheets("Document").Cells.Find("test", , xlValues, xlWhole)

If Not R Is Nothing Then R.Offset(-3, 0).Value = "Blablabla"

End If

If CheckBox1.Value = False Then

Set R = Sheets("Document").Cells.Find("test", , xlValues, xlWhole)

If Not R Is Nothing Then R.Offset(-3, 0).Value = ""

End If

End Sub

Merci ThauThème, merci Forum !

Bonsoir Caribou, bonsoir le forum,

Le même en plus court :

Private Sub CheckBox1_Click()
Dim R As Range

Set R = Sheets("Document").Cells.Find("test", , xlValues, xlWhole)
If Not R Is Nothing Then R.Offset(-3, 0).Value = IIf(CheckBox1.Value = True, "Blablabla", "")
End Sub
Rechercher des sujets similaires à "inserer texte dessus contenant mot"