XL 2010 Mon presse papier se vide avec l'execution d'un code désactivant les calculs auto

  • Initiateur de la discussion Initiateur de la discussion Niouf
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Niouf

XLDnaute Occasionnel
Bonjour !

Tout est dans le titre, j'effectue une copie puis ce code :
Code:
ActiveWorkbook.Worksheets("Annuel").Activate
Application.Calculation = xlManual

Je souhaite ensuite coller la valeur copié précédemment mais le presse papier s'est désactivé ...

Est ce bien normal ? Peut on contrer ceci ?
Je désactive les calculs volontairement sinon le fichier plante pendant plusieurs minutes lorsqu'il faut faire les calculs.

Merci d'avance pour votre aide !
 
Voici le code en question :

Code:
For N°ligne = 1 To 272
   
    If Sheets("annuel").Cells(N°ligne, 1) = Matricule Then

'Envoit la ligne en archive
    Rows(N°ligne).Select
    Selection.Copy
    ActiveWindow.ScrollWorkbookTabs Position:=xlLast
    Sheets("Archive comp").Select
    Rows("18:18").Select
    Selection.Insert Shift:=xlDown
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("B4").Select
    ActiveWindow.ScrollWorkbookTabs Position:=xlFirst
    'Supprime la ligne de annuel
    Sheets("Annuel").Select
    Rows(N°ligne).Select
    Selection.Delete Shift:=xlUp
    Call réparation
  
      
End If
Next

Le fichier est trop imposant ... je vais voir à créer un exemple rien qu'avec l'onglet souhaité...
 
Bonjour le forum

Cette partie de ton code telle que modifiée marche sur mon ordi
Les données sont bien recopiées
VB:
Sub Macro1()
Dim N_Ligne As Long
Dim matricule ' pour tester, à supprimer ensuite
matricule = 1 'pour tester à supprimer ensuite

For N_Ligne = 271 To 1 Step -1
    If Sheets("annuel").Cells(N_Ligne, 1) = matricule Then
    'Envoit la ligne en archive
    Rows(N_Ligne).Copy
    Sheets("Archive comp").Cells(Rows.Count, 1).End(xlUp)(2).PasteSpecial Paste:=xlPasteValues
    'Supprime la ligne de annuel
    Sheets("Annuel").Rows(N_Ligne).Delete Shift:=xlUp
    'Call réparation
    End If
Next
End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Retour