Améliorer code

Résolu
jipe59552 Messages postés 32 Statut Membre -  
jipe59552 Messages postés 32 Statut Membre -
Bonjour
le premier sujet
Dans mon userform saisie avant de faire une nouvelle saisie je clic sur insérer une nouvelle ligne qui va copier sur la feuille copy la ligne 2 et la colle dans la feuille deq en dessous du dernier N° de la colonne A
Comment améliorer le code Sub Macro1()
2) peut on associer des formules sur des formulaires


Sub Macro1()
'
Sheets("deq").Select
Sheets("copy").Visible = True
Sheets("copy").Select
Rows("2:2").Select
Selection.Copy
Sheets("deq").Select
ActiveSheet.Paste
Sheets("copy").Select
ActiveWindow.SelectedSheets.Visible = False
Sheets("deq").Select
End Sub

Merci

7 réponses

  1. Gyrus Messages postés 3360 Statut Membre 526
     
    Bonjour,

    Premier sujet
    Sub Macro1()
    Sheets("copy").Rows("2:2").Copy Sheets("deq").Range("A" & Rows.Count).End(xlUp).Offset(1)
    End Sub


    Deuxième sujet :
    Désolé, je ne comprends pas ta question.

    A+
    0
  2. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Bonjour,

    sans trop bouger ton code, mais la question que je me pose, comment fais tu pour saisir une donnée en ligne 2 de ta feuille copy qui est masquée

    Sub Macro1()
    Sheets("copy").Visible = True
    Sheets("copy").Rows("2:2").Copy
    Sheets("deq").Select
    [A65536].End(xlUp)(2, 1).Select
    ActiveSheet.Paste
    Sheets("deq").Select
    Sheets("copy").Visible = False
    Application.CutCopyMode = False
    End Sub

    0
  3. Kuartz Messages postés 852 Date d'inscription   Statut Membre Dernière intervention   65
     
    Bonjour,

    Le code comme ça ne peux pas marcher car "en dessous du dernier N° de la colonne A" n'a pas été pris en compte.

    Une proposition :

    Sub TEST()
    
    Dim DL As Long
    
    DL = Sheets("deq").Cells(Application.Rows.Count, 1).End(xlUp).Row
    
    Sheets("copy").Rows(2).Copy
    
    Sheets("deq").Activate
    
    ActiveSheet.Rows(DL + 1).PasteSpecial
    
    Application.CutCopyMode = False
    
    Sheets("deq").Activate
    
    Range("A1").Select
    
    End Sub


    Cordialement.
    0
    1. Gyrus Messages postés 3360 Statut Membre 526
       
      Bonjour Kuartz,

      Je ne sais pas qui a mis -1 sur ta réponse alors qu'elle est tout a fait pertinente.
      Je me suis donc fait le plaisir de remonter le score :D

      Cordialement.
      0
    2. Kuartz Messages postés 852 Date d'inscription   Statut Membre Dernière intervention   65
       
      Bonjour Gyrus,

      Merci, je ne comprend pas trop....
      0
    3. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
       
      Salut Gyrus,

      tu as bien fait, si je l'avais vu plus tôt j'aurai fait la même chose, c'est pas comme cela qu'on agit avec des bénévoles surtout avec un code qui fonctionne parfaitement.
      Cordialement
      0
    4. jipe59552 Messages postés 32 Statut Membre
       
      Bonjour
      Quelle différence avec le code par rapport au votre les deux font la même chose
      Sub Macro1()
      Sheets("copy").Rows("2:2").Copy Sheets("deq").Range("A" & Rows.Count).End(xlUp).Offset(1)
      End Sub
      0
    5. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147 > Kuartz Messages postés 852 Date d'inscription   Statut Membre Dernière intervention  
       
      Bonjour Kuartz,

      un plaisantin avait mis -1 pour ton code alors qu'il fonctionne parfaitement et Gyrus a aimablement remis le compteur à zéro et comme cela c'est fait très vite tu n'as pas eu le temps de voir
      Cordialement
      0
  4. jipe59552 Messages postés 32 Statut Membre
     
    Bonjour
    pour le deuxième sujet abandonné la macro répond a mon attente
    Sub Macro1()
    Sheets("copy").Rows("2:2").Copy Sheets("deq").Range("A" & Rows.Count).End(xlUp).Offset(1)
    End Sub

    Mais une autre question dans un userform la comboxbox1 est une liste à partir de la colonne G qui sont des mois (mars mars avril avril avril etc) est dans la textbox1 je met un nombre qui sera diffusé dans la colonne AC par rapport au mois choisi de la combobox1
    faisable ou pas
    le cas échéant je peut joindre le fichier
    merci
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Gyrus Messages postés 3360 Statut Membre 526
     
    Si je comprends bien, tu souhaites inscrire dans la colonne AC la valeur de la TextBox1, la position de la cellule dans la colonne AC étant déterminée selon la sélection effectuée dans la ComboBox1.
    Cela ne doit pas poser de problème particulier. Il faut que tu joignes un fichier exemple.

    A+
    0
  7. jipe59552 Messages postés 32 Statut Membre
     
    Re
    c'est dans usferform1
    PJ https://www.cjoint.com/c/EJfjbtfCcMl
    je sais que les codes de certain userforms ne sont pas au top
    et que peut être avec le fichier vous comprendrez mieux le 2 sujets du premier post
    merci
    0
  8. Gyrus Messages postés 3360 Statut Membre 526
     
    Est-ce que tu souhaites affecter la quantité sur toutes les lignes qui correspondent au mois choisi ?

    A+
    0
    1. jipe59552 Messages postés 32 Statut Membre
       
      Re
      oui
      0
    2. jipe59552 Messages postés 32 Statut Membre
       
      Oui cela fonctionne la combo pour les mois sont dans l'ordre
      mais sur mon fichier final c'est en désordre
      https://www.cjoint.com/c/EJfotIack8l
      sans quoi c'est ca que je recherché
      Un grand merci
      0
    3. jipe59552 Messages postés 32 Statut Membre > jipe59552 Messages postés 32 Statut Membre
       
      les mois sont dans l'ordre que si il y a qu'une année 2015 s'il y a des mois 2014 c'est dans le désordre
      0
    4. jipe59552 Messages postés 32 Statut Membre
       
      J'ai ajouté une deuxième combobox pour sélectionner l'année en plus, chose que je n'avais pas penser
      pour résumer je choisi le mois et l'année et ensuite le NB avant de valider
      https://www.cjoint.com/c/EJfo3J1inol
      0