Copier Coller d'au autre fichier sans liaison

Bonjour je vous explique mon problème du jour :

Quotidiennement des personnes font des stats similaires a partir de fichier Excel.

Voici comment ils font.

  • Ils récupèrent une extraction excel d'un logiciel
  • Ils copie colle cette extraction sur un onglet d'un fichier (Stat 26) créé par mes soins qui a base de "NB.SI.ENS" et "RECHERCHEV"... édite des tableaux "Propres" sur un deuxième onglet
  • Ces tableaux sont envoyés vers un organisme externe et "Stocké" via un copié/collé dans un autre fichier, (Stats 02-2020 actuellement) ayant un onglet pour chaque jour, pour archive

C'est sur ce dernier point que j'ai un problème, en effet a chaque copié/collé (Donc tous les jours) une liaison se créée, ce qui fait que les stats de la veille (et des jours d'avant) se modifient au copié/collé du jour. J'ai compris que la solution est de supprimer la liaison après chaque copié/collé mais les utilisateurs ne sont pas forcément à l'aise avec excel pour le faire eux et ce fichier est utilisé par moult personnes. Personnellement j'interviens que très rarement sur ce fichier.

De fait je fait appel à votre aide pour solutionner ce problème dans cet ordre de préférence si possible

  • Soit empêcher la création de liaison au copié/collé, j'ai testé les différents types de copié/collé soit la liaison se fait soit la structure du tableau est modifiée
  • Soit déclencher une macro après le copier coller qui efface cette liaison immédiatement après sa création

Si possible automatiquement

Malgré moultes recherche ici et ailleurs je n'ai pas trouvé de solution

Merci d'avance de votre aide

Bonjour Fabien, bonjour le forum,

Non testé !... Mais il me semble qu'en prenant le fichier final avec un code de ce style ça devrait faire l'affaire puisque on copie/colle uniquement les valeurs :

Sub Macro1()
Dim O As Worksheet 'déclare la variable O (Onglet)

Application.ScreenUpdating = False 'masque les rafraîchissements d'écran
For Each O In Worksheets 'boucle sur tous les onglets O du classeur
    O.Activate 'active l'onglet O
    O.Cells.Copy 'copie toutes les cellules de l'onglet
    O.Range("A1").PasteSpecial (xlPasteValues) 'colle les valeurs dans A1
    O.Range("A1").Select 'sélectionne A1
Next O 'prochain onglet de la boucle
Application.CutCopyMode = False 'masque le clignotement dû au copié
Application.ScreenUpdating = True 'affiche les rafraîchissements d'écran
End Sub

Bonjour,

Je suis perdu là.

Je met ça où ? Ca va faire quoi ?

Je doit créer un Onglet O ?

Désolé...

Bonjour Fabien, bonjour le forum,

Non testé !... Mais il me semble qu'en prenant le fichier final avec un code de ce style ça devrait faire l'affaire puisque on copie/colle uniquement les valeurs :

Sub Macro1()
Dim O As Worksheet 'déclare la variable O (Onglet)

Application.ScreenUpdating = False 'masque les rafraîchissements d'écran
For Each O In Worksheets 'boucle sur tous les onglets O du classeur
    O.Activate 'active l'onglet O
    O.Cells.Copy 'copie toutes les cellules de l'onglet
    O.Range("A1").PasteSpecial (xlPasteValues) 'colle les valeurs dans A1
    O.Range("A1").Select 'sélectionne A1
Next O 'prochain onglet de la boucle
Application.CutCopyMode = False 'masque le clignotement dû au copié
Application.ScreenUpdating = True 'affiche les rafraîchissements d'écran
End Sub

Re,

Il me semble que je parlais de fichier final... En l'occurrence Stats 02-2020.

Il faudrait copier le code dans un module standard (Module 1 par exemple) et le lancer avant de l'envoyer vers l'organisme externe. Mais je t'avoue que je ne pourrai teste qui si tu proposes un fichier exemple...

Le problème c'est que le copié et le collé se font sur 2 fichiers différents

3stats-26.xlsm (66.27 Ko)

Le problème c'est que le copié et le collé se font sur 2 fichiers différents

Stats 26.xlsm

stats sisiao urgence 02-2020.xlsm

Bonjour je n'ai pas reçu de retour à ce sujet, pas de solution ?

Merci d'avance

Rechercher des sujets similaires à "copier coller fichier liaison"