XL 2016 Problème ActiveSheet

Hogwarts

XLDnaute Nouveau
Bonjour,

Je poste mon problème ici suite aux conseils d'un proche, et n'ayant pas trouvé de solutions sur les autres Forum dédié à Excel.

Je vous explique, j'ai un fichier sur lequel se trouve 2 onglets Excel : Feuil1 et Feuil2

Voici comment ma macro devrait fonctionner : je selectionne dans des Input qui apparaissent au lancement de la macro, successivement Feuil1 et Feuil2.
La macro si elle fonctionnait comme je le souhaite devrait effectuer la création de nouveau onglet Feuil3 et Feuil4 qui sont respectivement une copie (Pour Feuil3 de Feuil1 et Feuil2 et pour Feuil4, de Feuil2 et Feuil1).
Puis à tout ça se rajoute un ajout de formule pour faire une homogénéisation.

Le problème est que la Feuil3 fait uniquement une copie de ma Feuil1 alors qu'elle devrait faire la même chose que pour la Feuil4 mais en partant de Feuil1 comme feuille d'origine.
(Vous pouvez voir que sur la Feuil4 les données en couleur sont celles de la Feuil1 alors que les données en clair sont celles de la Feuil2)

Ma macro fonctionnait quand je n'avais pas d'input mais deconne avec. Je pense que le problème vient de la partie "With ActiveSheet" mais je ne comprends pas comment le résoudre....

Merci d'avance, et si vous avez besoin de renseignements supplementaire, il y a pas de souci.
 

Pièces jointes

  • test-homogeneisation-v3.xlsm
    17.1 KB · Affichages: 35
Solution
Bonjour Cp4 et merci pour ta réponse.

Cependant le code que tu me proposes ne m'aide pas tellement puisque c'est un mixte des deux (celui qui fonctionne et celui qui ne fonctionne pas).

Et si je ne dis pas de bêtises, tu supprimes les données des deux feuilles sélectionnées par l'utilisateur, donc la macro s'arrête un peu plus bas, puisqu'il n'y a plus de colonnes.

Je vais continuer à essayer de travailler dessus, bonne journée également.
J'avoue ne plus comprendre tes attentes.

L'utilisateur ne fait pas de sélection, il saisit le nom des feuilles sur lesquelles ton code va s’exécuter ou bien les créer pour qu'ensuite s’exécute. Dans l'éventualité que les feuilles existent, elles sont vidées. C'est ce que fait ton code avec...

Staple1600

XLDnaute Barbatruc
Bonjour le fil

[aparté émotionnel]
Cependant le code que tu me proposes ne m'aide pas tellement puisque c'est un mixte des deux (celui qui fonctionne et celui qui ne fonctionne pas).
Si j'étais moi, ou plutôt si j'étais demandeur, j'éviterai ce genre de phrases.
Car les répondeurs que nous sommes, bénévolement, passent du temps à essayer d'aider les demandeurs.
Alors quand nos yeux, fatigués de trop de VBA, tombent sur ce type de propos, nous en sommes bouleversifiés.
Certains appellent leur mère, d'autres boivent une rasade d'un alcool fort pour surmonter le choc.
;)
[/aparté émotionnel]
 

cp4

XLDnaute Barbatruc
Bonjour le fil

[aparté émotionnel]

Si j'étais moi, ou plutôt si j'étais demandeur, j'éviterai ce genre de phrases.
Car les répondeurs que nous sommes, bénévolement, passent du temps à essayer d'aider les demandeurs.
Alors quand nos yeux, fatigués de trop de VBA, tombent sur ce type de propos, nous en sommes bouleversifiés.
Certains appellent leur mère, d'autres boivent une rasade d'un alcool fort pour surmonter le choc.
;)
[/aparté émotionnel]
Bonjour Staple1600;),

Merci pour ton remonte-moral:cool:. En cette fin d'année, je veux rester cool et j'endosse un peu.
Brave Homme, je profite pour te présenter mes meilleurs vœux à l'occasion de la nouvelle année.
Bonne journée.
 

Hogwarts

XLDnaute Nouveau
J'avoue ne plus comprendre tes attentes.

L'utilisateur ne fait pas de sélection, il saisit le nom des feuilles sur lesquelles ton code va s’exécuter ou bien les créer pour qu'ensuite s’exécute. Dans l'éventualité que les feuilles existent, elles sont vidées. C'est ce que fait ton code avec ces 2 lignes ci-dessous:
VB:
With ActiveSheet
        .Range("A2:Z" & Rows.Count).ClearContents
        .Range("A2:Z" & Rows.Count).Interior.Pattern = xlNone
      
        'suite de ton code'
Or, tu me dis que mon code supprime les données. J'ai refait à ma manière ce que fait ton code.
Tu vides les feuilles de destination, oui ou non?! La macro ne s'arrête pas, voici une démo du résultat obtenu.
Regarde la pièce jointe 1090025
Bon courage pour la suite.

edit: si l'utilisateur se trompe en saisissant le même nom de feuille, il est averti et invité à modifier.
Regarde la pièce jointe 1090028

Je suis vraiment désolé, je n'avais pas compris que tu partais de ce fichier là, c'est de ma faute.

C'est parfait, ça répond à ma demande ! Merci beaucoup
 

Hogwarts

XLDnaute Nouveau
Bonjour le fil

[aparté émotionnel]

Si j'étais moi, ou plutôt si j'étais demandeur, j'éviterai ce genre de phrases.
Car les répondeurs que nous sommes, bénévolement, passent du temps à essayer d'aider les demandeurs.
Alors quand nos yeux, fatigués de trop de VBA, tombent sur ce type de propos, nous en sommes bouleversifiés.
Certains appellent leur mère, d'autres boivent une rasade d'un alcool fort pour surmonter le choc.
;)
[/aparté émotionnel]
Bonjour,

C'était vraiment très maladroit de ma part, je m'excuse une nouvelle fois.

Merci à tous pour votre aide et passer de bonne fête de fin d'année :)
 

cp4

XLDnaute Barbatruc
Je suis vraiment désolé, je n'avais pas compris que tu partais de ce fichier là, c'est de ma faute.
Tu as combien de fichiers? Pas rigolo du tout, de joindre un fichier et utiliser un autre.
Comme le moral est au beau fixe en cette fin d'année, je le prends du bon côté.
Pas très malin de faire déclencher la macro à partir de(s) feuille(s) de destination qui pourraient éventuellement ne pas exister. Plutôt, utiliser un bouton ou un raccourci à mettre en place dans l'option de la macro.
 

Staple1600

XLDnaute Barbatruc
Re

=>Hogwarts
Je rassure, c'était juste un trait d'humour dont je suis coutumier sur XLD;)
(C'est pour cela que j'avais laissé un smiley en indice)
De toute façon, nous répondeurs, avons le cuir dur.
Nous avons pour la plupart passé une certification "Survivre à un forum" après 15 jours de stage dans une base militaire tibétaine tenu par des moines qui ont dédié leur vie à Excel et à la déesse ShiVBA
;)

=>cp4
Meilleurs voeux également ;)
 

Hogwarts

XLDnaute Nouveau
Tu as combien de fichiers? Pas rigolo du tout, de joindre un fichier et utiliser un autre.
Comme le moral est au beau fixe en cette fin d'année, je le prends du bon côté.
Pas très malin de faire déclencher la macro à partir de(s) feuille(s) de destination qui pourraient éventuellement ne pas exister. Plutôt, utiliser un bouton ou un raccourci à mettre en place dans l'option de la macro.
Je suis partie du tout premier fichier que j'avais posté sur le forum et non du dernier que je t'avais adressé "Homogénéisation.xlsx"
Merci beaucoup pour ta patience et également ton aide.
 

Discussions similaires

Statistiques des forums

Discussions
312 104
Messages
2 085 349
Membres
102 869
dernier inscrit
radyreth