XL 2016 VBA - Macro de sauvegarde de saisie dans un autre onglet

faenor86

XLDnaute Nouveau
Bonjour,

Je souhaite créer une macro permettant de copier les valeurs de quelques cellules d'un premier onglet vers un onglet de "SAUVEGARDE".

La macro doit plus exactement :
- copier le contenu de certaines cellules du premier onglet
- incrémenter le numéro de ligne de l'onglet "sauvegarde"
- coller les valeurs sous la dernière ligne sauvegarder

(pas besoin de supprimer les valeurs du premier onglet après la recopie)

J'ai utilisé l'enregistreur de macro mais je n'arrive qu'à faire un copier/coller valeur très rigide.

Merci d'avance pour votre aide !
 

Pièces jointes

  • macroCopie.xlsm
    18.5 KB · Affichages: 50

thebenoit59

XLDnaute Accro
Bonjour Faenor.

Une première proposition.

VB:
Sub sauvegarde()
Dim ii&

ii = Sheets(2).[a65000].End(xlUp).Row + 1

With Sheets(2)
    Sheets(1).Range("A2:D2").Copy
    .Range("B" & ii).PasteSpecial Paste:=xlPasteValues
    .Range("A" & ii).Value = ii - 1
End With
   
End Sub
 

faenor86

XLDnaute Nouveau
Bonjour,

Je me permets de réactiver ce post bien que la solution proposée par theBenoit59 est diablement efficace, elle fait appel à des méthodes&objets qui me sont inconnus.
J'ai bricolé un code avec l'enregistreur de macro ainsi que de mes micros connaissances en VBA !
VB:
Sub copie2()

Static Compteur As Integer
Dim numligne As Integer

    Compteur = Compteur + 1
    numligne = Compteur + 1
    Range("B7:C7").Select
    Selection.Copy
    Sheets("SAUVERGARDE").Select
    Range("A1").Offset(Compteur, 1).Select
    Cells(numligne, 1).Value = Compteur
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
  
End Sub

Par contre j'ai l'impression que les copier coller ne sont plus synchro avec la valeur de mon ID lorsque je ferme et réouvre le fichier... avez-vous une solution pour palier à cela ?

Autre question très importante à mes yeux : je souhaiterais copier dans mon onglet SAUVEGARDE le contenu de plages ou de cellules disjointes les unes par rapports aux autres. Avez-vous une astuce pour les données sauvegardées à chaque clique de Macro soit uniformisées au préalable sur une ligne avant collage ? (emploi d'une variable de type tableau ?)

Ci-joint à toute fin utile mon fichier, les plages à copier sont en gris dans le premier onglet, pour l'instant seule la 1iere est copiée.
En vous remerciant par avance

cordialement
 

Pièces jointes

  • CopieDisjointe.xlsm
    19.3 KB · Affichages: 64
Dernière édition:

Discussions similaires

Réponses
12
Affichages
227