Bonjour,
Peut être avec quelque chose comme cela (à améliorer) :
Private Sub Worksheet_Calculate()
Dim c, l As Integer
Dim ce As Range
For Each ce In Range("B3:R7")
If ce <> "" Then
c = ce.Column
l = ce.Row
Cells(l, c - 1).Value = ""
Cells(l, c + 1).Value = ""
End If
Next
End Sub
En fait, à chaque fois que ta feuille va se calculer, il va supprimé les cellules adjacentes à celle qui ne sont pas vide..
mais j'aime pas trop cette méthode et à vrai dire je trouve ton objectif un peu superflu (mais je peu difficilement en mesurer l'importance de mon point de vue).
S'il y a des données importantes dans les cellules à coté .. elles seront perdues à jamais.
Et note bien qu'il sera JAMAIS possible d'afficher le texte trop long d'une cellule en entier, sans l'agrandir, et sans effacer les données des cellules adjacentes. Même en faisant appel au VBA.
J'espère ne pas t'avoir trop freiné dans ton élan, mais sa me paraissait important de te signaler ces points.
Cdlt,