Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2010 Couper coller entre feuilles d'un classeur

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 !

Moonshine33

XLDnaute Nouveau
Bonjour à tous,

Je cherche à créer une macro pour créer un archivage de données vers un autre onglet d'un classeur.
Voici concrètement ce que je cherches à faire :

Sur la feuille active, pour chaque cellule de la colonne K,
Si valeur cellule K = « A », alors couper la ligne complète (et la supprimer dans cet onglet) et la coller vers a feuille « Archive » à la suite des cellules déjà existantes.
Classer les valeurs de la feuille « Archive » (celles de la plage allant de la colonne A à M) selon la valeur de la cellule A (dans l’ordre croissant).

Merci par avance à tous ceux qui tenteront de m'aider 🙂 !

Moonshine.
 
Re : Couper coller entre feuilles d'un classeur

Bonjour à tous,

Etant complètement novice sur le forum, les deux fois où j’ai posté des messages sur ce forum je n’avais pas mis de fichier exemple et j’avais eu des réponses. Du coup désolée je ne savais pas que c’était obligatoire. J’en mets un en pièce jointe.

Merci d’avance à ceux qui essaieront de m’apporter une solution.

Moonshine.
 

Pièces jointes

Re : Couper coller entre feuilles d'un classeur

Bonjour,
Merci pour ta réponse M12. En fait mon fichier source comporte beaucoup plus de valeurs que ce que j'ai mis en exemple, du coup ça marche pour mon exemple (très bien d'ailleurs), mais ne marche pas pour mon fichier source. J'ai l'impression que les plages que tu as mises sont limitées ? Et en fait il faudrait que la limite soit la dernière cellule non vide du tableau. As-tu besoin d'un fichier avec plus de valeurs pour t'aider ?
Merci pour ton aide en tout cas.
Moonshine.
 
Re : Couper coller entre feuilles d'un classeur

Bonjour,

un petit changement en commençant (par le bas )et ça marche 🙂

Code:
Option Explicit


Sub transfert()
Dim F1 As Range
Dim F2 As Worksheet
Dim i As Integer
Dim Desti
Dim DernLigneF1 As Long
Application.ScreenUpdating = False
DernLigneF1 = Sheets("source").Range("A" & Rows.Count).End(xlUp).Row
Set F1 = Sheets("source").Range("A1:A" & DernLigneF1)
Set F2 = Sheets("Archive")
For i = F1.Rows.Count To 4 Step -1
  If F1.Cells(i, 11).Value = "A" Then
    Set Desti = F2.[A65000].End(xlUp)
    Rows(i).EntireRow.Cut Destination:=Desti(2): Rows(i).EntireRow.Delete Shift:=xlUp
  End If
Next i
Range("a3").Select
ActiveWorkbook.Worksheets("Archive").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Archive").Sort.SortFields.Add Key:=Range("A3"), _
                                                         SortOn:=xlSortOnValues, _
                                                         Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Archive").Sort
  .SetRange Range("A4:M8")
  .Header = xlNo
  .MatchCase = False
  .Orientation = xlTopToBottom
  .SortMethod = xlPinYin
  .Apply
End With
Application.ScreenUpdating = True
End Sub

P.
 
- 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

Discussions similaires

Réponses
3
Affichages
120
Réponses
5
Affichages
473
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…