IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Comment réaliser un planning opérationnel en VBA [XL-2016]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    Technicien VRD
    Inscrit en
    Novembre 2017
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Technicien VRD

    Informations forums :
    Inscription : Novembre 2017
    Messages : 3
    Par défaut Comment réaliser un planning opérationnel en VBA
    Bonjour,

    J'ai réalisé ce planning opérationnel pour m'aider dans ma gestion de projet. Le HIC c'est que je le trouve lent et le MFC n'aime pas spécialement l'insertion de ligne ou le copier/coller de cellule. En effet, la mise en forme n'est pas appliquée et le copier/coller rajoute des règles de MFC ce qui peut vite devenir lourd à gérer quand le fichier devient collaboratif.

    Du coup, je parcours internet depuis 2 jours et j'ai remarqué que le code VBA pourrait simplifier et optimiser le MFC. Le problème, c'est que je ne connais pas grand chose en VBA et n'arrive pas à trouver un code VBA qui s'applique à mon tableau. Alors j'ai commencé à regarder ce que l'on trouvait sur les sites et les tutos. Mais je n'y arrive pas...
    Pourtant pas sur que ce soit si compliqué que celà...

    Mon objectif :
    Sur un séléction de C10:MN61 je souhaiterais appliquer une couleur de cellule+texte aux cellules contenant les mots indiqués dans la colonne B (DIAG, DCE, Passation de marché, mise en ligne...)

    Avec le MFC, je dois rédigé une régle par condition alors qu'avec le VBA cela me parait plus approprié.

    Exception : Je souhaiterais que les colonnes grisées (WE et jours fériés) soient prioritaires sur les conditions de la colonne B. C'est une MFC avec formule.

    Donc si quelqu'un peut prendre un peu de temps et m'expliquer, cela serait vraiment simpa.



    PLANNING TEST - HELP.xlsx

  2. #2
    Membre émérite
    Homme Profil pro
    Responsable des études(en disponibilité)
    Inscrit en
    Juin 2007
    Messages
    367
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable des études(en disponibilité)
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 367
    Par défaut
    J'ai réalisé un outil planning a mon travail

    pour répondre a la partie jour fériés ceci peut être utiliser


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Sub jours()
     
    For colonne = 6 To 256
    jour = Application.WorksheetFunction.Weekday(Cells(1, colonne))
    If jour = 1 Or jour = 2 Then
    Range(Cells(10, colonne), Cells(61, colonne)).Interior.ColorIndex = 15
    Else
    Range(Cells(10, colonne), Cells(61, colonne)).Interior.ColorIndex = xlNone
    End If
    Next
    End Sub
    Je suis parti du principe que ton planning est figé en nombre de lignes et de colonnes.

    Ceci devrait pouvoir de débloquer, je saurais faire le reste également

    redit moi si tu veux que j'approfondisse.

  3. #3
    Membre émérite
    Homme Profil pro
    Responsable des études(en disponibilité)
    Inscrit en
    Juin 2007
    Messages
    367
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable des études(en disponibilité)
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 367
    Par défaut
    J'ai été un peu plus loin


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    Sub jours()
    Range("C10:IV61").Interior.ColorIndex = xlNone
    'efface les formats dans le planning
    For ligne = 10 To 61
    travail = Cells(ligne, 3).Value
    Select Case travail
    Case "DIAG"
    couleur = 22
    Case "Passation du marché"
    couleur = 23
    Case "mise en ligne"
    couleur = 24
    Case "mise en ligne"
    couleur = 25
    Case Else
    couleur = 0
    End Select
    If couleur =<> 0 Then
    'pour chaque ligne colorie la ligne en fonction du travail selectionné
    Range(Cells(ligne, 6), Cells(ligne, 256)).Interior.ColorIndex = couleur
    End If
    Next
    For colonne = 6 To 256
    'colorie en gris les jours fériés.
    jour = Application.WorksheetFunction.Weekday(Cells(1, colonne))
    If jour = 1 Or jour = 2 Then
    Range(Cells(10, colonne), Cells(61, colonne)).Interior.ColorIndex = 15
    End If
    Next
    End Sub
    tu peux ajouter autant de case que nécessaire.

    ça m'étonnerais que ça réponde exactement à ton besoin

    mais ça peut peut être t'aider à démarrer.

    Bonne journée.

  4. #4
    Candidat au Club
    Homme Profil pro
    Technicien VRD
    Inscrit en
    Novembre 2017
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Technicien VRD

    Informations forums :
    Inscription : Novembre 2017
    Messages : 3
    Par défaut
    Merci pour l'aide apporté mais je n'arrive pas à inserer le code dans le VBA.

    Il me marque "Erreur syntaxe"

    Nom : VBA.jpg
Affichages : 334
Taille : 461,6 Ko

  5. #5
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Citation Envoyé par Tartalonion Voir le message
    Donc si quelqu'un peut prendre un peu de temps et m'expliquer, cela serait vraiment simpa.
    Citation Envoyé par Tartalonion Voir le message
    Il me marque "Erreur syntaxe"
    Si tu ne peut pas corriger cette erreur très simple, je pense que ta demande va au delà de simples "explications".

  6. #6
    Candidat au Club
    Homme Profil pro
    Technicien VRD
    Inscrit en
    Novembre 2017
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Technicien VRD

    Informations forums :
    Inscription : Novembre 2017
    Messages : 3
    Par défaut
    Citation Envoyé par Menhir Voir le message
    Si tu ne peut pas corriger cette erreur très simple, je pense que ta demande va au delà de simples "explications".
    En effet, je ne connais pas grand chose en VBA et je souhaiterais apprendre.

    Merci pour l'aide apporté

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2007] Ajouter des MFC via vba
    Par EmmanuelleC dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 08/06/2010, 12h00
  2. [XL-2003] Tableau d'analyse - MFC en vba (macro)
    Par mandrake57 dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 08/09/2009, 09h52
  3. [XL-2003] MFC avec VBA
    Par marcuswillbe dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 13/05/2009, 07h14
  4. MFC en VBA
    Par Jonathan Raucy dans le forum Excel
    Réponses: 7
    Dernier message: 28/02/2008, 10h12
  5. Mettre au premier plans une ZT en VBA
    Par electrosat03 dans le forum VBA Access
    Réponses: 2
    Dernier message: 13/08/2007, 23h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo