Manque analyse et copie de données

Résolu
Nai Messages postés 714 Date d'inscription   Statut Membre Dernière intervention   -  
Nai Messages postés 714 Date d'inscription   Statut Membre Dernière intervention   -
Bonsoir la communauté !
J'utilise un fichier qui récapitule dans 3 feuilles les données contenues dans une autre.
Je suis parvenu, avec l'aide de la communauté, à tout ce que je voulais, à un détail près : J'ai l'impression que toutes les données ne sont pas traitées :/
Voici le code :
Option Explicit
Sub nai()
Application.ScreenUpdating = False
Call Module1.clear
Sheets("Subs 2016 sans demande 2017").Unprotect
Sheets("Subs 2016 avec demandes 2017").Unprotect
Sheets("Nouvelles demandes").Unprotect

Dim numligne As Long, numdest As Long
Dim dest As String
Const ca As String = "Associations subventionnées en 2016 sans demande 2017"
Const fa As String = "Subs 2016 sans demande 2017"

Const cb As String = "Associations subventionnées en 2016 avec demandes 2017"
Const fb As String = "Subs 2016 avec demandes 2017"

Const cc As String = "Nouvelles demandes"
Const fc As String = "Nouvelles demandes"

numligne = 2
Do While Worksheets("Subventions 2017").Cells(numligne, 1) <> ""
    Select Case Worksheets("Subventions 2017").Cells(numligne, 1)
        Case ca:
            dest = fa
        Case cb:
            dest = fb
        Case cc:
            dest = fc
        Case Else:
            dest = ""
    End Select
    
    If dest <> "" Then
            numdest = Worksheets(dest).Cells(5, 1).End(xlDown).Row + 1
            Range(Worksheets("Subventions 2017").Cells(numligne, 2), _
                Worksheets("Subventions 2017").Cells(numligne, 15)).Copy _
                Range(Worksheets(dest).Cells(numdest, 1), Worksheets(dest).Cells(numdest, 14))
            'Worksheets("Subventions 2017").Rows(numligne).EntireRow.Delete
    End If
    numligne = numligne + 1

Loop 'Do While Worksheet("").Cells(numligne, 1) <> ""

Sheets("Subs 2016 sans demande 2017").Protect
Sheets("Subs 2016 avec demandes 2017").Protect
Sheets("Nouvelles demandes").Protect
Application.ScreenUpdating = True
End Sub

Les associations dans les deux catégories ("Associations subventionnées en 2016 sans demande 2017" et "Associations subventionnées en 2016 avec demandes 2017") sont bien transférées dans les bonnes feuilles. Mais la catégorie "Nouvelles demandes" n'est pas entièrement traitée. Je n'ai qu'une entrée dans la feuille "Nouvelles demandes" alors qu'il y en a deux.
Voici le fichier en question : http://www.cjoint.com/c/GBcshAVHAi2_Peut-être y a-t-il quelque chose qui m'a échappé, mais j'ai tenté de reprendre la solution finale de l'aide apportée dans le sujet ci-dessous, en vain.
Nous sommes en pleine période d'attribution des subventions, et je galère grave :(

Je vous remercie d'avance énormément !

Ce sujet est la suite d'un précédent sujet : https://forums.commentcamarche.net/forum/affich-34175427-copier-ligne-s-sous-condition-dans-une-autre-feuille#p34319801


A voir également:

1 réponse

yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
bonsoir, je n'ai pas compris pourquoi cela ne fonctionne pas.
cependant, je pense que cela va mieux fonctionner si tu remplaces la ligne de code
numdest = Worksheets(dest).Cells(5, 1).End(xlDown).Row + 1

par
numdest = Worksheets(dest).Cells(Worksheets(dest).Rows.Count, "A").End(xlUp).Row + 1
1
Nai Messages postés 714 Date d'inscription   Statut Membre Dernière intervention   55
 
Ah, il y a des fidèles au forum ^^
Lorsque tu as posté ta dernière proposition, je n'vais testé qu'avec une association. C'est en situation réelle (avec 14 nouvelles demandes) que j'ai remarqué la coquille.

Ta proposition fonctionne parfaitement, je teste demain en situation réelle.
Si tu n'as pas compris pourquoi ça ne fonctionne pas, je n'avais aucune chance de trouver le soucis ^^

Encore merci !
0
Nai Messages postés 714 Date d'inscription   Statut Membre Dernière intervention   55
 
Nickel chrome ! Tout va bien, merci ! :)
0