XL 2010 Copie de lignes dans différentes feuilles

ch_claude

XLDnaute Nouveau
Bonjour,

Suite à des changements d'entête de colonne, mon fichier ne fonctionne plus.
Le but est de copier les lignes dans les divers feuilles en fonction du code postal.

Merci d'avance de votre aide !
 

Pièces jointes

  • NEW_Extraction - Enquête téléphonique pour TEST.zip
    337 KB · Affichages: 16

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Ch_claude,
Pourriez vous nus éclairer sur ce que vous voulez faire avec :
VB:
.Range("BASE").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range("param!c1:c2"), CopyToRange:=Range("BASE!A1:P1"), Unique:=False
Sachant que param!c1 est vide et que C2 vaut FAUX puisque lecture_all_simple!J2 est vide aussi.
 

ch_claude

XLDnaute Nouveau
Bonjour,
Je crois que j'ai compris où se situe le problème.
Dans la feuille paramètre en C2, cela pointe sur la mauvaise colonne. Cela devrait être ceci :
=ET(lecture_all_simple!O2>=Param!$B$1;lecture_all_simple!O2<=Param!$B$2)
Le O remplace le J. Mais j'ai beau changé, le J revient systématiquement.
Avez-vous une idée ?
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Normal, puisque vous modifiez la formule par macro :
VB:
Sheets("Param").Select
    ActiveSheet.Unprotect
    Range("C2").Select
    ActiveCell.FormulaR1C1 = _
        "=AND(lecture_all_simple!RC[7]>=Param!R1C2,lecture_all_simple!RC[7]<=Param!R2C2)"
Pour atteindre la col O, essayez avec RC[12].
 

ch_claude

XLDnaute Nouveau
Le but est de déplacer les lignes depuis la feuille "lecteure_all_simple" selon le code postal et les répartir dans les différentes feuilles.

J'ai ajouté un ancien fichier qui fonctionnait ainsi cela sera plus clair.
 

Pièces jointes

  • OLD-Extraction.zip
    364.2 KB · Affichages: 2
Dernière édition:

sylvanu

XLDnaute Barbatruc
Supporter XLD
Re,
Dans la ligne :
VB:
.Range("BASE").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range("param!c1:c2"), CopyToRange:=Range("BASE!A1:P1"), Unique:=False
Le criteriarange attendu est le critère de filtrage, or en param!c1:c2 vous avez VRAI ou FAUX
C'est à ce niveau que ça bloque.
En lien un essai avec une macro simple Dispatche, à voir s'il vous convient :
https://www.cjoint.com/c/JFrmd6pObTY

A noter que certains codes postaux se répètent, je ne sais pas si c'est normal.
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Oh, vous savez je suis un peu bourrin. Je vois 58 colonnes, je copie toute la ligne. :)
Remplacez le code par :
VB:
Sub Dispatche()
Application.ScreenUpdating = False
NbLignes = Application.CountIf(Sheets("lecture_all_simple").Range("O:O"), ">0")
For i = 2 To NbLignes
    Codpost = Sheets("lecture_all_simple").Range("O" & i)
    For Col = 4 To 8
        Sheets("Param").Activate
        If Application.CountIf(Sheets("Param").Range(Cells(3, Col), Cells(1000, Col)), Codpost) > 0 Then
            NameSheet = Sheets("Param").Cells(1, Col)
            Sheets("lecture_all_simple").Range("A" & i & ":P" & i).Copy
            Sheets(NameSheet).Range("A2:P2").PasteSpecial
            Sheets(NameSheet).Rows("2:2").Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
            Exit For
        End If
    Next Col
Next i
Sheets("lecture_all_simple").Activate
End Sub
 

ch_claude

XLDnaute Nouveau
En fait, dans la feuille "lecture_all_simple", il y toutes les colonnes mais il n'y a que certaines d'entres qui doivent être copiées dans les feuilles EST, Lausanne, Nord, Ouest, Nyon, Venoge selon les colonnes se trouvant dans la feuille BASE.
 

ch_claude

XLDnaute Nouveau
Bonjour,
J'ai trouvé quelques erreurs mais, désolé, qui sont dûes à une mauvaise indication de ma part. En fait, pour déplacer les lignes dans les différentes feuilles, il faut prendre le Code_Postal_formtion et non pas le Code_Postal_Contrat.
Après c'est plus de la cosmétique, Les lignes importées sont en caractère gras et il y a la ligne No 2 qui est vide.
En regardant le code, j'imagine que les chiffres dans l'IndexW correspondent aux colonnes. Comment savoir à quelle colonnes correspondent ces chiffres ?
 

Discussions similaires

Réponses
8
Affichages
431

Statistiques des forums

Discussions
312 496
Messages
2 088 980
Membres
103 997
dernier inscrit
SET2A