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 :

Remplissage auto d'une colonne avec une barre de progression


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    217
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 217
    Points : 53
    Points
    53
    Par défaut Remplissage auto d'une colonne avec une barre de progression
    Bonjour ,
    je suis sur un sujet , j'ai reussi a avancé dans la prog , mais j'ai vraiment besoin de votre aide .
    l'objectif est :
    * Remplir d'une maniere automatique les Tx-service apartir des donnees qu'on recupere d'une base access
    Tx_service = 1 - (Ano/audites)*100
    * TRacé le graphe coreespondanty une fois qu'on a pu calculer les tx
    * Faire une barre de progression qui montre la recupertaion des donnee et qu'il y a un temps de chargement
    * J'ai mis une liste derolante , apres avoir selectionné le tableau correspondant et le resaux dont il est affecté , j'affiche la feuille de calcul qui prend les criteres choisi
    Le soucis que j'ai encore c'est :
    * Apres l'ouverture du menu de la barre progression , elle y reste sur la feuille et j'arrive pas a la supprimer apres le chargement.

    Je vous joins mon fichier , j'en sui sur que vous m'en sera tres utiles

  2. #2
    Membre expérimenté Avatar de mayekeul
    Inscrit en
    Août 2005
    Messages
    1 369
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 1 369
    Points : 1 665
    Points
    1 665
    Par défaut
    bonjour,

    essaye avec ça!


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    For Each coco In ActiveSheet.Shapes
        coco.Delete
    Next
    Alleï Bonjour chez vous!

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

    Informations forums :
    Inscription : Mai 2008
    Messages : 217
    Points : 53
    Points
    53
    Par défaut
    slt ,
    je suis qd mm un debutant ; tu peux me dire ce que fais ton code ?
    Est ce que tu vois ce que je dois faire ?
    Merci

  4. #4
    Membre expérimenté Avatar de mayekeul
    Inscrit en
    Août 2005
    Messages
    1 369
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 1 369
    Points : 1 665
    Points
    1 665
    Par défaut
    mon code passe en revue tout les shapes (les rectangles ou autre objet que tu as dessiné) et simplment les effaces

    Est ce que tu vois ce que je dois faire ?
    euh honnetment, je ne me suis pas posé la question lol
    Alleï Bonjour chez vous!

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

    Informations forums :
    Inscription : Mai 2008
    Messages : 217
    Points : 53
    Points
    53
    Par défaut
    Citation Envoyé par mayekeul Voir le message
    mon code passe en revue tout les shapes (les rectangles ou autre objet que tu as dessiné) et simplment les effaces



    euh honnetment, je ne me suis pas posé la question lol
    Merci tout de meme ;
    je sais que c'est trop facile ce que je veux faire , mais sincerment je vois pas comment devais je proceder sniff sniff

  6. #6
    Expert éminent
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Points : 7 964
    Points
    7 964
    Par défaut
    Bonjour,

    Lorsque tu prends un code et que tu le modifies, il faut le faire prudemment.
    Que la barre de progression ne s'efface pas c'est une chose, mais le reste de ton code ne fonctionne pas non plus.

    Pour le moment je me suis arrêté au première modifs du code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Ano = Range("B5:B29").Value '<-- début de la boucle
    Audités = Range("C5:C29").Value   '<-- fin de la boucle
    je ne sais pas ce que tu cherches à faire mais ce que tu as écrit n'est pas correcte


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    x = ((Fin - Deb) + 1) / 100 '<-- division de la jauge (en centièmes)
    où sont passées les variables Deb et Fin ?


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Cells(Var1, 5) = Var1
    Cells(Var2, 6) = Var2
    Var1 et Var2 ? que représentent ces 2 variables ?
    Elles prennent leurs valeurs où ?
    LES FAQ OFFICE - LES COURS OFFICE - LES COURS EXCEL - LES LIVRES OFFICE - SOURCES VBA - ATELIER BRICOLAGE VBA

    Lorsque votre problème est solutionné, pensez à le signaler en cliquant sur le bouton au bas de la discussion.

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    217
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 217
    Points : 53
    Points
    53
    Par défaut
    certes c'est un oublies de ma part ,
    le code que j'ai mis c'etais une proposition d'un membre ds le forum ,
    et je me suis dis que ca correspondait a peu pres a ce que je voulais faire , et c'est pour cela je commencais a faire les modiication , esperant que je vais reussir mais helas c'est pas le cas pour le moment , et c'est pour cela je demande votre aide
    a partir d'une valeur dans 2 colonne je peux calculer mon taux de service
    en utilisant bien sur lbarre de progression .
    je sais pas si tu as bien saisi ce que je dois faire ?
    j'espere que tu pourras me donner un code de pouce ?
    merci encore une fois

    Comme tu a vu sur le fichier Joint :
    * J'ai 3 colonnes et je dois calculer la 3 colonne a partir Des 2 premieres sselon la formule
    * et ces donnee se trouvent dans la colonne B et C , c'est pour cela g mis :
    Ano = Range("B5:B29").value ....

    Pourrais tu m'aider

  8. #8
    Expert éminent
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Points : 7 964
    Points
    7 964
    Par défaut
    le code que j'ai mis c'etais une proposition d'un membre ds le forum
    oui ça je sais, c'était moi

    J'ai 3 colonnes et je dois calculer la 3 colonne a partir Des 2 premieres sselon la formule
    et cette formule je dois la deviner moi même ?

    Concernant la barre de progression, elle est disons "utile" si tu as un traitement qui dure quelques secondes mais pas quelques centièmes de secondes. Tu as combien de lignes à calculer ? 15 ? 150 ? 15000 ? 35000 ?
    LES FAQ OFFICE - LES COURS OFFICE - LES COURS EXCEL - LES LIVRES OFFICE - SOURCES VBA - ATELIER BRICOLAGE VBA

    Lorsque votre problème est solutionné, pensez à le signaler en cliquant sur le bouton au bas de la discussion.

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    217
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 217
    Points : 53
    Points
    53
    Par défaut
    Citation Envoyé par fring Voir le message
    oui ça je sais, c'était moi

    et cette formule je dois la deviner moi même ?

    Concernant la barre de progression, elle est disons "utile" si tu as un traitement qui dure quelques secondes mais pas quelques centièmes de secondes. Tu as combien de lignes à calculer ? 15 ? 150 ? 15000 ? 35000 ?
    Bonjour,
    pour la formule Tx service = [1 - (ano/audites)]*100
    et pour les lignes , je vais maximiser il y aurait une trentaine pour chaque reseaux (hyper, supere et proxi) .
    apres avoir choisi le type de tableau et le type de reseaux on selectionne la feuille corespondante (Reporting Hebdo + HYper)
    etc
    Merci de ton aide et de ton code il est nikel
    ps: j'ai mis en piece jointe la squelette de mon sujet

  10. #10
    Expert éminent
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Points : 7 964
    Points
    7 964
    Par défaut
    C'est bien ce que je pensais, ta procédure va durer...si tout va mal...1 seconde, laisse tomber la barre de progression qui ne te servira strictement à rien dans ce cas, à moins de filmer et de repasser la scène au ralenti, tu n'aurais pas le temps de voir la progression
    LES FAQ OFFICE - LES COURS OFFICE - LES COURS EXCEL - LES LIVRES OFFICE - SOURCES VBA - ATELIER BRICOLAGE VBA

    Lorsque votre problème est solutionné, pensez à le signaler en cliquant sur le bouton au bas de la discussion.

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    217
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 217
    Points : 53
    Points
    53
    Par défaut
    ok et pour le calcul et la selection ?
    je sais pas si t'as jeté un coup d'oeil sur le 2 fichier ,
    j'ai une fentre qui permette la selection du type du tableau et le reseaux ,
    le soucis je veux que j'affecte sa au boutton valider.
    Sur ; l'exemple que j'ai mis , je me casse la tete pour faire le programme qui permette le calcul du taux de service apartir des 2 colonnes ,
    c'est normal je suis novice et debutant dans la prog.
    pourrais tu m'aider sur ces 2 points ? Merci

    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
     
    Sub Calcul()
    '
    ' Calcul Macro
    ' Macro enregistrée le 26/06/2008 par U463017
    '
        Dim Ano As Long, Audites As Long, Tx_Serv As Long, i As Integer, j As Integer, Fin As Long
        i = 3
        j = 2
        Fin = 27
        Ano = Cells(i, j).Value
        Audites = Cells(i, j + 1).Value
        Tx_Serv = Cells(i, j + 2).Value
     
        For i = 3 To Fin
        Cells(i, j + 2) = (1 - (Cells(i,j)/Cells(i,j+1)))
        Next
     
    End Sub
    Salut j'ai reussi de faire le code en haut pour le calcul de taux de service mais il me sorte pas la valeur sniff ; il me met "#Valeur" pourrais tu m'expliquer et me corriger l'erreur sachant que ke taux de service je le recupere en pourcentage
    Voila j'ai reussi a remplir la 3 colonnes enfin lol ,
    mnt il me reste le soucis de recuperation de tableaux apres avoir cliquer sur le bouton valider
    merci

  12. #12
    Expert éminent
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Points : 7 964
    Points
    7 964
    Par défaut
    Tu mets ta colonne au format pourcentage et tu fais cette opération
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Cells(i, j + 2) = Cells(i,j)/Cells(i,j+1)
    Pour tes tableaux je ne comprend rien à ce que tu veux faire, quels tableaux ? Ils sont où ? Tu veux récupérer quoi ?
    LES FAQ OFFICE - LES COURS OFFICE - LES COURS EXCEL - LES LIVRES OFFICE - SOURCES VBA - ATELIER BRICOLAGE VBA

    Lorsque votre problème est solutionné, pensez à le signaler en cliquant sur le bouton au bas de la discussion.

  13. #13
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    217
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 217
    Points : 53
    Points
    53
    Par défaut
    en fait si tu vois dans le fichier que j'ai attacher , j'ai mis une fentre que j'ai nommé CATB qui permet la selection des Feuilles nomé Reporting Hebdo ....
    ce que je veux en selectionnant le type de tableau dans la listbox je vais directement sur la fenetre correspondantes .
    J'espere que tu voit mnt ce que je veux faire.
    sinon pour le calcul jy suis arriver tt seul comme un grand lol
    en te remerciant

  14. #14
    Expert éminent
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Points : 7 964
    Points
    7 964
    Par défaut
    Si j'ai bien compris, dans le code du bouton tu mets simplement
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub Valider_Click()
        Me.Hide
        Calcul
    End Sub
    Et dans le code calcul
    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
    Sub Calcul()
    '
    ' Calcul Macro
    ' Macro enregistrée le 26/06/2008 par U463017
    '
        Dim Ano As Long, Audites As Long, Tx_Serv As Long, i As Integer, j As Integer, Fin As Long
    With Sheets(CATB.ComboBox1.Value)
        i = 3
        j = 2
        Fin = 27
        Ano = .Cells(i, j).Value
        Audites = .Cells(i, j + 1).Value
        Tx_Serv = .Cells(i, j + 2).Value
     
        For i = 3 To Fin
        .Cells(i, j + 2) = .Cells(i,j)/.Cells(i,j+1)
        Next
    End With 
    Unload CATB
    End Sub
    en oubliant pas d'ajouter un point devant les "Cells"
    LES FAQ OFFICE - LES COURS OFFICE - LES COURS EXCEL - LES LIVRES OFFICE - SOURCES VBA - ATELIER BRICOLAGE VBA

    Lorsque votre problème est solutionné, pensez à le signaler en cliquant sur le bouton au bas de la discussion.

  15. #15
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    217
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 217
    Points : 53
    Points
    53
    Par défaut
    ok
    en fait qd je choisi un type de tableau et je valide il me sorte l'erreur
    alors qd je valide directement sans choisir le tableau il me fais le calcule normal et ss erreur.
    si tu a vu , g plusieurs feuilles et en selectionnant un tableau je choisi une feuille qui contient des calculs differents .
    Moi j'ai choisi reporting Hebdo pour l'instant vu que c'est le plus utilisé
    j'espere que j'etais assez precis.
    je te mets en piece jointe pour que tu vois correctement le soucis
    merci pour ton aide

  16. #16
    Expert éminent
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Points : 7 964
    Points
    7 964
    Par défaut
    Non désolé je ne comprend pas ce que tu veux faire.
    Je peux juste t'indiquer comment récupérer la valeur sélectionnée dans ton ComboBox

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim Nom As String
    Nom = CATB.ComboBox1.Value
    A partir de là tu fais tout ce que tu veux puisque tu as récupéré la sélection du Combo
    LES FAQ OFFICE - LES COURS OFFICE - LES COURS EXCEL - LES LIVRES OFFICE - SOURCES VBA - ATELIER BRICOLAGE VBA

    Lorsque votre problème est solutionné, pensez à le signaler en cliquant sur le bouton au bas de la discussion.

  17. #17
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    217
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 217
    Points : 53
    Points
    53
    Par défaut
    Dans ce cas je mets des case sur le nom ?
    vu que j'ai 4 type de tableaux dans la comboBox ?

    Car mon probleme est trop simple ,
    en selectionnant un choix dans la liste box je devais activé la fenetre correspandante tout en effectuant le calcul qui va avec
    pour le moment j'ai mis juste le reporting hebdo

  18. #18
    Expert éminent
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Points : 7 964
    Points
    7 964
    Par défaut
    Un minimum de réflexion stp...

    Que contient le combobox ? Les noms des feuilles ... ok ?

    quand je te dis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Nom = CATB.ComboBox1.Value
    à ton avis que contient la variable Nom ? le nom de la feuille ... ok ?

    donc...
    Mais encore une fois, quoi que tu veuilles faire, il n'est pas nécessaire de sélectionner la feuille pour faire tes calculs, je t'ai donné un exemple ci-avant, à toi de l'adapter à tes besoins que je ne connais pas.

    A moins de venir l'encoder moi même chez toi, plus je ne peux pas faire.
    LES FAQ OFFICE - LES COURS OFFICE - LES COURS EXCEL - LES LIVRES OFFICE - SOURCES VBA - ATELIER BRICOLAGE VBA

    Lorsque votre problème est solutionné, pensez à le signaler en cliquant sur le bouton au bas de la discussion.

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

Discussions similaires

  1. [WD14] Alimentation d'une colonne d'une tableau avec une autre colonne
    Par Deep Lowee dans le forum WinDev
    Réponses: 2
    Dernier message: 23/01/2013, 17h44
  2. Réponses: 7
    Dernier message: 25/03/2011, 10h52
  3. [XL-2002] Macro de comparaison d'une cellule d'une feuille avec une cellule d'une autre feuille.
    Par steelydan dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 08/09/2010, 12h59
  4. Réponses: 4
    Dernier message: 15/10/2009, 13h33
  5. Recherche une valeur d'une cellule dans une colonne d'une autre feuille
    Par kourria dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/06/2007, 13h48

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