[tableau & copie] Macro qui ne retourne pas d'erreur mais qui ne marche pas

manautop

XLDnaute Nouveau
Bonjour à tous,

je me suis fait un petit excel (avec votre aide) pour gérer mes projets.
Je rencontre une difficulté dans l'exécution de ma macro sans qu'une erreur ne soit affiché.

Sur la page HOME le bouton "+" me permet de rajouter un projet et de le nommer par son numéro.

Sur l'onglet du projet créé, je peux y place le planning/rétroplanning.
Dans cette partie il y a des checkbox qui me permettent de valider ou non les actions et de suivre l'avancement de ce projet.
Quand on coche une checkbox la mention vrai apparaît (dans la couleur de la ligne pour ne pas la voir), si la checkbox n'est pas coché c'est la valeur faux qui est appliquée.

retour dans l'onglet HOME.
un bouton me permet d'actualiser la page.
Le tableau est mis à jour (les onglets sont parcourus et les info de chaque projets sont affiché)
et c'est ici que ce pose mon problème, en colonnes V.

Normalement en V devrait s'afficher la une des étapes du planning du projet en se basant sur le valeur VRAI et/ou FAUX. Le problème est que rien ne s affiche sauf si je change le nom de la colonne du tableau.

Pouvez vous me venir en aide ?

Vous trouverez le fichier disponible ici : Lien supprimé ou en pièce jointe

et je reste à dispo pour vos questions

Merci d'avance,

Cordialement,

Jonathan
 

Pièces jointes

  • 1 - test.xlsm
    127.7 KB · Affichages: 60
C

Compte Supprimé 979

Guest
Re : [tableau & copie] Macro qui ne retourne pas d'erreur mais qui ne marche pas

Salut Manautop

Une autre solution qui évite le "Find"
Code:
DLig = 28 + Application.WorksheetFunction.CountIf(Sheets(i).Range("G29:G51"), True)
Range("V" & LastR).Value = Sheets(i).Cells(Trouve.Row, 7).Value

A+
 

manautop

XLDnaute Nouveau
Re : [tableau & copie] Macro qui ne retourne pas d'erreur mais qui ne marche pas

Bonjour,

Merci de ta réponse mais cela ne marche pas ... enfin cela me donne une erreur 91 "variable d'objet ou variable with non définie"

Je ne vois pas pourquoi ...


Code:
sub ListePage()
Application.ScreenUpdating = False
With Sheets("HOME").ListObjects("Devoirs") 'je vide le tableau devoirs
    If Not .DataBodyRange Is Nothing Then .DataBodyRange.Delete
End With

Sheets("HOME").Select 'je selectionne la feuille dashboard

Dim LastR As Long
Dim subAss As String
Dim valCell As String
Dim CyViA As String
Dim Trouve As Range

For i = 7 To Sheets.Count


subAdd = Sheets(i).Name & "!j2"
valCell = Sheets(i).Range("j2").Value
LastR = Derniere_Ligne(ActiveSheet) + 1
    ActiveSheet.Hyperlinks.Add Anchor:=Range("E" & LastR), Address:="", SubAddress:=subAdd, TextToDisplay:=valCell 'nom de page + lien
    
Range("E" & LastR).Value = Sheets(i).Range("J2").Value 'numéro d opé
Range("F" & LastR).Value = Sheets(i).Range("C2").Value 'titre d opé
Range("H" & LastR).Value = Sheets(i).Range("G52").Value 'pourcentage
Range("I" & LastR).Value = Sheets(i).Range("L5").Value 'annonceur
Range("J" & LastR).Value = Sheets(i).Range("L6").Value 'marque
Range("K" & LastR).Value = Sheets(i).Range("L7").Value 'type d'opé
Range("L" & LastR).Value = Sheets(i).Range("L8").Value 'mode de participation
Range("M" & LastR).Value = Sheets(i).Range("L9").Value 'Iframe
Range("N" & LastR).Value = Sheets(i).Range("L10").Value 'URL
Range("O" & LastR).Value = Sheets(i).Range("L11").Value 'Hébergement
Range("P" & LastR).Value = Sheets(i).Range("L12").Value 'resp. commercial
Range("Q" & LastR).Value = Sheets(i).Range("L13").Value 'chef de projet
Range("R" & LastR).Value = Sheets(i).Range("L14").Value 'chargé d'opé
Range("S" & LastR).Value = Sheets(i).Range("L15").Value 'Nb de jour estimé
Range("T" & LastR).Value = Sheets(i).Range("E52").Value 'Nb jour réél
Range("U" & LastR).Value = Sheets(i).Range("E28").Value 'Date de début
Range("y" & LastR).Value = Sheets(i).Range("E51").Value 'Date de fin

DLig = 28 + Application.WorksheetFunction.CountIf(Sheets(i).Range("G29:G51"), True)
Range("V" & LastR).Value = Sheets(i).Cells(Trouve.Row, 7).Value



  Next 'Feuille Suivante
Application.ScreenUpdating = True
End Sub

Function Derniere_Ligne(Sh As Worksheet) As Long
Derniere_Ligne = Sh.Cells.Find("*", Range("A1"), , , xlByRows, xlPrevious).Row
End Function


Merci de ton aide
 
C

Compte Supprimé 979

Guest
Re : [tableau & copie] Macro qui ne retourne pas d'erreur mais qui ne marche pas

Re,

Désolé, c'est de ma faute :eek: j'ai laissé le mauvais code

Puisque je recherche le nombre de ligne à vrai, avec le code
Code:
DLig = 28 + Application.WorksheetFunction.CountIf(Sheets(i).Range("G29:G51"), True)

Il faut remplacer
Code:
Range("V" & LastR).Value = Sheets(i).Cells(Trouve.Row, 7).Value
Par
Code:
Range("V" & LastR).Value = Sheets(i).Cells(DLig, 7).Value

A+
 

Discussions similaires

Statistiques des forums

Discussions
312 198
Messages
2 086 140
Membres
103 129
dernier inscrit
Atruc81500