Com utilitzar la propietat UsedRange de VBA a Excel (4 maneres)

  • Comparteix Això
Hugh West

En aquest article, us mostraré com podeu utilitzar la propietat UsedRange de VBA a Excel. Aprendràs a utilitzar la propietat UsedRange per a un rang tancat, per a un rang dispers, per a un full de treball inactiu i també per a un llibre de treball inactiu.

Descarregar el quadern de pràctiques

Descarregueu aquest llibre de treball per practicar mentre llegiu aquest article.

Excel VBA UsedRange.xlsm

Una introducció a la propietat UsedRange de VBA a Excel

La propietat UsedRange de VBA retorna un objecte Range . Retorna un interval format per totes les cel·les d'un full de treball que s'ha utilitzat, inclosa una fila buida al principi.

En un codi VBA , la propietat UsedRange s'ha d'utilitzar juntament amb el nom del full de treball. Així, la sintaxi habitual per utilitzar la propietat UsedRange per al full de treball actiu és:

Dim Rng As Range

Set Rng = ActiveSheet.UsedRange

Notes:

  • Aquí Rng és el nom del Range que retorna la propietat UsedRange . Podeu utilitzar qualsevol cosa que vulgueu.
  • Per exercir la propietat UsedRange en un full de treball diferent de l'actiu, feu servir el nom del full de treball.

Per exemple, per aplicar-lo en un full de treball anomenat Full1 , inseriu:

Set Rng = Worksheets("Sheet1").UsedRange

4 maneres per utilitzar la propietat UsedRange de VBA a Excel

Aquí hi ha els 4 més comunsmaneres d'utilitzar la propietat UsedRange a VBA .

1. Propietat VBA UsedRange per a un rang tancat

En primer lloc, utilitzarem la propietat VBA UsedRange per a un full de treball amb un rang tancat.

És' Retornarà tot l'interval inclosa una fila buida al principi.

Aquí tenim un full de treball anomenat Full1 que conté un interval tancat que consta dels noms, les dates d'unió i els sous de alguns empleats d'una empresa.

Ara, si feu servir la propietat UsedRange en aquest full de treball, tornarà l'interval B2:C13 (Incloent una fila buida al principi).

Si Full1 està actiu, podeu utilitzar:

Dim Rng As Range

Set Rng = ActiveSheet.UsedRange

O podeu utilitzar:

Dim Rng As Range

Set Rng = Worksheets("Sheet1").UsedRange

Sortida :

Hem utilitzat la propietat Select d'un Range dins del codi. Per tant, si executem el codi, seleccionarà l'interval B2:D13 de Full1 .

Llegir més: Com utilitzar l'objecte Range de VBA a Excel (5 propietats)

2. Propietat VBA UsedRange per a un interval dispers

Si teniu un interval dispers en qualsevol full de treball, la propietat UsedRange retornarà un interval que inclou les cel·les buides entremig.

Ara, a Full1 , tenim el sou total, el sou més alt i el sou més baix dispersos en diversos llocs, des de la cel·la B3 fins a G3 , com aquest:

Ara feu servir qualsevol de les dues línies de codi per utilitzar la propietat UsedRange .

Dim Rng As Range

Set Rng = ActiveSheet.UsedRange

O

Dim Rng As Range

Set Rng = Worksheets("Sheet1").UsedRange

Sortida:

Retorna totes les cel·les dins de l'interval B2:G3 de Full1 incloses les cel·les en blanc (incloent una fila buida al principi). Com que hem utilitzat la propietat Select de l' Range , seleccionarà l'interval B2:G3.

Llegir més: Fi d'un rang utilitzant VBA a Excel (amb exemples)

Lectures similars

  • Excel VBA Copia l'interval a un altre full (8 maneres més fàcils)
  • Recorre un interval per a cada cel·la amb Excel VBA (última Guia)
  • Error de subíndex d'Excel fora de rang a VBA (amb 5 solucions)

3. Propietat VBA UsedRange per a un full de treball inactiu

Si volem exercir la propietat UsedRange en un full de treball inactiu, heu d'esmentar el nom del full de treball al principi.

Per exemple, aquí el meu full de treball actiu és Sheet1 .

Per utilitzar la propietat UsedRange a Sheet2 , hem d'utilitzar :

Dim Rng As Range

Set Rng = Worksheets("Sheet2").UsedRange

És Seleccionaré totes les cel·les utilitzades al full de treball anomenat Full2 .

Llegir més: VBA per establir l'interval a Excel (7 exemples)

4.Propietat UsedRange de VBA per a un llibre de treball inactiu

Fins i tot podeu utilitzar la propietat UsedRange per a un llibre de treball que no estigui actiu. Només heu de posar el nom del llibre de treball al davant.

Per exemple, aquí el meu llibre de treball actiu és Llibre de treball1 . Per exercir la propietat UsedRange sobre Sheet1 de Workbook2 , hem d'utilitzar:

Dim Rng As Range

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

Seleccionarà l'interval utilitzat del full de treball Full1 de Workbook2 .

Llegir més: VBA per a cada cel·la de l'interval a Excel (3 mètodes)

Coses per recordar

La propietat UsedRange de VBA retorna un objecte Range . Aquí, en aquest article, hem utilitzat la propietat Select d'un Rang object per a la visualització. Però, òbviament, podeu utilitzar qualsevol altra propietat d'un Interval segons la vostra conveniència.

Conclusió

Usant aquests mètodes, podeu utilitzar el UsedRange propietat a Excel. Té vostè alguna pregunta? No dubteu a preguntar-nos.

Hugh West és un entrenador i analista d'Excel molt experimentat amb més de 10 anys d'experiència en el sector. És llicenciat en Comptabilitat i Finances i Màster en Administració i Direcció d'Empreses. Hugh té una passió per l'ensenyament i ha desenvolupat un enfocament pedagògic únic que és fàcil de seguir i entendre. El seu coneixement expert d'Excel ha ajudat a milers d'estudiants i professionals de tot el món a millorar les seves habilitats i a destacar en les seves carreres. A través del seu bloc, Hugh comparteix els seus coneixements amb el món, oferint tutorials d'Excel gratuïts i formació en línia per ajudar les persones i les empreses a assolir tot el seu potencial.