Macro actualisation d'un TCD perturbée par d'autres macro
Résolu
romanza
Messages postés
249
Date d'inscription
Statut
Membre
Dernière intervention
-
romanza Messages postés 249 Date d'inscription Statut Membre Dernière intervention -
romanza Messages postés 249 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je vous livre mon fichier qui est un projet de gestion des tâches.
https://mon-partage.fr/f/j1UsYAXI/
- 1 onglet Base de données à saisir
- 1 onglet Rétroplanning qui est un TCD qui se met à jour automatiquement en fonction de la base quand on va sur l'onglet
-1 onglet de chronologie des tâches, autre TCD (reprenant les données de la base) qui ne se met pas à jour quand on va sur cet onglet. C'est mon problème
Le fichier comporte plusieurs macros qui ne sont pas de moi et que j'ai juste recopié puisque je ne maîtrise pas le langage VBA.
Sur la feuille chronologie des tâches, pour mettre à jour le TCD quand on sélectionne cette feuille, j'ai bien essayé de mettre :
Private Sub Worksheet_Activate()
ThisWorkbook.RefreshAll
End Sub
mais ça bug avec une autre macro et là je suis perdu.
Pour quelqu'un qui maîtrise le VBA, ce doit être bête comme chou mais je ne trouve pas la solution après avoir essayé.
Merci beaucoup pour votre aide précieuse.
romanza
Je vous livre mon fichier qui est un projet de gestion des tâches.
https://mon-partage.fr/f/j1UsYAXI/
- 1 onglet Base de données à saisir
- 1 onglet Rétroplanning qui est un TCD qui se met à jour automatiquement en fonction de la base quand on va sur l'onglet
-1 onglet de chronologie des tâches, autre TCD (reprenant les données de la base) qui ne se met pas à jour quand on va sur cet onglet. C'est mon problème
Le fichier comporte plusieurs macros qui ne sont pas de moi et que j'ai juste recopié puisque je ne maîtrise pas le langage VBA.
Sur la feuille chronologie des tâches, pour mettre à jour le TCD quand on sélectionne cette feuille, j'ai bien essayé de mettre :
Private Sub Worksheet_Activate()
ThisWorkbook.RefreshAll
End Sub
mais ça bug avec une autre macro et là je suis perdu.
Pour quelqu'un qui maîtrise le VBA, ce doit être bête comme chou mais je ne trouve pas la solution après avoir essayé.
Merci beaucoup pour votre aide précieuse.
romanza
Configuration: Windows / Chrome 88.0.4324.190
A voir également:
- Macro actualisation d'un TCD perturbée par d'autres macro
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Jitbit macro recorder - Télécharger - Confidentialité
- Télécharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Macro maker - Télécharger - Divers Utilitaires
- Macro word - Guide
8 réponses
Bonjour
Dans un module de feuille il ne doit y avoir qu'une seule macro Worksheet_Activate :
Il suffit d'ajouter ton code en début de la macro déjà existante :
Dans un module de feuille il ne doit y avoir qu'une seule macro Worksheet_Activate :
Private Sub Worksheet_Activate() '... End Sub
Il suffit d'ajouter ton code en début de la macro déjà existante :
Private Sub Worksheet_Activate() ThisWorkbook.RefreshAll '... End Sub
Bonjour Patrice,
Merci pour ton retour.
C'est bien ce que j'avais fait :
Private Sub Worksheet_Activate()
ThisWorkbook.RefreshAll
Range("A8:DZ12").Select
Range("A8:DZ12").EntireRow.AutoFit
Range("B3").Select
End Sub
Mais j'ai un arrêt à "ClearContents" de la macro suivante :
Sub FusionnerMois()
Application.ScreenUpdating = False
Dim r As Range
Dim c As Range
Dim d As Range
Set r = ActiveSheet.Range("K12:NL12")
With r.Offset(-1)
.unmerge
.ClearContents
.NumberFormat = "mmmm-yy"
.HorizontalAlignment = xlCenter
For Each c In r.Cells
If d Is Nothing Then
Set d = c.Offset(-1)
d.Value = c.Value
End If
If Month(c.Offset(0, 1).Value) <> Month(d.Value) Then
With ActiveSheet.Range(d, c.Offset(-1))
.merge
.Borders.Weight = xlThin
End With
Set d = Nothing
End If
Next c
End With
End Sub
Pascal
Merci pour ton retour.
C'est bien ce que j'avais fait :
Private Sub Worksheet_Activate()
ThisWorkbook.RefreshAll
Range("A8:DZ12").Select
Range("A8:DZ12").EntireRow.AutoFit
Range("B3").Select
End Sub
Mais j'ai un arrêt à "ClearContents" de la macro suivante :
Sub FusionnerMois()
Application.ScreenUpdating = False
Dim r As Range
Dim c As Range
Dim d As Range
Set r = ActiveSheet.Range("K12:NL12")
With r.Offset(-1)
.unmerge
.ClearContents
.NumberFormat = "mmmm-yy"
.HorizontalAlignment = xlCenter
For Each c In r.Cells
If d Is Nothing Then
Set d = c.Offset(-1)
d.Value = c.Value
End If
If Month(c.Offset(0, 1).Value) <> Month(d.Value) Then
With ActiveSheet.Range(d, c.Offset(-1))
.merge
.Borders.Weight = xlThin
End With
Set d = Nothing
End If
Next c
End With
End Sub
Pascal
Le TCD de l'onglet "Chronologie des tâches" ne peut s'actualiser que si on clique d'abord sur l'onglet "Rétroplanning"
Si on clique droit sur le TCD et commande "Actualiser", ça bug.
Je souhaiterais qu'en allant sur l'onglet "Chronologie des tâches", le TCD qui s'y trouve s'actualise automatiquement
Si on clique droit sur le TCD et commande "Actualiser", ça bug.
Je souhaiterais qu'en allant sur l'onglet "Chronologie des tâches", le TCD qui s'y trouve s'actualise automatiquement
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Merci beaucoup Patrice, j'ai vu où ça clochait.
Puis-je te demander comme tu l'avais fait auparavant de mettre une fusion des mois correspondant aux dates de début du TCD de l'onglet "Chronologie des tâches" au niveau du bandeau jaune.
Puis-je te demander comme tu l'avais fait auparavant de mettre une fusion des mois correspondant aux dates de début du TCD de l'onglet "Chronologie des tâches" au niveau du bandeau jaune.