Copier une ligne sans sa couleur de fond [Résolu]

mod77 1237 Messages postés vendredi 10 juillet 2009Date d'inscription 7 novembre 2017 Dernière intervention - 9 juin 2017 à 01:09 - Dernière réponse :  Henri
- 11 juin 2017 à 23:47
Bonjour,

Je souhaite savoir comment coller une ligne sans la couleur de fond et sans les codes des cellules, vers une autre feuille svp.

J'ai mis en boucle ceci:

For i = 6 To 7
'Copie la ligne de "B" à "M"
Sheets("feuil1").Range("B" & i & ":M" & i).Copy
Sheets("feuil2").Range("B" & i).PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Next




Savoir dire NON est un devoir et une force! N'ayez pas peur! L'union fait la force!

Passez en résolu si ça l'est!
Afficher la suite 
1237Messages postés vendredi 10 juillet 2009Date d'inscription 7 novembre 2017 Dernière intervention

14 réponses

Répondre au sujet
Patrice33740 6316 Messages postés dimanche 13 juin 2010Date d'inscription 11 décembre 2017 Dernière intervention - 9 juin 2017 à 01:20
+1
Utile
1
Bonjour,

Peut-être simplement :
....
Sheets("feuil2").Range("B" & i & ":M" & i).Value = _
Sheets("feuil1").Range("B" & i & ":M" & i).Value
....

Cette réponse vous a-t-elle aidé ?  
mod77 1237 Messages postés vendredi 10 juillet 2009Date d'inscription 7 novembre 2017 Dernière intervention - 9 juin 2017 à 01:42
Merci ! j'essaie demain .
Bonne nuit
Commenter la réponse de Patrice33740
+1
Utile
Inutile d'utiliser une boucle For .. Next, donc pas besoin de variable i !

xlPasteAll copie tout (y compris le format des cellules) ; utilise plutôt
xlPasteValues qui copie seulement les valeurs.


Option Explicit

Sub Essai()
  ' Copie les lignes de la plage "B6:M7"
  Worksheets("Feuil1").Range("B6:M7").Copy
  Worksheets("Feuil2").Range("B6").PasteSpecial xlPasteValues
  Application.CutCopyMode = False
End Sub


La dernière instruction évite le cadre de tirets clignotants
(qui est autour de la plage source des données à copier).
 
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de Henri
mod77 1237 Messages postés vendredi 10 juillet 2009Date d'inscription 7 novembre 2017 Dernière intervention - 9 juin 2017 à 01:41
0
Utile
10
Le format comprend aussi les fonctions dans les cellules (type: =si(..) ) ?
Henri > mod77 1237 Messages postés vendredi 10 juillet 2009Date d'inscription 7 novembre 2017 Dernière intervention - 11 juin 2017 à 22:37
 
@mod77

Dans la page d'arrivée, ce n'est pas un cadre de sélection ; il suffit de sélectionner
une cellule pour que cette plage de destination ne soit plus sélectionnée :


Option Explicit

Sub Essai()
  ' Copie les lignes de la plage "B6:M7"
  Worksheets("Feuil1").Range("B6:M7").Copy
  With Worksheets("Feuil2").
    Range("B6").PasteSpecial xlPasteValues: .[A1].Select
  End With
  Application.CutCopyMode = False
End Sub


Remarque : les autres méthodes qui utilisent une variable i doivent être
dans une boucle For i ... Next i pour marcher, et je trouve plus simple
d'utiliser directement "B6:M7".
 
mod77 1237 Messages postés vendredi 10 juillet 2009Date d'inscription 7 novembre 2017 Dernière intervention > Henri - 11 juin 2017 à 23:04
C'est vrai Henri, c'est mieux mais ça ne passe pas si je transpose vers Calc de OpenOffice Mais je garde ton code. Merci à tous
Henri > mod77 1237 Messages postés vendredi 10 juillet 2009Date d'inscription 7 novembre 2017 Dernière intervention - 11 juin 2017 à 23:47
 
@mod77

Désolé, ça n'a pas marché car j'ai fait une faute de frappe ! Le point
n'est pas en fin de ligne 7 mais en début de ligne 8, ce qui donne :


Option Explicit

Sub Essai()
  ' Copie les lignes de la plage "B6:M7"
  Worksheets("Feuil1").Range("B6:M7").Copy
  With Worksheets("Feuil2")
    .Range("B6").PasteSpecial xlPasteValues: .[A1].Select
  End With
  Application.CutCopyMode = False
End Sub


Et ça devrait passer même avec Calc de OpenOffice.
 
Patrice33740 6316 Messages postés dimanche 13 juin 2010Date d'inscription 11 décembre 2017 Dernière intervention - 11 juin 2017 à 21:34
Avec ma formule, il n'y a pas de Copy donc pas de cadre pointillé autour de la zone copiée et pas besoin de Application.CutCopyMode = False
mod77 1237 Messages postés vendredi 10 juillet 2009Date d'inscription 7 novembre 2017 Dernière intervention - 11 juin 2017 à 21:43
Merci Patrice33740 ! j'ai adopté et ça marche impec :-)
Commenter la réponse de mod77