Planning vendeurs pdv

JOEYMISSY

XLDnaute Nouveau
Bonjour,

Je réalise un planning pour un point de vente (Excel 2003), ce dernier est composé de plusieurs feuilles. La première comporte les plages horaires des vendeurs. La feuille suivante est destinée au manager (recapitulatif) afin qu'il puisse visualiser les plages horaires occupéees ou libres de ses vendeurs sur chaque journée. Est-il possible de liée ma feuille de données : "PL VENDEURS" avec une mise en forme conditionnelle qui serait appliquée sur la feuille "PL MANAGER" afin de mettre en couleur les plages horaires "occupées" et une couleur différente par vendeur.
Ci-joint mon fichier

Je viens d'aller sur le forum et j'ai trouvé en date du 16/06/2010 (discussion cralawa fichier planning 1) ce fichier pourrait correspondre à ma demande
toutefois je n'ai pas réussi à l'adapter quelqu'un pourrait-il m'aider ?
D'avance Merci
 

Pièces jointes

  • planning_PDV.xls
    28.5 KB · Affichages: 301
  • planning_PDV.xls
    28.5 KB · Affichages: 299
  • planning_PDV.xls
    28.5 KB · Affichages: 297

job75

XLDnaute Barbatruc
Re : Planning vendeurs pdv

Bonsoir JOEYMISSY,

Par formule et MFC je déclare forfait.

En VBA ces macros dans le code de la feuille "PL MANAGER" :

Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Cells(1, 1).MergeArea.Count <> 3 Then Exit Sub
Dim F As Worksheet, H As Byte, L As Byte, lig1 As Variant, cel As Range, lig2 As Long
Cancel = True
Set F = Sheets("PL VENDEURS")
H = Application.CountA(F.Rows(1))
L = Cells(Target.Row + 2, 2).End(xlToRight).Column - 1
Cells(Target.Row + 3, 2).Resize(H, L).Interior.ColorIndex = xlNone
lig1 = Application.Match(Target.Cells(1, 1), F.Columns(2), 0)
If IsError(lig1) Then Exit Sub
lig2 = Target.Row + 2
For Each cel In F.Rows(1).SpecialCells(xlCellTypeConstants)
  If cel <> "" Then
    lig2 = lig2 + 1 'ligne à colorer
    Colore lig2, F.Cells(lig1, cel.Column).Text
    Colore lig2, F.Cells(lig1, cel.Column + 1).Text
  End If
Next
End Sub

Sub Colore(lig As Long, txt As String)
Dim n1 As Byte, n2 As Byte, plage As Range
If txt = "" Then Exit Sub
txt = Replace(Replace(txt, "h", ""), " ", "")
n1 = CInt(Split(txt, "a")(0)): n2 = CInt(Split(txt, "a")(1))
Set plage = Range(Cells(lig, n1 - 7), Cells(lig, n2 - 8))
plage.Interior.ColorIndex = 6 'couleur jaune
End Sub

Edit : j'ai mis une seule couleur (jaune), faut quand même pas pousser !

A+
 

Pièces jointes

  • planning_PDV(1).zip
    16.5 KB · Affichages: 116
Dernière édition:

job75

XLDnaute Barbatruc
Re : Planning vendeurs pdv

Bonjour JOEYMISSY, le forum,

Voici une autre solution en remplaçant l'évènement BeforeDoubleClick par l'évènement Change.

La cellule 'PL MANAGER'!E2 a été nommée Date (menu Insertion-Nom) et contient une liste de validation (nom Liste).

La macro principale se lance quand on sélectionne une date dans la liste, mais aussi quand on modifie la feuille "PL VENDEURS" grâce à cette macro :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, [Liste].EntireRow) Is Nothing Then [Date] = [Date] 'crée l'évènement Change
End Sub

Edit : en C2 formule =Date et format personnalisé jjjj;;

A+
 

Pièces jointes

  • planning_PDV(2).zip
    18 KB · Affichages: 95
Dernière édition:

job75

XLDnaute Barbatruc
Re : Planning vendeurs pdv

Re,

Puisque vous voulez des couleurs différentes, j'ai mis 7 MFC sur le tableau.

La macro ne colore plus les cellules mais y entre un espace " ".

Nouveau fichier joint.

A+
 

Pièces jointes

  • MFC planning_PDV(1).zip
    18.2 KB · Affichages: 90

job75

XLDnaute Barbatruc
Re : Planning vendeurs pdv

Re,

Sur cette version (2), un message s'affiche quand il y a une faute de frappe comme en 'PL VENDEURS'!P10.

Sélectionner le 08/06/10 pour voir.

A+
 

Pièces jointes

  • MFC planning_PDV(2).zip
    18.5 KB · Affichages: 152

JOEYMISSY

XLDnaute Nouveau
Re : Planning vendeurs pdv

Bonjour Job75, le forum

Je suis littéralement bluffer, MERCIIIIIIIIIIIIIIIIII !!!!!!!!!
Je pense non j'en suis même certaine qu'il m'aurait fallu au moins trois semaines pour réaliser ce planning !
C'est la dernière version que vous m'avez envoyée qui fonctionne le mieux (MFCplanning2), j'ai effectivement corrigé l'erreur de la cellule P10 et tout fonctionne, il ne me reste plus qu'à aller voir plus précisément les codes VBA pour voir si j'arriverais éventuellement à comprendre, mais bon je ne désespère pas de pouvoir le refaire un jour!
En tous cas merci d'avoir aussi penser à créer un liste déroulante pour les dates ça me facilite la vie et un gain de temps certain ! Et que dire des couleurs bref encore un grand merci !
@ + sur le forum
 

Membres actuellement en ligne

Statistiques des forums

Discussions
312 104
Messages
2 085 349
Membres
102 869
dernier inscrit
radyreth