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 :

Plage horaire planning


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Femme Profil pro
    Assistant de gestion
    Inscrit en
    Mars 2016
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 35
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : Assistant de gestion
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2016
    Messages : 11
    Par défaut Plage horaire planning
    Bonjour,


    J'ai fais une procédure pour une plage horaire sur un planning.
    Enfaite je voudrais qu'elle calcul la durée d'un rendez-vous sachant que j'ai une heure de début et une heure de fin.
    Je veux ensuite qu'avec cette durée; elle insere dans ma base de donnée autant de ligne nécessaire en fonction de ma durée. Et que du coup ensuite elle rajoute une heure à mon heure de début. J'ai fais la procédure suivante; mais je ne comprends pas pourquoi elle ne fonctionne pas.


    Pour donner un exemple :
    J'ai un rendez vous qui dure de 14h à 18h; donc 4h.
    Je veux qui l'insère 4 lignes dans ma base de donnnée.
    Et que à chaque nouvelle ligne l'heure de début soit + 1H.

    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
    ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Private Sub CB_Valider_Click()
    Dim Ligne As Long
    Dim Durée As Integer
    Dim I As Integer
    Set Ws = Sheets("prise")
    Durée = Int(CB_HF - CB_HD) * 24
     
    For I = 1 To Durée
     
    'Ligne qui représente la première ligne vide de la base clients
        Ligne = Ws.Range("A" & Rows.Count).End(xlUp).Row + 1
        Ws.Cells(Ligne, "A") = CB_Date
        Ws.Cells(Ligne, "B") = CB_HD * 1 / 24
        Ws.Cells(Ligne, "C") = CB_HF * 1 / 24
        Ws.Cells(Ligne, "D") = CB_Intv
        Ws.Cells(Ligne, "E") = CB_Type
        Ws.Cells(Ligne, "F") = TB_Com
        Ws.Cells(Ligne, "G") = CB_Nom
        Ws.Cells(Ligne, "H") = TB_Prenom
        Ws.Cells(Ligne, "I") = TB_Lieu
        Ws.Cells(Ligne, "J") = TB_Code
        Ws.Cells(Ligne, "K") = TB_Ville
     
    Next I
     
    Unload Me
    End Sub
    Merci et bonne journée.

  2. #2
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut
    Bonjour,

    Remarques
    - Déclarer la variables Ws
    - Utiliser la méthode With avec celle-ci
    - Utiliser les bornes "#" pour reporter ton code

    Qu'Est-ce qui ne "marche pas"?
    Si le code s'arrête sur une ligne en erreur, quelle est-elle?

  3. #3
    Membre habitué
    Femme Profil pro
    Assistant de gestion
    Inscrit en
    Mars 2016
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 35
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : Assistant de gestion
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2016
    Messages : 11
    Par défaut
    Bonjour,

    Le code s'arrête sur la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Durée = Int(CB_HF - CB_HD) * 24
    Merci,

  4. #4
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut
    Salut,

    Contrôle les données par en insérant ces lignes juste au-dessus de la ligne en erreur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Debug.Print "La valeur CB_HF est " & CB_HF
    Debug.Print "La valeur CB_HD est " & CB_HD
    Debug.Print "La valeur CB_HF - CB_HD est " & CB_HF - CB_HD
    Debug.Print "La valeur INT(CB_HF - CB_HD) est " & Int(CB_HF - CB_HD)
    et reporte l'affichage de ta fenêtre exécution.

  5. #5
    Membre habitué
    Femme Profil pro
    Assistant de gestion
    Inscrit en
    Mars 2016
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 35
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : Assistant de gestion
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2016
    Messages : 11
    Par défaut
    Bonjour,


    Nom : Capture.PNG
Affichages : 754
Taille : 25,6 Ko

  6. #6
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut
    Salut,

    Donc il y a problème quant au calcul des variables CB_HD (valeur nulle)
    (Au passage, c'est une bonne habitude de préfixer les contrôles d'un formulaire par leur type Cbx_laboite, Txt_letexte...)

    Regarde par quel processus sont retournées ces valeurs CB_HD et CB_HF.
    Eventuellement, joins à cette discussion un classeur simplifié.

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

Discussions similaires

  1. [WD17] Planning Modifier la Plage Horaire Par Programmation!
    Par b_reda31 dans le forum WinDev
    Réponses: 1
    Dernier message: 30/12/2012, 11h37
  2. [XL-2010] Affichage plages horaires dans planning hebdo
    Par Flu34 dans le forum Excel
    Réponses: 6
    Dernier message: 13/07/2012, 20h05
  3. colorer plages cellules (horaire) planning
    Par KopKunKam dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 01/06/2012, 10h16
  4. problème de plage horaire dans planning
    Par pat17 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 14/04/2010, 09h28
  5. planning: remplacer une lettre par une plage horaire
    Par visydanielle dans le forum Excel
    Réponses: 1
    Dernier message: 07/09/2008, 13h41

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