Améliorer code

Résolu/Fermé
jipe59552 Messages postés 29 Date d'inscription jeudi 24 septembre 2015 Statut Membre Dernière intervention 26 décembre 2016 - 5 oct. 2015 à 09:16
jipe59552 Messages postés 29 Date d'inscription jeudi 24 septembre 2015 Statut Membre Dernière intervention 26 décembre 2016 - 5 oct. 2015 à 18:16
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
A voir également:

7 réponses

Gyrus Messages postés 3334 Date d'inscription samedi 20 juillet 2013 Statut Membre Dernière intervention 9 décembre 2016 524
5 oct. 2015 à 09:37
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
Mike-31 Messages postés 18354 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 1 janvier 2025 5 110
5 oct. 2015 à 09:40
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
Kuartz Messages postés 850 Date d'inscription vendredi 13 février 2015 Statut Membre Dernière intervention 15 février 2019 61
5 oct. 2015 à 09:43
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
Gyrus Messages postés 3334 Date d'inscription samedi 20 juillet 2013 Statut Membre Dernière intervention 9 décembre 2016 524
5 oct. 2015 à 11:45
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
Kuartz Messages postés 850 Date d'inscription vendredi 13 février 2015 Statut Membre Dernière intervention 15 février 2019 61
5 oct. 2015 à 11:55
Bonjour Gyrus,

Merci, je ne comprend pas trop....
0
Mike-31 Messages postés 18354 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 1 janvier 2025 5 110
5 oct. 2015 à 11:56
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
jipe59552 Messages postés 29 Date d'inscription jeudi 24 septembre 2015 Statut Membre Dernière intervention 26 décembre 2016
5 oct. 2015 à 12:02
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
Mike-31 Messages postés 18354 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 1 janvier 2025 5 110 > Kuartz Messages postés 850 Date d'inscription vendredi 13 février 2015 Statut Membre Dernière intervention 15 février 2019
5 oct. 2015 à 12:11
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
jipe59552 Messages postés 29 Date d'inscription jeudi 24 septembre 2015 Statut Membre Dernière intervention 26 décembre 2016
5 oct. 2015 à 10:23
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

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Gyrus Messages postés 3334 Date d'inscription samedi 20 juillet 2013 Statut Membre Dernière intervention 9 décembre 2016 524
5 oct. 2015 à 10:43
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
jipe59552 Messages postés 29 Date d'inscription jeudi 24 septembre 2015 Statut Membre Dernière intervention 26 décembre 2016
5 oct. 2015 à 11:04
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
Gyrus Messages postés 3334 Date d'inscription samedi 20 juillet 2013 Statut Membre Dernière intervention 9 décembre 2016 524
5 oct. 2015 à 11:48
Est-ce que tu souhaites affecter la quantité sur toutes les lignes qui correspondent au mois choisi ?

A+
0
jipe59552 Messages postés 29 Date d'inscription jeudi 24 septembre 2015 Statut Membre Dernière intervention 26 décembre 2016
5 oct. 2015 à 11:59
Re
oui
0
Gyrus Messages postés 3334 Date d'inscription samedi 20 juillet 2013 Statut Membre Dernière intervention 9 décembre 2016 524 > jipe59552 Messages postés 29 Date d'inscription jeudi 24 septembre 2015 Statut Membre Dernière intervention 26 décembre 2016
5 oct. 2015 à 15:41
Une proposition à tester ...
https://www.cjoint.com/c/EJfnOzutmKI

A+
0
jipe59552 Messages postés 29 Date d'inscription jeudi 24 septembre 2015 Statut Membre Dernière intervention 26 décembre 2016
5 oct. 2015 à 16:21
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
jipe59552 Messages postés 29 Date d'inscription jeudi 24 septembre 2015 Statut Membre Dernière intervention 26 décembre 2016 > jipe59552 Messages postés 29 Date d'inscription jeudi 24 septembre 2015 Statut Membre Dernière intervention 26 décembre 2016
5 oct. 2015 à 16:39
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
jipe59552 Messages postés 29 Date d'inscription jeudi 24 septembre 2015 Statut Membre Dernière intervention 26 décembre 2016
5 oct. 2015 à 16:58
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