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

vba copier collerun tableen utilisant les formats et couleurs

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 !

serge.savi

XLDnaute Nouveau
Bonjour

J ai besoin de votre aide , j ai joint un fichier comprenant un tableau nommé Rumilly , identifié par une couleur et un format j ai une dizaine d onglets contenant un tableau ,correspondant a une ville


Mon besoin est :
De pouvoir garder les formules des colonnes A-B-G-H-K-L-M-P-Q-R-U-V-W-Z-AA-AB-AJ-AK-AL-AO-AP-AQ-AT-AU-AV-AY-AZ-BA-BD-BE-BF
Effacer le reste des colonnes
De pouvoir recopier ce tableau a la suite....sur cet exemple ligne 35
mise a jour , en ajoutant 1 jour dans la colonne c...sur cet exemple la date est affichée au 17-02-2015 , le resultat de la copie , la date =s affichera au 18-02-2015

D'avance un grand merci pour votre aide et votre disponibilite
 

Pièces jointes

Re : vba copier collerun tableen utilisant les formats et couleurs

Bonjour serge.savi, salut Paf,

Cette macro doit faire l'affaire :

Code:
Sub CopierColler()
Dim dercel As Range, n&
Rows("5:" & Rows.Count).Sort [C5], xlAscending, Header:=xlYes 'tri de sécurité
Set dercel = Range("C" & Rows.Count).End(xlUp)
If dercel.Row < 6 Then Exit Sub 'si tableau vide
n = Application.CountIf([C:C], dercel) 'nombre de lignes à copier
With Rows(dercel.Row + 1).Resize(n) 'plage du coller
  Rows(dercel.Row - n + 1).Resize(n).Copy .Cells 'copier-coller
  On Error Resume Next 'si aucune constante
  .SpecialCells(xlCellTypeConstants) = "" 'effacement
  .Columns(3) = dercel + 1 'incrémentation de la date
End With
End Sub
Dans votre liste de colonnes à ne pas effacer vous ne mentionnez pas AE-AF-AG.

Elles contiennent des formules, mais s'il faut les effacer dites-le...

A+
 
Re : vba copier collerun tableen utilisant les formats et couleurs

Re,

J'avais oublié :

j ai une dizaine d onglets contenant un tableau ,correspondant a une ville

Alors il suffit de faire une boucle :

Code:
Sub CopierColler()
Dim w As Worksheet, dercel As Range, n&
For Each w In Worksheets
  w.Rows("5:" & w.Rows.Count).Sort w.[C5], xlAscending, Header:=xlYes 'tri de sécurité
  Set dercel = w.Range("C" & w.Rows.Count).End(xlUp)
  If dercel.Row > 5 Then
    n = Application.CountIf(w.[C:C], dercel) 'nombre de lignes à copier
    With w.Rows(dercel.Row + 1).Resize(n) 'plage du coller
      w.Rows(dercel.Row - n + 1).Resize(n).Copy .Cells 'copier-coller
      On Error Resume Next 'si aucune constante
      .SpecialCells(xlCellTypeConstants) = "" 'effacement
      .Columns(3) = dercel + 1 'incrémentation de la date
      On Error GoTo 0
    End With
  End If
Next
End Sub
A+
 
- 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
1
Affichages
758
Compte Supprimé 979
C
Réponses
58
Affichages
6 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…