Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2019 Sélection d'une plage de données via .Address

jui42

XLDnaute Junior
Bonjour,
J'ai un programme me permettant de récupérer l'adresse des dernières cellules d'un tableau.
J'ai donc les propriété "lorem.address" que je recupère bien (test avec messagebox)
Puis-je réalisé une selection de type range("lorem.address1:lorem.address2") ?
Je vous joint le code ainsi qu'un fichier pour la comprehénsion.
merci pour votre temps
VB:
        Dim FirstFound As String        ' definition des variable que l'on va utiliser
        Dim FoundCell As Range, rng As Range
        Dim myRange As Range, LastCell As Range, rbg As Range
    
        Dim strAdress As String
        '**********************************************
        
        
        Set myRange = ActiveSheet.UsedRange
        Set LastCell = myRange.Cells(myRange.Cells.Count)
        Set FoundCell = myRange.Find(what:="Mesures 1", After:=LastCell, LookAt:=xlWhole)

            
        'Test pour voir si qlq chose est trouver
        If Not FoundCell Is Nothing Then
            FirstFound = FoundCell.Address
            
        Else
            
            GoTo NothingFound
        End If
       Set rbg = FoundCell
      
       'Dim strAdress As String
       strAdress = rbg.Address(0, 0)
      
       MsgBox (strAdress)    ' RECUPERATION DE LADRESSE DE LA DERNIERE COLONNE
    
     'MAINTENANT NOUS AVONS LA DERNIERE COLONNE NOUS ALLONS RECUPERER LE NOM DE LA REFERENCE
    
    
        '**************************************************************
        
       Dim kadres As String
        Dim kam As Variant
        Dim dataArea As Range
        
        Dim p_trouve As String
        Dim trouve As Range, tot As Range
        Dim maplaj As Range, d_trouve As Range
        Dim kk As Range
      
        Set maplaj = ActiveSheet.Range("A1:A7")
      
        
      
        
        Set dataArea = maplaj.Range("A2")  ' Voir la doc microsoft sur la manipulation de la propriété Range.Value
        kam = dataArea.Value
        
        kadres = dataArea.Address
        'MsgBox (kadres)
        

        
        Set d_trouve = maplaj.Cells(maplaj.Cells.Count)
        'MsgBox (d_trouve.Address)
        Set trouve = maplaj.Find(what:=kam, LookAt:=xlWhole)
        If Not trouve Is Nothing Then
            p_trouve = trouve.Address
                    
        Else
            GoTo NothingFound
        End If
                
        Set tot = trouve
                
                
        Do
            Set trouve = maplaj.FindNext(After:=trouve)
            Set tot = Union(tot, trouve)
            If trouve.Address = p_trouve Then
                Dim dercel As Range
                Set dercel = tot.Find(kam, SearchDirection:=xlPrevious)
                Exit Do
            End If
        Loop
        
        tot.Select
     '   MsgBox "Dernière cellule trouvée = " & dercel.Address(0, 0)

        Dim lieu As String
        lieu = dercel.Address(0, 0)
        MsgBox (lieu)
        
        ActiveSheet.Range("lieu:strAdress").Select
 

Pièces jointes

  • 6.B18.xlsm
    16.7 KB · Affichages: 2

Discussions similaires

Réponses
2
Affichages
657
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…