Gamme de sélection VBA - Comment sélectionner une plage dans Excel VBA?

Table des matières

Plage de sélection Excel VBA

Une fois que les bases sont remplies avec VBA, il est important de comprendre comment travailler avec une plage de cellules dans la feuille de calcul. Une fois que vous commencez à exécuter les codes pratiquement la plupart du temps, vous devez travailler avec une plage de cellules, il est donc important de comprendre comment travailler avec une plage de cellules, et l'un de ces concepts est la «sélection de plage» VBA. Dans cet article, nous allons vous montrer comment travailler avec la «plage de sélection» dans Excel VBA.

La sélection et la gamme sont deux sujets différents, mais lorsque nous disons de sélectionner la gamme ou la sélection de gamme, il s'agit d'un seul concept. RANGE est un objet, «Selection» est une propriété et «Select» est une méthode. Les gens ont tendance à confondre avec ces termes. Il est important de connaître les différences en général.

Comment sélectionner une plage dans Excel VBA?

Exemple 1

Par exemple, supposons que vous souhaitiez sélectionner la cellule A1 dans la feuille de calcul. Tout d'abord, nous devons spécifier l'adresse de la cellule en utilisant un objet RANGE comme ci-dessous.

Code:

Après avoir mentionné la cellule que nous devons sélectionner, placez un point pour voir la liste IntelliSense, qui est associée à l'objet RANGE.

Formez cette variété de listes, choisissez la méthode «Select».

Code:

Sub Range_Example1 () Range ("A1"). Sélectionnez End Sub

Maintenant, ce code sélectionnera la cellule A1 dans la feuille de calcul active.

Si vous souhaitez sélectionner la cellule dans les différentes feuilles de calcul, nous devons d'abord spécifier la feuille de calcul par son nom. Pour spécifier la feuille de calcul, nous devons utiliser l'objet «WORKSHEET» et saisir le nom de la feuille de calcul entre guillemets.

Par exemple, si vous souhaitez sélectionner la cellule A1 dans la feuille de calcul «Feuille de données», spécifiez d'abord la feuille de calcul comme ci-dessous.

Code:

Sub Range_Example1 () Worksheets ("Data Sheet") End Sub

Continuez ensuite le code pour spécifier ce que nous devons faire dans cette feuille. Dans «Fiche technique», nous devons sélectionner la cellule A1, le code sera donc RANGE («A1»). Sélectionnez.

Code:

Sub Range_Example1 () Worksheets ("Data Sheet"). Range ("A1"). Sélectionnez End Sub

Lorsque vous essayez d'exécuter ce code, nous obtenons l'erreur ci-dessous.

La raison en est "nous ne pouvons pas fournir directement l'objet de plage et sélectionner une méthode à l'objet de feuilles de calcul."

Tout d'abord, nous devons sélectionner ou activer la feuille de calcul VBA, puis nous pouvons faire tout ce que nous voulions faire.

Code:

Sub Range_Example1 () Worksheets ("Data Sheet"). Activez la plage ("A1"). Sélectionnez End Sub

Maintenant, cela sélectionnera la cellule A1 dans la feuille de calcul «Fiche technique».

Exemple # 2 - Travailler avec la plage sélectionnée actuelle

Sélectionner est une chose différente et travailler avec une plage de cellules déjà sélectionnée est différent. Supposons que vous souhaitiez insérer une valeur «Hello VBA» dans la cellule A1, nous pouvons le faire de deux manières.

Tout d'abord, nous pouvons passer directement le code VBA en tant que RANGE ("A1"). Valeur = "Bonjour, VBA."

Code:

Sub Range_Example1 () Range ("A1"). Value = "Hello VBA" End Sub

Ce que ce code fera, c'est simplement insérer la valeur «Hello VBA» dans la cellule A1, quelle que soit la cellule actuellement sélectionnée.

Regardez le résultat ci-dessus du code. Lorsque nous exécutons ce code, il a inséré la valeur «Hello VBA», même si la cellule actuellement sélectionnée est B2.

Deuxièmement, nous pouvons insérer la valeur dans la cellule en utilisant la propriété «Sélection». Pour cela, nous devons sélectionner la cellule manuellement et exécuter le code.

Code:

Sub Range_Example1 () Selection.Value = "Hello VBA" End Sub

Ce que ce code fera est que cela insérera la valeur «Hello VBA» dans la cellule actuellement sélectionnée. Par exemple, regardez l'exemple d'exécution ci-dessous.

Lorsque j'ai exécuté le code, ma cellule sélectionnée actuelle était B2 et notre code a inséré la même valeur dans la cellule actuellement sélectionnée.

Maintenant, je vais sélectionner la cellule B3 et exécuter, là aussi, nous obtiendrons la même valeur.

Une autre chose que nous pouvons faire avec la propriété «selection» est que nous pouvons également insérer une valeur dans plus d'une cellule. Par exemple, je vais maintenant sélectionner la plage de cellules de A1 à B5.

Maintenant, si j'exécute le code, pour toutes les cellules sélectionnées, nous obtiendrons la valeur «Hello VBA».

Ainsi, la simple différence entre la spécification de l'adresse de cellule par l'objet RANGE et la propriété Selection est que le code d'objet Range insère une valeur dans les cellules spécifiées explicitement.

Mais dans l'objet Selection, peu importe la cellule dans laquelle vous vous trouvez. Il insérera la valeur mentionnée dans toutes les cellules sélectionnées.

Choses à retenir ici

  • Nous ne pouvons pas fournir directement la méthode select sous la propriété Selection.
  • RANGE est un objet et la sélection est une propriété.
  • Au lieu de range, nous pouvons utiliser la propriété CELLS.

Articles intéressants...