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 :

Faire du pas à pas dans l'exécution d'une boucle [XL-2003]


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Décembre 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2012
    Messages : 7
    Points : 4
    Points
    4
    Par défaut Faire du pas à pas dans l'exécution d'une boucle
    Bonjour,
    Je viens de lire qu'il valait mieux ne pas mettre de fichiers joint donc je reformule ma demande (message du 13/03/2013).
    J'ai créé un fichier pour permettre de faciliter la saisie du suivi d'un fichier Excel.
    Mon problème est que quand je vais chercher les informations, que je remplis les combos la phase suivante est l'écriture. Tout va très vite alors que je voudrai ne remplir les combos que ligne par ligne, si cela va click sur valid ou bien je modifie et puis je clicke et à ce moment la ligne est copiée dans le fichier. Cette action entraîne le remplissage des combos avec les valeurs de la ligne de dessous et etc pendant 9 fois. Mon Userform3 n'apparaît qu'à la fin et donc trop tard.
    Je mets le code qui se trouve sur l'UF3.
    Merci pour vos réponses

    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
    31
    32
    33
    34
    35
    36
    37
    38
    Private Sub Frame2_Rlx()
    TextBox1.Value = UF2.TextBox3.Value + 9
    Dim a2 As String
    Dim cherche1 As String
    Dim Cellule As String
    Dim ligne As String
    UF2.Hide
    Sheets("Durée de vie").Select
    cherche1 = UF2.ComboBox.Value
    TextBox2.Value = UF2.ComboBox.Value
    a2 = TextBox1.Value
    For n = 0 To 8
    ligne = a2 + n
    CBRlx = Range("H" & ligne).Value  'Affiche le Positionnement rouleau
    CBN° = Range("I" & ligne).Value
    CBØmin = Range("M" & ligne).Value
    CBØmont = Range("J" & ligne).Value
    CBØrectif = Range("N" & ligne).Value
    CBDur = Range("K" & ligne).Value
    CBmatiere = Range("P" & ligne).Value
    CBFournis = Range("Q" & ligne).Value
    CmdBvalid_Click
    Next n
     
    End Sub
    Private Sub CmdBvalid_Click()
    Cpt = Cpt + 1
    num = Sheets("Durée de vie").Range("A8").Row + (Cpt)
    Sheets("Durée de vie").Activate
    Range("H" & num).Value = CBRlx.Value
    Range("I" & num).Value = CBN°.Value
    Range("M" & num).Value = CBØmin.Value
    Range("J" & num).Value = CBØmont.Value
    Range("N" & num).Value = CBØrectif.Value
    Range("K" & num).Value = CBDur.Value
    Range("P" & num).Value = CBmatiere.Value
    Range("Q" & num).Value = CBFournis.Value
     End Sub

  2. #2
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    12 942
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 12 942
    Points : 28 941
    Points
    28 941
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    J'avoue y perdre mon latin.
    Mon problème est que quand je vais chercher les informations, que je remplis les combos la phase suivante est l'écriture
    Tu vas chercher ces informations où ?
    A l'aide d'une boucle, d'un array ?
    Et comment ?
    Par l'alimentation de la propriété RowSource ou la méthode AddItem ?
    Tu parles de "les combos", il y en a plusieurs ?
    Tout va très vite alors que je voudrai ne remplir les combos que ligne par ligne, si cela va click sur valid ou bien je modifie et puis je clicke et à ce moment la ligne est copiée dans le fichier. Cette action entraîne le remplissage des combos avec les valeurs de la ligne de dessous et etc pendant 9 fois.
    Même type de question mais c'est tellement embrouillé que je ne comprends vraiment pas.
    Mon Userform3 n'apparaît qu'à la fin et donc trop tard.
    Comment fais-tu pour faire apparaître ce UserForm ?

  3. #3
    Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Décembre 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2012
    Messages : 7
    Points : 4
    Points
    4
    Par défaut
    Tout d'abord merci de te pencher sur mon problème.
    Au début, j'ai une feuille sur laquelle il y a des données regroupées par boîte, une boîte = 9 rouleaux qui ont chacun un n° de série qui ont un diamètre etc...
    En premier lieu j'ouvre UF1(UserForm1), je choisis si je veux une nouvelle boîte ou une nouvelle campagne. Le fait de prendre une campagne m'ouvre UF2, je choisis la boîte dans une combo (un n° de boîte identique pour 9 rouleaux) et là j'exécute la UF3 (8 combos) qui théoriquement doivent se remplir par la première ligne correspondant aux valeurs de la boîte sélectionnée. Là, je voudrais qu'au click "valid" j'écrive les valeurs des combos dans la première ligne (9 lignes nouvelles insérées dans la feuille) et ensuite les combos se remplissent avec les valeurs de la deuxième ligne de la boîte, je clicke etc jusqu'à 9.
    Une boîte peut faire une ou plusieurs campagne et les rouleaux composant la boîte peuvent changer de position c'est pourquoi il faut que l'UF3 s'affiche dés le début et me permette d'écrire ligne par ligne.

    J'ai oublié de dire que c'est par la méthode RowSource que je remplis les combos

  4. #4
    Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Décembre 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2012
    Messages : 7
    Points : 4
    Points
    4
    Par défaut Y'a t'il un livre ou un doc pour mon Pb
    Bonjour,
    Je vois que mon sujet n'interesse personne.
    J'ai déja écumé pas mal les forums, j'ai un livre excel et vba 2000, mais je n'ai pas trouvé ma réponse. Donc si quelqu'un à un ouvrage à me conseiller pour arriver à remplir plusieurs combo dans un User Form avec les données d'une feuille puis les copier dans une ligne, recharger les combo avec la ligne de dessous (dans la feuille) etc..
    Merci d'avance

  5. #5
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    12 942
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 12 942
    Points : 28 941
    Points
    28 941
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Je ne crois pas que ce soit un problème de désintérêt mais sans doute d'incompréhension en tous les cas pour ma part.
    Tu parles de boîtes, de rouleaux etc...
    Explique plutôt d'abord comment est organisé ton classeur, ta ou tes feuilles concernées par ton UserForm.
    1 Ce que tu as, 2 ce que tu attends

  6. #6
    Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Décembre 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2012
    Messages : 7
    Points : 4
    Points
    4
    Par défaut Explications
    Bonsoir,
    Dans le message du 13/03 j'avais joint un fichier avec des explications qui si elles n'étaient pas claires pouvaient être comprises à l'aide du fichier. Je vais donc joindre le fichier pour plus de compréhension.
    J'ai une feuille excel organisée de cette façon:
    col A N° de boîte= 9 lignes avec le même n° de boîte et de campagne col F. Ces 9 lignes qui constituent la boîte sont en fait des rouleaux avec une position dans la boîte col H et des caractéristiques constituant ces rouleaux tels n° de série, diamètre etc correspondant à une colonne différente.
    Soi l'on créé une nouvelle boîte en appuyant sur le bouton de la feuille "Durée de vie" soit on cré une nouvelle campagne qui elle va reprendre les rouleaux existant mais qui risquent de changer de position et qui vont peut-être changer de caractéristiques diamètre ou autre.
    Quand j'accéde à l'UF3 qui est le userform terminant ma création de boîte, j'ai prévu que l'on puisse s'arrêter à chaque remplissage des combos (c'est à dire la reprise des caractéristiques de la boîte que l'on a choisi dans l'UF2).
    La on modifie ou pas certaines caractéristiques et on clique pour copier ces données, ensuite on passe à la ligne en dessous (dans la feuille) et cela rempli les données des combos etc jusqu'à la ligne 9. Mais tout est recopié sans que je puisse intervenir sur aucune données. Voila mon problème.
    Merci
    Fichiers attachés Fichiers attachés

  7. #7
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    12 942
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 12 942
    Points : 28 941
    Points
    28 941
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Ce n'est pas une question que tu poses mais un projet complet que tu demandes de regarder.
    Ta discussion revient à télécharger un classeur, examiner tes procédures, Les userform 1, 2 & 3 pour savoir où cela pose problème.
    Viens avec une question précise sur un problème particulier.

  8. #8
    Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Décembre 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2012
    Messages : 7
    Points : 4
    Points
    4
    Par défaut C'est bon, je jette l'éponge
    Je ne vais pas passer ma vie à t'expliquer, les choses.
    C'est pourtant simple ce qui m'arrive, le code que j'avais mis en tout début s'exécute sans que je puisse intervenir dans l'UF3.
    Je pensais que vous auriez pu m'aider mais je ne vous ai jamais demandé de travailler à ma place, ni de perdre votre temps avec moi.

    Depuis le début, tu ne comprends pas ce que j'écris et tu me demande de te donner des explications. Quand je te les donne cela ne te conviens pas.( ce fichier qui n'est pas de moi est complexe à renseigner et à suivre, je voulais juste aider un collègue et lui faciliter la vie).
    Je bricole dessus le soir et le week-end à temps perdu et je suis juste un technicien et un autodidacte en informatique et en vba.
    Ce n'est pas grave, cela prendra le temps qu'il faudra mais j'arriverai à trouver une solution.
    Merci pour le dérangement.
    Salut

  9. #9
    Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Décembre 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2012
    Messages : 7
    Points : 4
    Points
    4
    Par défaut Boucle pas à pas avec Do While Not
    Bonsoir,
    J'ai eu ma réponse sur un autre forum.
    En quelques heures et avec les mêmes explications que j'avais donné.
    Un expert qui ne se prend pas pour Dieu et se baisse jusqu'aux petits profanes dont je fais partie m'a donné la réponse sans discours superflus.
    "Si haut que l'on soit placé, on n'est jamais assis que sur son cul" de Montaigne. A méditer M. Philippe.
    Je ne reviendrai pas sur ce forum ou je trouvais pourtant une mine d'informations....

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 24/09/2013, 09h01
  2. Faire un mode pas à pas pour un script contenant une boucle
    Par rambc dans le forum Général Python
    Réponses: 6
    Dernier message: 23/09/2009, 17h41
  3. Icon pas raffraichi dans le menu d une ComboBox
    Par Gaaaga dans le forum ActionScript 3
    Réponses: 2
    Dernier message: 14/01/2009, 09h41
  4. Réponses: 2
    Dernier message: 21/07/2006, 06h55
  5. Pause dans l'exécution d'une fonction
    Par FrankOVD dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 29/06/2005, 07h48

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