Macro sur cellule non specifique

T

Tartare

Guest
Voici une macro fort simple, mais j'aimerais appliquer cette macro sur une cellule que j'aurais rechercher auparavant par une petite macro recherche.

Sub effacer()
'
' effacer Macro
' Macro enregistrée le 13/07/2005 par HP-DCS
'

'
Range('E33').Select
ActiveCell.FormulaR1C1 = 'closed'
Range('H33').Select
ActiveCell.FormulaR1C1 = 'closed'
Range('B33:J33').Select
Selection.Copy
ActiveWindow.SmallScroll Down:=9
Range('B39').Select
ActiveSheet.Paste
ActiveWindow.SmallScroll Down:=-9
End Sub

Mon probleme est que dans le cas de cette macro, la cellule est déjà définie (E33). Comment puis-je faire pour une cellule qui resultera d'une recherche sur un document comprenant plus de 1000 lignes?

Merci
 

2passage

XLDnaute Impliqué
Bonjour,

euh... ça dépend de la façon dont tu recherche, de la façon dont tu comptes appeler cette macro... A mon avis, l'idée la plus pratique pour toi c'est de faire passer le paramètre 'cellule à traiter' quand tu appelles la fonction. Ca donne quelquechose du genre :

Code:
Sub Effacer(cellule_a_traiter As range)
 Range(cellule_a_traiter).Select
ActiveCell.FormulaR1C1 = 'closed'
Range(cellule_a_traiter).offset(0,3).select
...
End sub

D'ailleurs au passage, c'est mieux de faire tes opération sans selectionner les cellules (gain de temps et meilleure ergonomie du code... et cça fait moins macro enregistrée :p ) :

Code:
Sub Effacer(cellule_a_traiter As range)
 Range(cellule_a_traiter).FormulaR1C1 = 'closed'
Range(cellule_a_traiter).offset(0,3).FormulaR1C1 = 'closed'
...
End sub

A+
 

Discussions similaires

Statistiques des forums

Discussions
312 837
Messages
2 092 660
Membres
105 482
dernier inscrit
Eric.FKF