Ouverture planning automatique
Bonjour,
J'aimerai réaliser une macro pour mon planning je m'explique :
J'aimerai que quand je double clique sur un numéro de semaine, une fenêtre s’ouvre avec le nom des activités prévu. Pour trouver le nom des activités il faut que excel cherche les R dans toute la ligne et qu'il prennent le nom dans la colonne B.
J'espère que vous pourriez m'aider,
Merci d'avance,
Bonjour,
Voici une proposition de code,
Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
iRowMax = [A65000].End(xlUp).Row
sColMax = Split([AAA3].End(xlToLeft).Address, "$")(1)
sCol = Split(Target.Address, "$")(1)
'On vérifie que la sélection est dans la plage numéro de semaine
If Not Application.Intersect(Target, Range("E3:" & sColMax & "3")) Is Nothing Then '3: Ligne des semaine
'Création titre et texte
sTitle = "Planning Semaine n°" & Target.Value
sTxt = ""
'On regarde pour chaque cel de la colonne si présence "R"
For Each Cel In Range(sCol & "5:" & sCol & iRowMax) '5: première tache
If Cel.Value = "R" Then
'Si ou on récupère la tâche et on saute à la ligne
sTxt = sTxt & Cells(Cel.Row, 2).Value & Chr(10) & Chr(13)
End If
Next Cel
MsgBox sTxt, , sTitle
End If
End SubIl faut le copier dans la feuille où le planning se situe (voir image en dessou)
Bonjour,
Merci de votre aide, en me débrouillant un peu cette après-midi j'ai réussi à faire ceci qui est également fonctionnel :
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Target, Range("BF3:FF3")) Is Nothing Then
Dim activites As String
activites = "Activités : " + vbLf
colonne = ActiveCell.Column
For Each cellule In Range(Cells(5, colonne), Cells(266, colonne))
If cellule.Value = "R" Or cellule.Value = "P" Then
activites = activites + Range("A" & cellule.Row).MergeArea.Cells(1, 1).Value + " " + Range("B" & cellule.Row).Value + vbLf
End If
Next
MsgBox activites, , "Planning S" & Target
End If
End Sub