Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Ces exemples montrent comment sélectionner la plage utilisée, qui inclut des cellules mises en forme qui ne contiennent pas de données, et comment sélectionner une plage de données, qui inclut des cellules qui contiennent des données réelles.
Exemple de code fourni par : Tom Urtis, Atlas Programming Management
Sélection de la plage utilisée
Cet exemple montre comment sélectionner la plage utilisée sur la feuille active, qui inclut des cellules mises en forme qui ne contiennent pas de données, à l’aide de la propriété UsedRange de l’objet Worksheet et de la méthode Select de l’objet Range . Ensuite, l’utilisateur voit apparaître l’adresse de la plage.
Sub SelectUsedRange()
ActiveSheet.UsedRange.Select
MsgBox "The used range address is " & ActiveSheet.UsedRange.Address(0, 0) & ".", 64, "Used range address:"
End Sub
Sélection d’une plage de données commençant à la cellule A1
Cet exemple montre comment sélectionner une plage de données dans la feuille en cours en commençant par la cellule A1 et comment afficher l' adresse de la plage pour l'utilisateur. La plage de données n’inclut pas les cellules mises en forme qui ne contiennent pas de données. Pour obtenir la plage de données, cet exemple recherche la dernière ligne et la dernière colonne qui contiennent des données réelles à l’aide de la méthode Find de l’objet Range .
Sub SelectDataRange()
Dim LastRow As Long, LastColumn As Long
LastRow = Cells.Find(What:="*", After:=Range("A1"), SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
LastColumn = Cells.Find(What:="*", After:=Range("A1"), SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Column
Range("A1").Resize(LastRow, LastColumn).Select
MsgBox "The data range address is " & Selection.Address(0, 0) & ".", 64, "Data-containing range address:"
End Sub
Sélection d’une plage de données dont l’emplacement de départ est inconnu
Cet exemple montre comment sélectionner une plage de données sur la feuille active lorsque vous ne connaissez pas l’emplacement de départ et afficher l’adresse de la plage à l’utilisateur. La plage de données n’inclut pas les cellules mises en forme qui ne contiennent pas de données. Pour obtenir la plage de données, cet exemple recherche la première et la dernière ligne et colonne qui contiennent des données réelles à l’aide de la méthode Find de l’objet Range .
Sub UnknownRange()
If WorksheetFunction.CountA(Cells) = 0 Then
MsgBox "There is no range to be selected.", , "No cells contain any values."
Exit Sub
Else
Dim FirstRow&, FirstCol&, LastRow&, LastCol&
Dim myUsedRange As Range
FirstRow = Cells.Find(What:="*", SearchDirection:=xlNext, SearchOrder:=xlByRows).Row
On Error Resume Next
FirstCol = Cells.Find(What:="*", SearchDirection:=xlNext, SearchOrder:=xlByColumns).Column
If Err.Number <> 0 Then
Err.Clear
MsgBox _
"There are horizontally merged cells on the sheet" & vbCrLf & _
"that should be removed in order to locate the range.", 64, "Please unmerge all cells."
Exit Sub
End If
LastRow = Cells.Find(What:="*", SearchDirection:=xlPrevious, SearchOrder:=xlByRows).Row
LastCol = Cells.Find(What:="*", SearchDirection:=xlPrevious, SearchOrder:=xlByColumns).Column
Set myUsedRange = Range(Cells(FirstRow, FirstCol), Cells(LastRow, LastCol))
myUsedRange.Select
MsgBox "The data range on this worksheet is " & myUsedRange.Address(0, 0) & ".", 64, "Range address:"
End If
End Sub
À propos du collaborateur
MVP Tom Urtis est le fondateur de gestion Atlas de programmation, un service complet Microsoft Office et société de solutions d’entreprise Excel dans la Silicon Valley. Tom comporte plus de 25 ans d’expérience dans la gestion d’entreprise et de développement Microsoft Office applications et représente co-auteur de « Macro Sainte ! Il existe 2 500 exemples VBA Excel ».
Assistance et commentaires
Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.