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 :

optimisation/correction de programme


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 61
    Par défaut optimisation/correction de programme
    Bonjour a tous,
    je suis entrain de finaliser un programme que je realise pour ma compagnie de plannification du personnel. je l'ai structure au moyen de userform ce qui me complique un peu la vie.
    Il n'est pas encore fonctionnel car je n'arrive pas a realiser les choses suivantes:
    - l'utilisateur entre des donnees dans un formulaire de saisie (userform1) et ouvre un autre userform qui realise un calcul avec ces donnees (userform2). Je n'arrive pas a partager mes variables entre les deux userforms.
    - le programme travaille avec plusieurs feuilles de calcul differentes. J'utilise
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    worsheets("nom').select
    pour indiquer dans quelle feuille je veux que le programme travail et ensuite j'utilise cell(a, b) pour designer mes cibles. Mais cela ne marche pas
    - je finis sur une broutille, comment forcer un format date dans ue combobox, j'ai essaye avec ca mais ca ne marche pas:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Private Sub UserForm_initialize()
    'cbx list
    Cbxprobability.ColumnHeads = True
    Cbxprobability.RowSource = "settings!B2:B6"
    cbxprojectmanager.ColumnHeads = True
    cbxprojectmanager.RowSource = "settings!D2:D8"
    'display today date in the calendar
    Calendar1.Value = Now
    'date format
    Me.cbxtaskstartdate.NumberFormat = "dd/mm/yyyy"
    Me.cbxtaskenddate.NumberFormat = "dd/mm/yyyy"
    End Sub
    Merci, a tout bientot

  2. #2
    Membre actif
    Profil pro
    Étudiant
    Inscrit en
    Mai 2008
    Messages
    130
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2008
    Messages : 130
    Par défaut
    Salut
    déjà
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    worsheets("nom").select
    serai mieux
    mais je pense que c'est une erreur de frappe

    Sur les dates, un vrai casse tête.
    moi, je repasse part une variable string (date_m)
    puis avec format je Change la date

    Format date américaine
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    date_m = Format(Calendar1, "yyyy-MM-dd")
    Puis tu enregistre ta valeur ou tu le souhaite

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 61
    Par défaut
    en effet j'ai fait des fautes de frappes dans ma question mais pas dans le programme:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    worksheets("nom").select
    je vais regarder pour les dates

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 44
    Par défaut
    Tu peux, comme dans la plupart des langages de programmation :
    • transmettre des paramètres aux procédures et fonctions
    • déclarer des variables dans les formulaires ou les modules ou déclarer des classes éventuellement, avec les modificateurs de portée Pubic, Private, Friend...
    • enregistrer les données persistentes dans une feuille de calcul ou tout autre moyen de conserver les informations.


    Pour les dates, il me semble que le format par défaut est le format des paramètres linguistiques ; si tu dois remplir une combot avec des dates, tu peux formater les éléments ajoutées avec Format("<expression>", "<format>") (voir l'aide). Enfin pour sélectionner une date facile, il existe le contrôle DateTimePicker qui combine une combobox et un MonthCalendar.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 61
    Par défaut
    ok
    merci vos reponses,

    du coup j'ai un autre problem, comment fait on pour selectionner la feuille de calcul sur laquelle l'algorithe travaille, j'ai essaye le code ci-dessous sans succes:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    dim ws as worksheets
    For Each ws In ThisWorkbook.Worksheets
    instruction
    worksheets (ws).cell(1,1).value = 15
    Next ws

  6. #6
    Membre actif
    Profil pro
    Étudiant
    Inscrit en
    Mai 2008
    Messages
    130
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2008
    Messages : 130
    Par défaut
    Si tu ne t'es pas trompée en écrivant ton code

    Cells prend un "s"

    exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Worksheets(2).Cells(1, 1).Value = 0


    et dans ton code la déclaration doit être
    sans s cette fois
    finalement tu n'as pas placé le s ou il faut

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

Discussions similaires

  1. Optimisation algorithme de programmation
    Par mp_moreau dans le forum Algorithmes et structures de données
    Réponses: 2
    Dernier message: 29/07/2007, 19h24
  2. Correction de programme en C
    Par vg-matrix dans le forum C
    Réponses: 5
    Dernier message: 06/05/2007, 16h59
  3. Correction de programme
    Par Thesilverking dans le forum Assembleur
    Réponses: 4
    Dernier message: 09/09/2006, 04h07
  4. [Débutant] Optimisation d'un programme
    Par velociraptor5679 dans le forum C++
    Réponses: 20
    Dernier message: 19/06/2006, 21h38
  5. Optimisation d'un programme d'échecs
    Par Erickann dans le forum x86 32-bits / 64-bits
    Réponses: 8
    Dernier message: 23/11/2005, 20h23

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