Table des matières
Si vous recherchez les méthodes les plus simples pour utiliser VBA Range Offset, alors vous trouverez que cet article en vaut la peine. Commençons par les manières d'utiliser l'option VBA Décalage de la gamme.
Télécharger le cahier d'exercices
VBA Décalage de plage.xlsm11 façons d'utiliser le décalage de plage en VBA
Je dispose du tableau de données suivant, qui contient des informations sur les étudiants d'un établissement d'enseignement supérieur. VBA Décalage de la gamme.
À cette fin, j'ai utilisé Microsoft Excel 365 vous pouvez utiliser toute autre version selon votre convenance.
Méthode 1 : Sélection d'une cellule à l'aide d'une plage VBA
Ici, nous allons sélectionner une cellule contenant le nom Daniel Defoe. À cette fin, nous utiliserons le Fonction RANGE sur VBA .
Step-01 :
➤Go to Développeur Tab>> ; Visual Basic Option
Ensuite, le Éditeur Visual Basic s'ouvrira.
➤Go to Insérer Tab>> ; Module Option
Après cela, un Module sera créé.
Step-02 :
➤Write the following code
Sub SelectCell() Range("B8").Select End Sub
Il sélectionnera la cellule B8 .
➤Press F5
Résultat :
De cette façon, vous obtiendrez la cellule contenant Daniel Defoe sélectionné.
Lire la suite : Comment utiliser l'objet Range de VBA dans Excel ?
Méthode 2 : Sélection d'un groupe de cellules contiguës à l'aide d'une plage VBA
Vous pouvez sélectionner une plage de cellules contiguës, comme dans l'exemple suivant Nom de l'élève et la colonne Résultat dans le tableau suivant en suivant cette méthode.
Step-01 :
➤Follow Step-01 de Méthode 1
Sub ContiguousCells() Range("B5:C10").Select End Sub
Il sélectionnera les cellules de B5 à C10 .
➤Press F5
Résultat :
Après cela, vous obtiendrez les cellules dans Colonne B et Colonne C sélectionné.
Méthode 3 : Sélection d'un groupe de cellules non contiguës à l'aide de la plage VBA
Supposons que vous vouliez sélectionner les élèves nommés William David et Michael Anthony y compris leurs Id. de courriel Pour sélectionner ces cellules non congruentes, vous pouvez suivre cette méthode.
Step-01 :
➤Follow Step-01 de Méthode 1
Sub nonContiguous() Range("B6,D6,B9,D9").Select End Sub
Il sélectionnera les cellules B6 , D6 , B9, et D9 .
➤Press F5
Résultat :
Vous obtiendrez alors les cellules contenant le nom de l'étudiant. William David , Michael Anthony, et leurs Id. de courriel sélectionné.
Méthode 4 : sélection d'un groupe de cellules non contiguës et d'une plage à l'aide d'une plage VBA
Vous pouvez sélectionner simultanément une plage de cellules et certaines cellules non contiguës en suivant cette méthode.
Step-01 :
➤Follow Step-01 de Méthode 1
Sub nonContiguouswithrange() Range("B5:B10,D6,D10").Select End Sub
Il sélectionnera la plage de cellules dans la plage B5:B10 et les deux autres cellules D6 , D10 .
➤Press F5
Résultat :
Ensuite, vous obtiendrez les cellules de la colonne Nom de l'élève et deux Identités de courriel pour William David et Donald Paul sélectionné.
Méthode 5 : Sélection d'une plage en utilisant le décalage de plage de VBA
Vous pouvez sélectionner une plage de cellules dans le Colonne Nom de l'élève en utilisant le Fonction OFFSET .
Step-01 :
➤Follow Step-01 de Méthode 1
Sub selectrangeoffset() Range("A1:A6").Offset(4, 1).Select End Sub
Au début, Range("A1:A6") sélectionnera la gamme A1:A6 et ensuite Décalage (4, 1) déplacera 4 rangées vers le bas à partir de la cellule A1 et 1 colonne à droite. Ensuite, le même nombre de cellules dans l'intervalle A1:A6 sera sélectionné à partir d'ici.
➤Press F5
Résultat :
De cette manière, vous allez sélectionner la colonne Nom de l'élève .
Méthode-6 : VBA - Décalage de plage négatif
Vous pouvez sélectionner le Colonne Email Id en suivant cette méthode.
Step-01 :
➤Follow Step-01 de Méthode 1
Sub negativerangeoffset() Range("F11:F16").Offset(-6, -2).Select End Sub
Au début, Range("F11:F16") sélectionnera la gamme F11:F16 et ensuite Décalage (-6, -2) déplacera 6 rangs vers le haut à partir de la cellule F11 et 2 colonnes à gauche. Ensuite, le même nombre de cellules dans l'intervalle F11:F16 sera sélectionné à partir d'ici.
➤Press F5
Résultat :
Après cela, vous pourrez sélectionner la colonne Id. de courriel .
Lectures similaires :
- VBA pour chaque cellule d'une plage dans Excel (3 méthodes)
- Comment compter du texte dans Excel (7 astuces faciles)
Méthode 7 : Sélection d'une plage par rapport à la cellule active
Ici, nous avons une cellule active (cellule A1 ) et par rapport à cette cellule, nous allons sélectionner la plage de données dans cette méthode.
Step-01 :
➤Follow Step-01 de Méthode 1
Sub actvcell() Range(activecell.Offset(4, 1), activecell.Offset(9, 3)).Select End Sub
Ici, cellule active est A1
La première partie cellule active.Offset(4, 1) sélectionnera une cellule à 4 rangées vers le bas et 1 colonne vers la droite de la cellule A1 et la deuxième partie cellule active.Offset(9, 3) sélectionnera une cellule à 9 rangées vers le bas et 3 colonnes vers la droite de la cellule A1 .
Enfin, toutes les cellules situées entre ces deux cellules seront sélectionnées.
➤Press F5
Résultat :
Vous pourrez alors sélectionner l'ensemble de la plage de données.
Méthode 8 : Copier une plage
Si vous souhaitez copier une plage de cellules, vous pouvez suivre cette méthode.
Step-01 :
➤Follow Step-01 de Méthode 1
Sub copyrangeoffset() Range("A1:A6").Offset(4, 1).Copy End Sub
Au début, Range("A1:A6") sélectionnera la gamme A1:A6 et ensuite Décalage (4, 1) déplacera 4 rangées vers le bas à partir de la cellule A1 et 1 colonne à droite. Ensuite, le même nombre de cellules dans l'intervalle A1:A6 sera sélectionné à partir d'ici.
Enfin, il copiera les valeurs de l'intervalle B5:B10 .
➤Press F5
Résultat :
Après cela, vous serez en mesure de copier la plage de données dans le fichier Colonne Nom de l'élève .
Méthode-9 : Suppression d'une plage
Ici, nous allons montrer la façon de supprimer une plage de données en utilisant VBA code.
Step-01 :
➤Follow Step-01 de Méthode 1
Sub dltrangeoffset() Range("F11:F17").Offset(-7, -2).Delete End Sub
Tout d'abord, Range("F11:F17") sélectionnera la gamme F11:F17 et ensuite Décalage (-7, -2) va déplacer 7 lignes vers le haut à partir de la cellule F11 et 2 colonnes à gauche. Ensuite, le même nombre de cellules dans l'intervalle F11:F17 sera sélectionné à partir d'ici.
Enfin, il supprimera la plage D4:D10 .
➤Press F5
Résultat :
De cette manière, vous copierez la plage de données dans le fichier Colonne Email Id .
Méthode 10 : utiliser le décalage de plage de VBA pour saisir une valeur
Ici, nous avons une cellule vide (nous avons supprimé la valeur de cette cellule pour expliquer cette méthode) dans le tableau de bord. Colonne Nom de l'élève et nous voulons le remplir avec le nom Joseph Michael En utilisant un VBA nous pouvons facilement entrer cette valeur.
Step-01 :
➤Follow Step-01 de Méthode 1
Sub valuerangeoffset() Range("A1").Offset(6, 1).Value = "Joseph Michael" End Sub
Tout d'abord, Range("A1") sélectionnera la cellule A1 et ensuite Décalage (6, 1) déplacera 6 rangées vers le bas à partir de la cellule A1 et 1 colonne à droite. Ensuite, la cellule B7 sera sélectionné et enfin, il entrera la valeur "Joseph Michael" dans cette cellule.
➤Press F5
Résultat :
De cette façon, vous obtiendrez le nom Joseph Michael en cellule B7 .
Méthode 11 : Utilisation du décalage de plage de VBA pour obtenir la sortie.
Supposons que vous vouliez écrire Adopté ou Pas de correspondance aux noms des élèves en fonction de la Colonne de résultats où Passez ou Échec a été écrite entre parenthèses. Pour trouver cette sous-chaîne dans le fichier Colonne de résultats et l'inscrire dans le Colonne Pass/Fail suivre cette méthode.
Step-01 :
➤Follow Step-01 de Méthode 1
Sub CheckSubstring() Dim cell As Range For Each cell In Range("C5:C10") If InStr(cell.value, "Pass")> ; 0 Then cell.Offset(0, 1).value = "Passed" Else cell.Offset(0, 1).value = "Failed" End If Next cell End Sub
Ici, la plage de cellules C5:C10 est sélectionné par Range("C5:C10") qui est le Colonne de résultats
InStr(cell. value, "Pass")> ; 0 est la condition où le nombre est supérieur à zéro (lorsque la cellule contient "Passe" ), la ligne suivante continuera et donnera la sortie dans la cellule adjacente comme suit Adopté Ici, la cellule adjacente sera sélectionnée par cellule.Offset(0, 1) ce qui signifie qu'il se déplacera d'une colonne à droite de la cellule d'entrée.
Si la condition devient fausse, cela signifie qu'une cellule ne contient pas d'informations. "Pass" puis la ligne sous Else s'exécutera et donnera la valeur de sortie dans la cellule adjacente en tant que Échoué .
Cette boucle se poursuit pour chaque cellule.
➤Press F5
Résultat :
Ensuite, vous obtiendrez les résultats suivants Réussi ou échoué dans le Pass/Fail colonne.
Section pratique
Pour vous entraîner vous-même, nous avons fourni un Pratique comme ci-dessous dans une feuille nommée Pratique S'il vous plaît, faites-le vous-même.
Conclusion
Dans cet article, j'ai essayé de couvrir les méthodes les plus simples pour utiliser VBA le décalage de plage dans Excel de manière efficace. Nous espérons que vous trouverez cet article utile. Si vous avez des suggestions ou des questions, n'hésitez pas à nous en faire part.