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 :

2 problèmes en 1 : timer+ mémorisation sous Excel


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2017
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2017
    Messages : 3
    Par défaut 2 problèmes en 1 : timer+ mémorisation sous Excel
    Bonjour à tous,

    Après plusieurs jour (et nuits) de recherche, je n'ai malheureusement pas trouvé de code à adapter à mon cas...
    Je tiens à prévenir que je suis complètement débutant en VBA ou autre mais j'apprends vite !!

    Bon voilà mes 2 soucis :

    J'ai une cellule C18 pouvant prendre 2 valeurs (0 ou 1) via une formule conditionnelle type =si(...
    1- Je souhaiterais mémoriser cette valeur en D18 tant qu'une autre cellule C7 n'est pas revenue à 0.
    2- Cette mémorisation est indispensable car je souhaiterais (et c'est là mon 2e problème) que C18 revienne à 0 après par exemple 5 secondes.

    En gros pour ceux que ça intéresse : "je suis informé en D18 que le moteur C18 a fonctionné via une tempo réglée à 5s, je peux réinitialiser l'info par C7 jusqu'au prochain fonctionnement du moteur"

    Voilou, je sais pas si c'est facile à faire, j'espère en tout cas avoir été le plus clair possible !

    En attendant vos réponses je continue à bidouiller des bouts de codes, on sait jamais je peux être touché par la grâce !

    Merci à tous

  2. #2
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Par défaut
    Bonjour
    Je vais essayer d'épurer tes explications pour les rendre plus "lisibles"

    tu sembles vouloir :
    - donner (sans dire à quel moment exactement) à la cellule D18 la valeur de la cellule C18 et l'y conserver jusqu'à ce que la cellule C7 contienne une valeur différente de 0
    - remettre à 0 la valeur de la cellule C7 au bout d'un certain laps de temps (sans dire à partir de quand exactement)

    Est-ce cela ?

  3. #3
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    Déjà si tu fais une recherche sur timer tu devrai trouver sens problème!

    Maintenant tu as le concept du wath dog? Tu passe systématiquement ta valeur a zéro si les conditions sont réunis!

    Si la valeur l'est déjà la belle affaire!

  4. #4
    Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2017
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2017
    Messages : 3
    Par défaut
    Bonjour,

    Bon je reprends :
    - mon moteur a été alimenté temporairement (C18=1, puis au bout de x secondes C18=0) --> comment réaliser ce timer ?
    - comment mémoriser en D18 le fait que le moteur ait été alimenté ?
    - comment réinitialiser D18 quand C7=0 ?

    Cordialement


    Citation Envoyé par unparia Voir le message
    Bonjour
    Je vais essayer d'épurer tes explications pour les rendre plus "lisibles"

    tu sembles vouloir :
    - donner (sans dire à quel moment exactement) à la cellule D18 la valeur de la cellule C18 et l'y conserver jusqu'à ce que la cellule C7 contienne une valeur différente de 0
    - remettre à 0 la valeur de la cellule C7 au bout d'un certain laps de temps (sans dire à partir de quand exactement)

    Est-ce cela ?

  5. #5
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Par défaut
    tu viens d'écrire !
    - comment réinitialiser D18 quand C7=0 ?
    Dit ainsi et lu à la lettre, il suffit de mettre une instruction dans le WorkSheet_Change (si C7 = 0 et que Target est C7)
    - mon moteur a été alimenté temporairement (C18=1, puis au bout de x secondes C18=0) --> comment réaliser ce timer ?
    en utilisant la méthode Application.Ontime .
    Le problème est de savoir à quel moment précis l'utiliser.
    Or, tu as dit plus haut :
    J'ai une cellule C18 pouvant prendre 2 valeurs (0 ou 1) via une formule conditionnelle type =si(...
    la modification d'une cellule par formule ne déclenchant pas d'évènement feuille, il va falloir jouer avec la valeur de la cellule dont dépend cette formule !
    Cette formule est donc de la plus haute importance --->> Montre-la
    - comment mémoriser en D18 le fait que le moteur ait été alimenté ?
    Idem que juste au-dessus.

  6. #6
    Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2017
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2017
    Messages : 3
    Par défaut
    Ok j'ai compris.

    Si C2="ON" et C7="ON"
    Alors C18 doit passer à 1 pendant 5s et revenir à 0 ensuite.
    Je précise que C2 et C7 sont 2 variables d'entrée donc pas de formule dans ces cases, juste une liste de validation de données (choix entre ON et OFF)

    Il faudrait ensuite mémoriser le fait que C18 soit passé à 1, dans une cellule libre D18 par exemple

    Si C2 ou C7 repasse en "OFF" alors D18=0 (réinitialisation de la mémoire) et attente d'un nouveau cycle.

    Merci pour l'aide précieuse que vous m'apportez

Discussions similaires

  1. [AC-2013] Problème lors d'une exportation sous excel
    Par theBinette dans le forum VBA Access
    Réponses: 3
    Dernier message: 27/11/2015, 13h16
  2. Problème de macro en VBA sous excel
    Par Nadounette123 dans le forum Excel
    Réponses: 4
    Dernier message: 26/10/2013, 09h17
  3. Problème de macro en VBA sous excel
    Par Nadounette123 dans le forum Excel
    Réponses: 2
    Dernier message: 19/09/2013, 15h34
  4. Problème pour exporter des données sous Excel
    Par antoine2933 dans le forum ODS et reporting
    Réponses: 10
    Dernier message: 28/06/2011, 11h16
  5. [VBA-E] Problème de dépassement de capacité sous Excel
    Par Nicolas67 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 30/05/2006, 10h36

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