Extraire Tableau dim variable depuis un autre tab

  • Initiateur de la discussion Seb
  • Date de début
S

Seb

Guest
Salut c'est remoi! :ermm:
Probleme: J'ai un big tableau avec des dates en colonnes, je souhaiterais creer des macros (Inputbox?) qui demandent a l'utilisateur de saisir une date de début et une date de fin, puis d'extraire le tableau (en bleu clair) concernant la periode choisie et les outils en orange :S
Cf piece jointe
 
S

Seb

Guest
Sorry, pas fait gaffe que .rar c'est pas bon, voila le zip [file name=Tableaupabo.zip size=6688]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Tableaupabo.zip[/file]
 

Pièces jointes

  • Tableaupabo.zip
    6.5 KB · Affichages: 10
S

Seb

Guest
Extraire veut juste dire que je voudrais copier ces donnees sur une autre feuille dans un autre tableau afin d'eliminer tout le reste!
Les variables seraient date de debut et date de fin ou date de debut+365jours

Je n'ai aucune idée de la complexité de ce probleme mais je suis bloqué dessus avec mon petit niveau
 
S

Seb

Guest
En gros, je voudrais dans un nouveau tableau les donnees relatives aux outils oranges pdt la periode comprise entre la date x et la date y, ce qui correspond au tableau surligné en bleu ciel
 

pat1545.

XLDnaute Accro
re

ton tableau est en 2 partie à gauche et à droite, s'il ne peut faire qu'un, alors tu peux utiliser un filtre automatique et de là, trouver les enregistrements qui t'intéressent; rem en passant, pourquoi une colonne avec les jours en dur et les dates juste à coté ?
il suffit de mettre un format personalisé: jjj/jj/mm/aaaa

Patrick
 

myDearFriend!

XLDnaute Barbatruc
Bonsoir Seb, pat1545,

Seb, ci-joint peut-être une façon de faire...

J'ai appliqué le code ci-dessous :
Sub Traitement()
' myDearFriend!) - 03/03/2006
Dim TabTemp As Variant, V As Variant
Dim
D1 As Date, D2 As Date
Dim
L As Long, Lresult As Long
Dim
C As Byte
      'Charge les données dans un tableau variant temporaire
      With Sheets('Feuil3')
            L = .Range('C65536').End(xlUp).Row
            TabTemp = .Range(.Cells(1, 3), .Cells(L, 14)).Value
      End With
      'Demande Date Début et Date Fin souhaitées
      V = DemandeDate('Date de Début ?')
      If Not IsDate(V) Then Exit Sub
      D1 = CDate(V)
      V = DemandeDate('Date de Fin ?')
      If Not IsDate(V) Then Exit Sub
      D2 = CDate(V)
      If D1 > D2 Then Exit Sub
      'Traitement
      With Sheets('Resultats')
            'RAZ résultats
            .Range('A2:F65536').Delete
            For L = 2 To UBound(TabTemp, 1)
                  Select Case TabTemp(L, 1)
                  Case D1 To D2
                        'Détermine la 1ère ligne libre dans la feuille Résultats
                        Lresult = .Range('A65536').End(xlUp).Row + 1
                        'Mettre à jour les résultats
                        For C = 1 To 6
                              .Cells(Lresult, C).Value = TabTemp(L, _
                                    Choose(C, 1, 8, 9, 10, 11, 12))
                        Next C
                  End Select
            Next L
            .Activate
      End With
End Sub


Function DemandeDate(Lib As String) As Variant
      DemandeDate = Application.InputBox(Lib, 'Extraction', Type:=2)
End Function
Cordialement, [file name=Tableaupabo_20060303235045.zip size=12191]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Tableaupabo_20060303235045.zip[/file]
 

Pièces jointes

  • Tableaupabo_20060303235045.zip
    11.9 KB · Affichages: 16
S

Seb

Guest
pat1545. écrit:
re

ton tableau est en 2 partie à gauche et à droite, s'il ne peut faire qu'un, alors tu peux utiliser un filtre automatique et de là, trouver les enregistrements qui t'intéressent; rem en passant, pourquoi une colonne avec les jours en dur et les dates juste à coté ?
il suffit de mettre un format personalisé: jjj/jj/mm/aaaa

Patrick

parce que mon boss ma donné cette base (en gros c pr reperer les weekends facilement)
et sinon ces tableaux sont juste des extraits dun plus gros tableau qui gere de grosses periodes et beaucoup plus d'outils, c'est pr ca quon ma demandé de mettre du code plutot que des filtres...
 
S

Seb

Guest
Hello Dear friend...
le prog marche bien, mais quel parametre gere la dimension du tableau si j'ajoute des outils... Niveau calendrier en longueur c'est bon mais je ne sais pas quoi modifier pr gerer l'ajout d'outil!
Merki d'avance
 

ChTi160

XLDnaute Barbatruc
Salut Seb
bonjour Didier
bonjour le Fil,le Forum
Pour Seb je ne veux pas me substituer à Didier mais je pense pouvoir te répondre lol
les dimensions de la plage prise en compte se trouvent dans cette partie de code ci dessous
L étant la derniere ligne détectée comme non vide en remontant du bas de la colonne C
le tableau temporaire TabTemp est donc délimiter en fonction du nombre des lignes 3 et L puis le nombre de colonnes et ici définie à 14
on pourrait comme pour les Lignes déterminer la derniere colonne non vide de la ligne 1 en partant de la Colonne IV (255)vers la Gauche
exemple Dercol=.Range(IV1).End(xlToLeft).Column
With Sheets('Feuil3')
L = .Range('C65536').End(xlUp).Row
TabTemp =.Range(.Cells(1, 3),.Cells(L,14)).Value
End With
ce qui donnerait
With Sheets('Feuil3')
L = .Range('C65536').End(xlUp).Row
Dercol=.Range(IV1).End(xlToLeft).Column
TabTemp =.Range(.Cells(1, 3),.Cells(L,Dercol)).Value
End With
il te faudra ensuite modifier la Fonction Choose et y rajouter le numero des nouvelles colonne Outil Choose(C,1,8,9,10,11,12,13 etc)
Pour Didier(les explications sont le prétexte pour pouvoir te remercier sur ce fil), moi j'aurai comme tu t'en doutes utilisé un TabResult avec les données récupérées mais je viens grâce à toi de Découvrir une nouvelle Fonction Choosec'est super et je t'en remercie
Bonne Journée

Message édité par: Chti160, à: 04/03/2006 10:46
 

pat1545.

XLDnaute Accro
re MDF, SEB, CHTI160,

moi j'ai une autre approche mais j'avoue avoir eu bcp de mal avec ces *%$ù=)ç~@ de dates.

Voilà mon travail sur base de filtre auto.

Patrick [file name=TableaupaboPMK.zip size=18589]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/TableaupaboPMK.zip[/file]
 

Pièces jointes

  • TableaupaboPMK.zip
    18.2 KB · Affichages: 16

Statistiques des forums

Discussions
312 336
Messages
2 087 389
Membres
103 534
dernier inscrit
Kalamymustapha