Attribuer une variable Range à la cellule active
Résolumikel831 Messages postés 221 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous !
Je ne trouve pas comment attribuer à la cellule active d'une feuille Excel un objet Range: le code
Dim NJ as Range
Set NJ = Range(ActiveCell)
ne fonctionne pas ... Où est mon erreur?
Windows / Chrome 123.0.0.0
1 réponse
Bonjour,
Il semble que votre erreur réside dans la façon dont vous utilisez la fonction Range(). La fonction Range() nécessite des paramètres spécifiques pour définir une plage, mais vous ne lui avez pas fourni ces paramètres correctement.
Pour attribuer à la cellule active un objet Range, vous devez spécifier explicitement l'adresse de la cellule active. Voici comment vous pouvez le faire
Dim NJ As Range
Set NJ = ActiveCell
Avec ce code, vous déclarez un objet Range appelé NJ et lui attribuez la référence de la cellule active.
Si vous souhaitez plutôt définir une plage autour de la cellule active, par exemple une plage de 1x1 cellule, vous pouvez le faire comme suit :
Dim NJ As Range
Set NJ = ActiveCell.Resize(1, 1)
Cela définit une plage (Range) autour de la cellule active avec une dimension de 1 ligne et 1 colonne.
Si vous souhaitez une plage plus grande autour de la cellule active, vous pouvez ajuster les paramètres de Resize() en conséquence. Par exemple, pour une plage de 3x3 cellules autour de la cellule active :
Dim NJ As Range
Set NJ = ActiveCell.Resize(3, 3)
Assurez-vous de choisir la méthode qui correspond le mieux à ce que vous essayez de réaliser dans votre script VBA Excel.
En espérant vous avoir aidé.
Merci pour ta réponse!
Effectivement, ActiveCell est déjà un objet Range ...
Merci pour ton aide claire et précise.
Cordialement, Mikel