stockage les lignes d'une feuille ds une variable

  • Initiateur de la discussion Initiateur de la discussion AGLAS
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

A

AGLAS

Guest
Bonjour le forum,

Je cherche le moyen de stocker dans une variable une collection de lignes d'une feuille de classeur. Etant donné que les lignes de la feuille en question sont parcourues au travers d'une boucle de recherche qui conditionne leur insertion dans la variable, j'ai opté pour un tableau de type Range mais je ne suis par sûr de la déclaration et visiblement je m'y prends mal vu que ça plante. Le but de la manoeuvre, c'est de travailler ensuite sur ces lignes mémoires et les supprimer au fur et à mesure de l'exécution du traitement, sans affecter les données effectivement présentent sur la feuille (ci-après le code posant pb). Un avis aux connaisseurs donc.... Merci bcp pour votre aide.

Code:
    Dim i, k, j As Integer
    Dim C As Range
    'affects() stocke les lignes
    Dim affects() As Range
    
    j = 0
    i = 0
    With Worksheets('Affectations').Columns(5)
        Set C = .Find(Numtask, LookIn:=xlValues, LookAt:=xlWhole)
        If Not C Is Nothing Then
            j = C.Row
            Do
                ReDim Preserve affects(i)
                'stockage ligne courante <- BUG !
                affects(i) = Worksheets('Affectations').Rows(j)
                i = i + 1
                j = j + 1
            Loop While Worksheets('Affectations').Cells(j, 5).Value = Numtask
        End If
    End With
 
Re:stockage les lignes d'une feuille ds une variab

Bonjour le forum, bebere,

Merci une fois de plus bebere, je n'étais pas certain que cela soit possible en fait, mais il demeure tout de même un pb ; lorsque ma variable tableau Affect() de type Variant est vide (qu'aucune valeur initiale n'a été affectée) et qu'elle se trouve soumise à traitement du type For k = 0 To UBound(Affects()) ça plante de nouveau. J'ai essayé If Affects(0).Value <> Empty Then Exit Sub mais cela ne marche pas non plus, aurais-tu une idée sur la manière de procéder ?
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
5
Affichages
909
Réponses
3
Affichages
879
Retour