Comment utiliser la propriété UsedRange de VBA dans Excel (4 façons)

  • Partage Ça
Hugh West

Dans cet article, je vais vous montrer comment vous pouvez utiliser l'option Gamme d'occasion propriété de VBA dans Excel. Vous apprendrez à utiliser la fonction Gamme d'occasion pour une plage fermée, pour une plage dispersée, pour une feuille de calcul inactive et également pour un classeur inactif.

Télécharger le cahier d'exercices

Téléchargez ce cahier d'exercices pour vous entraîner pendant que vous lisez cet article.

Excel VBA UsedRange.xlsm

Une introduction à la propriété UsedRange de VBA dans Excel

Le site Gamme d'occasion propriété de VBA renvoie un Gamme Il renvoie une plage composée de toutes les cellules d'une feuille de calcul qui a été utilisée, y compris une ligne vide au début.

Dans un VBA le code Gamme d'occasion doit être utilisée avec le nom de la feuille de travail. Ainsi, la syntaxe courante pour utiliser la propriété Gamme d'occasion de la feuille de calcul active :

Dim Rng As Range

Set Rng = ActiveSheet.UsedRange

Notes :

  • Ici Rng est le nom de la Gamme retourné par le Gamme d'occasion propriété. Vous pouvez utiliser ce que vous voulez.
  • Pour exercer le Gamme d'occasion dans une feuille de calcul autre que la feuille active, utilisez plutôt le nom de la feuille de calcul.

Par exemple, pour l'appliquer dans une feuille de calcul appelée Feuille 1 , insérer :

Set Rng = Worksheets("Sheet1").UsedRange

4 façons d'utiliser la propriété UsedRange de VBA dans Excel

Voici les 4 les façons les plus courantes d'utiliser le Gamme d'occasion la propriété dans VBA .

1. Propriété VBA UsedRange pour une plage fermée

Tout d'abord, nous allons utiliser le VBA UsedRange pour une feuille de calcul avec une plage fermée.

Cela renverra toute la plage, y compris une ligne vide au début.

Ici, nous avons une feuille de travail appelée Feuille 1 qui contient une plage fermée constituée des noms, des dates d'entrée en fonction et des salaires de certains employés d'une entreprise.

Maintenant, si vous utilisez le Gamme d'occasion sur cette feuille de calcul, il renverra la plage B2:C13 (y compris une rangée vide au début).

Si Feuille 1 est actif, vous pouvez utiliser :

Dim Rng As Range

Set Rng = ActiveSheet.UsedRange

Ou vous pouvez utiliser :

Dim Rng As Range

Set Rng = Worksheets("Sheet1").UsedRange

Sortie :

Nous avons utilisé le Sélectionnez d'un Gamme dans le code. Donc, si nous exécutons le code, il va sélectionner la gamme B2:D13 de Feuille 1 .

Lire la suite : Comment utiliser l'objet Range de VBA dans Excel (5 propriétés)

2. propriété VBA UsedRange pour une plage dispersée

Si vous avez une plage dispersée dans n'importe quelle feuille de calcul, la fonction Gamme d'occasion renvoie une plage incluant les cellules vides intermédiaires.

Maintenant, dans Feuille 1 nous avons le salaire total, le salaire le plus élevé, et le salaire le plus bas dispersés à différents endroits, de la cellule B3 à G3 comme ceci :

Maintenant, utilisez n'importe laquelle de ces deux lignes de code pour utiliser la fonction Gamme d'occasion propriété.

Dim Rng As Range

Set Rng = ActiveSheet.UsedRange

Ou

Dim Rng As Range

Set Rng = Worksheets("Sheet1").UsedRange

Sortie :

Il renvoie toutes les cellules de la plage B2:G3 de Feuille 1 y compris les cellules vides (y compris une rangée vide au début). Comme nous avons utilisé la fonction Sélectionnez de l Gamme il sélectionnera l'intervalle B2:G3.

Lire la suite : Fin d'une plage en utilisant VBA dans Excel (avec exemples)

Lectures similaires

  • Excel VBA Copier une plage vers une autre feuille (8 façons les plus simples)
  • Boucler dans une plage pour chaque cellule avec Excel VBA (Guide ultime)
  • Erreur d'indice Excel hors de la plage en VBA (avec 5 solutions)

3. propriété VBA UsedRange pour une feuille de calcul inactive

Si nous voulons exercer le Gamme d'occasion sur une feuille de travail inactive, vous devez mentionner le nom de la feuille de travail au début.

Par exemple, ici, ma feuille de calcul active est Feuille 1 .

Pour utiliser le Gamme d'occasion la propriété dans Feuille 2 que nous devons utiliser :

Dim Rng As Range

Set Rng = Worksheets("Sheet2").UsedRange

Cela va sélectionner toutes les cellules utilisées dans la feuille de calcul appelée Feuille 2 .

Lire la suite : VBA pour définir une plage dans Excel (7 exemples)

4. propriété VBA UsedRange pour un classeur inactif

Vous pouvez même utiliser la propriété UsedRange pour un classeur qui n'est pas actif, en mettant simplement le nom du classeur devant.

Par exemple, ici, mon classeur actif est Cahier d'exercices 1 Pour exercer le Gamme d'occasion propriété sur Feuille 1 de Cahier d'exercices2 que nous devons utiliser :

Dim Rng As Range

Set Rng = Workbooks("Workbook2.xlsm").Worksheets("Sheet1").UsedRange

Il va sélectionner la plage utilisée de la feuille de calcul. Feuille 1 de Cahier d'exercices2 .

Lire la suite : VBA pour chaque cellule d'une plage dans Excel (3 méthodes)

Les choses à retenir

Le site Gamme d'occasion propriété de VBA renvoie un Gamme Dans cet article, nous avons utilisé l'objet Sélectionnez d'un Objet de la gamme pour des raisons de visualisation. Mais évidemment, vous pouvez utiliser n'importe quelle autre propriété d'un objet Gamme selon votre convenance.

Conclusion

Grâce à ces méthodes, vous pouvez utiliser le Gamme d'occasion Vous avez des questions ? N'hésitez pas à nous les poser.

Hugh West est un formateur et analyste Excel très expérimenté avec plus de 10 ans d'expérience dans l'industrie. Il est titulaire d'un baccalauréat en comptabilité et finance et d'une maîtrise en administration des affaires. Hugh a une passion pour l'enseignement et a développé une approche pédagogique unique qui est facile à suivre et à comprendre. Sa connaissance approfondie d'Excel a aidé des milliers d'étudiants et de professionnels du monde entier à améliorer leurs compétences et à exceller dans leur carrière. Grâce à son blog, Hugh partage ses connaissances avec le monde, offrant des tutoriels Excel gratuits et une formation en ligne pour aider les particuliers et les entreprises à atteindre leur plein potentiel.