Macro exécuté en 2 temps

Fermé
Spail Messages postés 5 Date d'inscription vendredi 25 décembre 2015 Statut Membre Dernière intervention 28 juin 2016 - 25 déc. 2015 à 01:43
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 - 25 déc. 2015 à 16:42
Bonsoir,
Je dois créer une macro me permettant d'actualiser mon tableau dans la feuille 1 puis recopier une colonne de ce tableau dans la feuille 2. Au passage les chiffres du tableau 1 comportant des points dans ses nombre, j'en profite pour les remplacer par des virgules. Malheureusement lorsque j'éxécute ma macro (que ce soit depuis un bouton ou directement) elle ne fait qu'actualiser, je suis obligé de la relancer pour avoir un transfert dans le second classeur. J'ai essayé plusieurs variantes comme call mais rien a faire.
En espérant que vous puissiez m'aider!
Voici mon code:

Sub j'en_ai_marre()

Sheets("Feuil1").Select
ActiveWorkbook.RefreshAll
Range("G2:G41").Copy Sheets("Feuil2").Range("B1")
Sheets("Feuil2").Select
Range("B1:B40").Select
Selection.Replace What:=".", Replacement:="."

End Sub
A voir également:

4 réponses

Mike-31 Messages postés 18318 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 26 avril 2024 5 078
25 déc. 2015 à 08:38
Bonjour,

je ne comprends pas ton problème parce que ton code fonctionne parfaitement
Sub j() 'en_ai_marre()
ActiveWorkbook.RefreshAll
Sheets("Feuil1").Range("G2:G41").Copy Sheets("Feuil2").Range("B1")
Sheets("Feuil2").Select
Range("B1:B40").Replace What:=".", Replacement:="."
End Sub

par contre dans ta demande du parle de "je suis obligé de la relancer pour avoir un transfert dans le second classeur"
s'agit il d'un autre classeur ou sur la feuille suivante
0
Spail Messages postés 5 Date d'inscription vendredi 25 décembre 2015 Statut Membre Dernière intervention 28 juin 2016
25 déc. 2015 à 14:48
Lorsque je lance cette macro, elle actualise les données et je suis obligé de la relancer une seconde fois pour qu'elle copie colle dans la feuille 2
0
Mike-31 Messages postés 18318 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 26 avril 2024 5 078
25 déc. 2015 à 14:59
Re,

bizarre, je l'ai testé et je viens de la retester encore à l'instant, je lance et le code qui copie les données de la feuille1 sur la feuille 2 et remplace le point par la virgule sur la feuille 2 en une seule et unique opération
je ne vois pas pourquoi sur ton système tu es obligé de relancer le code
0
Spail Messages postés 5 Date d'inscription vendredi 25 décembre 2015 Statut Membre Dernière intervention 28 juin 2016
25 déc. 2015 à 15:13
C'est pas grave merci beaucoup en tout cas!
0
Bonjour
voir aussi comme ca
Sub J2()
L1 = 1
Sheets("Feuil1").Select
   For L = 2 To 41
      Sheets("Feuil2").Range("B" & L1).Value = Val(Range("G" & L).Value)
      L1 = L1 + 1
   Next
Sheets("Feuil2").Select
End Sub

A+
Maurice
0
Spail Messages postés 5 Date d'inscription vendredi 25 décembre 2015 Statut Membre Dernière intervention 28 juin 2016
25 déc. 2015 à 14:54
Merci pour ta réponse Maurice, malheureusement quand je rajoute le code pour actualiser cela me transfert les anciennes données et non les actualisées que je désire
0
Mike-31 Messages postés 18318 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 26 avril 2024 5 078
Modifié par Mike-31 le 25/12/2015 à 15:45
Re,

je pense que tu as un problème avec ton fichier, ferme Excel et ouvre le à nouveau et
colle un code dans un nouveau fichier et saisir des données avec un point
comme séparateur de décimale dans ta plage G2:G41 et active le code voir
A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.
0
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 776
25 déc. 2015 à 16:42
Bonjour,

Tu parles de 2 classeurs mais dans ton code il n'est fait référence qu'à un seul !!!
0