Ajout de détails

Bonjour,

J'aimerais voir afficher plus de détails pour une feuille de temps.

Avec une feuille de temps comme exemple; j'aimerais pouvoir cliquer sur la cellule contenant la date (cellule B8) et voir afficher les projets et les heures qui ont été réalisés à cette date précise.

J'aimerais que les cellules B9 à B16 soient cachées et que le détail s'affiche en dessous (projets travaillés, heures travaillées) de la cellule B8. Lorsque je clique à nouveau sur B8 j'aimerais que le détail disparaisse et que le fichier revienne comme avant. Je ne veux pas voir tout le détails sur la feuille de temps cela alourdit trop la feuille; mais j'aimerais pourvoir voir le détail des projets et des heures travaillés au besoin.

Je ne sais pas si c'est avec un filtre que je dois procéder pour aller chercher seulement la date que je désire?

Comment faire passer les données filtrées d'une feuille à l'autre?

Est-ce que je dois plus utiliser la caméra et faire comme une pop-up et faire afficher ainsi le résultat du filtre ?

Je suis débutant VBA et je ne sais pas par où commencer ?

J'inclus un fichier exemple de feuille de temps pour une meilleure compréhension.

Merci à l'avance,

Oiseau Bleu

Bonjour

Un essai à tester. Te covient-il ?

Bye !

Bonjour,

Excuse-moi pour le délai.

Bravo, je suis très content de ce que tu as fait.

Je dois maintenant le comprendre et l'adapter à mon fichier sur lequel je travaille.

Je me demande pourquoi quand j'ouvre le fichier et que j'active les macros il y a l'erreur "1004" "La méthode Select de la classe Range a échoué" et la ligne jaune(arrêt) se fait sur la ligne de code "Cells (Target.Row, 3).Select.

Est-ce que cette ligne doit être déplacée.

Merci,

Oiseau Bleu

Bonjour

Désolé, mais sur mon PC et avec le fichier que je t'ai joint, je n'ai pas ça.

Or, pour corriger un bug, il faut que j'arrive à le reproduire...

Bye !

Merci, pour ta réponse.

J'ai de la difficulté à reproduire ce que tu as fait dans mon fichier dans le quel je travaille car je ne comprend pas.

Est-ce possible pour toi de me donner plus de détails sur le fonctionnement de ton code?

Comme dans le For avec le Ubound ???

Je ne comprend pas le ReDim Preserve tabloR(1 to 3, to k =1)

tabloR(j, l + k) = tablo(i, j)

Option Explicit

Dim cell As Range, fd As Worksheet, tablo, tabloR()

Dim derLn1&, derLn2&, derLn3&, dte, i&, j&, k&

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

If Target.Count > 1 Then Exit Sub

Application.EnableEvents = False

derLn1 = Range("B7").End(xlDown).Row

If Not Intersect(Target, Range("B8:B" & derLn1)) Is Nothing Then

Cells.EntireRow.Hidden = False

Set cell = Range("B:B").Find("Projet(s) travaillé(s)", lookat:=xlWhole)

If Not cell Is Nothing Then

derLn2 = cell.Row

derLn3 = Range("B" & Rows.Count).End(xlUp).Row

Rows(derLn2 & ":" & derLn3).Delete shift:=xlUp

Else

dte = Target

Set fd = Sheets("D?tails des projets")

tablo = fd.Range("B5:D" & fd.Range("B" & Rows.Count).End(xlUp).Row)

k = 0

For i = 1 To UBound(tablo, 1)

If i = 1 Or tablo(i, 3) = dte Then

ReDim Preserve tabloR(1 To 3, 1 To k + 1)

For j = 1 To 3

tabloR(j, 1 + k) = tablo(i, j)

Next j

k = k + 1

End If

Next i

Range("B" & derLn1 + 2).Resize(UBound(tabloR, 2), 3) = Application.Transpose(tabloR)

Range("B7:D7").Copy

Cells(derLn1 + 2, 2).PasteSpecial xlPasteFormats

Rows("8:" & derLn1).EntireRow.Hidden = True

Rows(Target.Row & ":" & Target.Row).EntireRow.Hidden = False

Cells(Target.Row, 3).Select

End If

End If

Application.CutCopyMode = False

Application.EnableEvents = True

End Sub

Sub Evenement()

Application.EnableEvents = True

End Sub

Merci,

j'ai quelques petites connaissances en VBA; mais quand je vois je que tu fais; je vois que j'ai beaucoup de chemin à parcourir.

Oiseau Bleu

Bonjour une autre question,

Si je ne reproduis pas les entêtes de l'onglet Détails des projets dans l'onglet Feuille de temps (Projet(s) travaillé(s)

Comment je fais avec cette ligne de code pour référer à ce que j'ai été cherché dans l'onglet Détails des projets.

Set cell = Range("B:B").Find("Projet(s) travaillé(s)", lookat:=xlWhole)

Merci,

Oiseau Bleu

Bonjour,

J'ai passé la journée à étudier votre code et je trouve le tout vraiment excellent.

Pour l'instant ça va; mais bravo pour tout votre code.

J'ai avancé dans ce que je voulais faire et ma compréhension est meilleure.

Je poserai d'autres questions plus tard.

Merci encore pour votre travail.

Oiseau Bleu

Rechercher des sujets similaires à "ajout details"