Macro pour réafficher données archivées...

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 !

Christian0258

XLDnaute Accro
Bonjour à tout le forum,

Je souhaiterais votre aide pour l'écriture d'une macro. Il s'agit, depuis un classeur ouvert, d'importer des données archivées (d'un classeur fermé) en fonction du N° de semaine situé en colonne A....

fichier joint...

Merci pour le temps que vous voudrez bien m'accorder.

Bien amicalement,
Christian
 

Pièces jointes

Re : Macro pour réafficher données archivées...

Bonjour,

je pense à un bouton, placé dans la feuille Semaine appelant un USF avec un déroulant de 1à52 (Col A) afin de récupérer toutes les *colonnes concernées par le N° de semaine sélectionnée.

Ton idée est bonne mais pourquoi n'as-tu pas créé l'USF?
Ce n'est pas que nous sommes fainéants mais en faisant toi-même un maximum de chose tu auras plus de chance d'avoir de réponses.
 
Re : Macro pour réafficher données archivées...

Re bonjour à tout le forum,

Tu as raison Skoobi, mais je suis une bille en VBA.

J'ai quand même réussi à faire un USF, j'arrive à l'ouvrir mais après c'est trop pour moi....Lol

Merci pour votre aide si précieuse.

à+

Christian
 

Pièces jointes

Re : Macro pour réafficher données archivées...

Bonjour,

Bonjour, Skoobi 🙂🙂

un essai sans USF

Tu mets le numéro de semaine dans la cellule A2

Tu as tes archives....

Le code :

Code:
Sub Visu_Archives()
Dim Wb1 As Object
Dim WB2 As Workbook
Dim Plg As Range, Derlgin As Long
Application.ScreenUpdating = False
Set Wb1 = ThisWorkbook.Sheets("Semaine")
Set WB2 = Workbooks.Open("C:\ArchivesQtésCommandes.xls")
With WB2.Sheets("Archives")
    derlign = .Range("A65536").End(xlUp).Row
    .Range("A1:O" & derlign + 1).Name = "base"
    .Range("base").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Wb1.Range( _
        "A1:A2"), CopyToRange:=Wb1.Range("C1:Q1")
End With
WB2.Close False
End Sub

et dans l'évènement de feuille :

Code:
Private Sub Worksheet_Activate()
Application.Goto Range("A1"), True
[A2] = ""
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Target.Address = "$A$2" And Target <> "" Then
    Call Visu_Archives
End If
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address = "$A$2" Then
    For i = 1 To DatePart("ww", Date, 2, 2)
        temp = temp & "," & i
    Next i
    temp = Right(temp, Len(temp) - 1)
    With Target.Validation
        .Delete
        .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
        xlBetween, Formula1:=temp
    End With
End If
End Sub

le fichier :
 

Pièces jointes

Re : Macro pour réafficher données archivées...

Re, le forum, bhbh,

Formidable, bhbh, ta solution.

Tite question; j'ai l'impression que seul le lundi s'affiche dans les colonnes jours de livraison...

à te lire,

Merci pour ton magnifique boulot.
Bien à toi,

Christian
 
Re : Macro pour réafficher données archivées...

Re-,

Vu....

😡 😡 😡 de cellules fusionnées.....

Regarde dans les fichiers joints...

De J1 à N1, des en-têtes masqués par un Dessin "Livraison", dans le fichier "ArchivesQtésCommandes"

et dans "AfficherArchives_v2", les mêmes en-têtes, également masqués par le même Dessin

Il faut donc que tu modifies tes en-têtes dans le classeur "Archives....."

😡😡😡 de cellules fusionnées.....

Bonne soirée
 
Re : Macro pour réafficher données archivées...

Re, le forum, bhbh,

Message reçu pour les cellules fusionnées.

J'ai mis livraison dans les colonnes de lundi à vendredi dans la classeur ArchivesQtésCommandées ainsi que dans les feuilles "Donnees transposees" et "Semaine" du classeur AfficherArchives v1 mais je récupère que lundi dans chaque colonnes...

Peux-tu me faire voir comment corriger les entêtes.

Merci pour tout
à+
Chritian
 
Re : Macro pour réafficher données archivées...

Re-,

Regarde dans chacune de mes cellules, sous le dessin "Livraison"...

"LI" : cellule J1
"VR" : cellule K1
"AI" ...
"S" ...
"ON"

sont les en-têtes de chaque colonne....(soit un en-tête différent par colonne...)
 
- 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

Discussions similaires

Réponses
9
Affichages
886
Retour