Possibilité d'effectuer plusieurs opération de collage à la fois ?

Bonjour à tous,

J'ai un petit soucis que je n'arrive pas à résoudre, je ne suis même pas sur que ce soit possible, malgré mes recherches je n'ai rien trouvé à ce sujet.

Je m'explique :

J'aurais besoin de copier coller d'une feuille à une autre des valeurs, MAIS :

- Il faut que le collage se fasse en addition avec les valeurs des cellules existantes : opération xlPasteSpecialOperationAdd

- Il faut que le collage prenne uniquement les valeurs et non les formules, le tout sans prendre en compte la mise en forme de l'endroit d'où ont été copié les valeurs : opération PasteSpecial (xlPasteValues) ? (je ne suis pas sur de celle-ci)

- Et pour finir il faut que le collage ne colle pas les bordures du tableau d'où ont été copié les valeurs je ne veux pas que le quadrillage soit recopié : opération xlPasteAllExceptBorders

Voilà voilà.

Mon fichier est privé je ne peux pas vous le partager.

Je vous met tout de même la partie du code intéressante :

Private Sub ValiderEntreeStock_Click()

'Il faut copier coller l'entrée stock vers le récap stock en l'additionnant avec l'existant, le choix de la colonne se fait en fonction de la combobox 3

    'Copie colle la liste indiqué dans la feuille entrée stock pour l'ajouter à l'inventaire (feuille recap_stock)
    Sheets("entrée_stock").Activate
    Range("H5").Activate
    Range(Selection, Selection.End(xlDown)).Copy

    Sheets("recap_stock").Activate
    Sheets("recap_stock").Range("G3").Activate
    Do While ComboBox3.Value <> ActiveCell
        ActiveCell.Offset(0, 1).Select
    Loop
    ActiveCell.Offset(2, 0).Select
    ActiveCell.PasteSpecial _
    Operation:=xlPasteSpecialOperationAdd

    Application.CutCopyMode = False

' colle uniquement les valeurs sans la mise en forme de l'endroit de provenance :
' PasteSpecial (xlPasteValues)

' colle sans prendre en compte les bordures et le cadrillage du tableau de l'endroit d'où ont été copié les valeurs :
' xlPasteAllExceptBorders

End Sub

Si quelqu'un à la solution pour mettre toutes ces opérations de collage "ensemble" du moins qu'elles soient toutes prise en compte, car je ne sais pas comment faire j'ai essayer de les mettre simplement à la suite mais sans succès. Surement une erreur de ma part mais je ne sais où

Merci de m'éclairer ça m'aiderais beaucoup,

Bonne journée,

Bonjour,

Je ne sais pas si j'ai compris ... J'ai copié J2 et activé les options dans la boîte de dialogue du collage spécial, comme illustré.
En colonne D, les formats n'ont pas été modifiés.

image

Si ça correspond, l'enregistreur de macro devrait répondre à ta question

Bonjour La Taupe U.Milité

En VBA ça donne

Private Sub ValiderEntreeStock_Click()
  Dim dLigS As Long, Col As Long
  ' Avec la feuille ENTREE stock
  With Sheets("entrée_stock")
    ' Dernière ligne remplie de la colonne H
    dlig = .Range("H" & Rows.Count).End(xlUp).Row
    ' Copier toutes les cellules
    .Range("H5:H" & dlig).Copy
  End With
  ' Pour commencer sur la colonne G
  Col = 7
  ' Avc la feuille récap
  With Sheets("recap_stock")
    ' Vérifier si la colonne différetne de la combobox
    Do While ComboBox3.Value <> .Cells(3, Col)
      ' PAsser à la colonne suivante
      Col = Col + 1
    Loop
    ' Sur la colonne trouvée en ligne 5 coller les valeurs par ajout
    .Cells(5, Col).PasteSpecial Paste:=xlPasteValues, Operation:=xlAdd, SkipBlanks:=False, Transpose:=False
  End With
  ' Désactiver le copier/coller
  Application.CutCopyMode = False
End Sub

A+

Bonjour U.Milité, Bruno,

Un grand merci à vous deux,

Merci Bruno pour ce bout de code qui m'aide bien (c'est la suite du projet sur lequel tu m'avais déjà aidé)

Merci beaucoup,

Toujours aussi satisfaisant d'avoir de l'aide rapidement avec un résultat parfait.

Bonne journée à vous deux.

Et très certainement à bientôt dans un nouveau poste pour les prochaines étapes où je bloquerai

Re,

Je n'aime pas me faire de pub, mais n'hésitez pas à cliquer sur le vote

image

Ah oui ! il faut la voir cette petite flèche

Juste une dernière question, par hasard, saurais-tu s'il y a une une formule qui fait l'inverse de celle-ci : Operation:=xlAdd

Remove fonctionne ?

Qui lorsque tu copies colles soustrait la valeur ?

Merci par avance pour ton retour

Re,

Affirmatif

.PasteSpecial Paste:=xlPasteValues, Operation:=xlSubtract,SkipBlanks:=False, Transpose:=False

A+

Mais quel homme rempli de savoir, c'est fou de savoir tout ça !

Merci beaucoup ! Une fois de plus tu me sauves !

A bientôt

Re,

C'est surtout que cet homme (comme tu dis) sait se servir de l'enregistreur de macros

Bonjour à tous,

Je me permets de revenir sur ce post car j'ai une problématique ressemblant au titre du post, sur un copier coller,

J'explique :

J'ai une feuille n°1 avec des valeurs, ces valeurs sont à la suite vers le bas dans la colonne L, ces cellules sont surlignés soit en vert, rouge ou orange en fonction d'une règle que j'ai crée. Cette règle, fait un calcul si L15 est < J15-K15 alors rouge si > alors vert etc ...

Je souhaiterai copier ces valeurs avec la couleur sur ma feuille n°2 dans la cellule H10 jusque la dernière cellule H non vide.

J'arrive à copier la valeur en utilisant Paste:=xlPasteValues

J'essai de rajouter la couleur donc en utilisant Paste:=xlPasteFormats

Mais là problème, quand il reprend le format des cellules de la feuille n°1 il reprend la règle de la mise en forme et donc me soustrait les 2 colonnes d'avant sur ma feuille 2, sauf que les 2 colonnes là n'ont pas les mêmes valeur que sur ma feuille n° 1. Ce qui me fait me retrouver avec une cellule verte sur ma feuille 2 alors que sur la feuille 1 elle est rouge ou parfois ca correspond parce que le hasard.

J'aimerais faire enfaite comme une capture d'écran tel quel de ma colonne sur la feuille 1 vers ma feuille 2 en colonne H. Je veux les mêmes valeurs et la même couleur de cellule de ma feuille 1 vers ma feuille 2

Je ne sais pas si je me suis bien fait comprendre,

Je reste disponible,

Merci beaucoup aux personnes qui voudront bien m'aider, persuadé qu'une solution existe,

Merci beaucoup !

Hello !

J'ai finis par trouver tout seul comme un grand après de nombreux essais mais pour ce que ca intéresse je vous partage la partie du code pour résoudre ce problème :

' Copie colle le reliquat de l'équipe A (on prend du coffrage) vers la feuille liste de matos à envoyer pour mémo
     ' Avec la feuille accueil
     With Sheets("Accueil")
    ' Dernière ligne remplie de la colonne L
    derLig = .Range("L" & Rows.Count).End(xlUp).Row
    ' Copier toutes les cellules
    .Range("L15:L" & derLig).CopyPicture Appearance:=xlScreen, Format:=xlPicture
    ' Colle en image le reliquat de l'équipe A
    Sheets("Liste de matériel à envoyer").Range("H10").Activate
    ActiveSheet.PasteSpecial Format:="Image (métafichier amélioré)", Link:= _
        False, DisplayAsIcon:=False
  End With

Voila voila,

Merci à tous

Rechercher des sujets similaires à "possibilite effectuer operation collage fois"