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

VBA débutant complètement largué

  • Initiateur de la discussion Initiateur de la discussion Mathias21
  • Date de début Date de début

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 !

M

Mathias21

Guest
Bonjour à tous,

Je vous écris de désespoir après avoir passé la journée au boulot à essayer de mettre en place une macro vba qui ne fonctionne qu'à moitié à l'heure où je vous écris.

Voici mon problème:
Sur la première feuille de mon classeur, j'ai un tableau croisé dynamique dont certaines lignes sont en rouge.
Ce que j'aimerais, c'est copier ces lignes rouges (et uniquement celles-ci) et les coller à la suite dans une deuxième feuille.

La macro VBA que j'ai réalisée ne me permet pour l'instant que de copier ces lignes et de les coller sur une seule et même ligne (elles se superposent pour au final n'afficher que la dernière ligne rouge.

Ci-joint le fichier en question avec la macro:

Sub MacroTab()
'
' MacroTab Macro
Dim a As Range
For Each a In ActiveSheet.Range("a1:a30000")
If (a.Interior.Color = RGB(250, 0, 0)) Then
a.EntireRow.Copy

End If

Next

Sheets("Sheet1").Select
Cells(ActiveSheet.UsedRange.Rows.Count + 1, 1).Select
ActiveSheet.Paste

End Sub


Merci d'avance pour vos réponses.
 

Pièces jointes

Re : VBA débutant complètement largué

Bonjour,
Tu boucle sur les lignes de ton TCD, tu copies la plage, et...tu oublies de coller les cellules, donc forcément...
A noter que je n'ai pas pu ouvrir ton fichier avec le convertisseur
A+
kjin
 
Re : VBA débutant complètement largué

Bonjour Mathias21

Peut-être ainsi (ty copies les lignes mais il manquait le collage )
Code:
Sub MacroTab()
'
' MacroTab Macro
Dim a As Range
For Each a In ActiveSheet.Range("a1:a30000")
If (a.Interior.Color = RGB(250, 0, 0)) Then
  a.EntireRow.Copy Sheets("Sheet1").Cells(Rows.Count, 1).End(xlUp).Offset(1, 0)
End If
Next
 
End Sub

Bonne journée,

mth

Edit: Oups ....
Bonjour Kjin 🙂
 
Re : VBA débutant complètement largué

Bonsoir,

Hi, les jeunes (Kjin et Mireille.....)

Est-il bien nécessaire de tester jusqu'à la ligne 30 000?????? 😀😀

En reprenant le code de Mireille :

Code:
Sub MacroTab()
Dim a As Range
With Sheets("Pivot table Why non-conform")
    For Each a In .Range("a1:a" & .[A65000].End(xlUp).Row)
        If a.Interior.ColorIndex = 3 Then
            a.EntireRow.Copy Sheets("Sheet1").Cells(Rows.Count, 1).End(xlUp)(2)
        End If
    Next a
End With
End Sub

Bonne soirée
 
Re : VBA débutant complètement largué

Hi (bis)

Aussi complètement hors sujet, juste pour :

@ Mireille, te retourner les bises

@ Kjin, bizarre que tu n'aies pu ouvrir son fichier, je l'ai ouvert avec 2003 & convertisseur (car même si mon pedigree indique 2007, j'ai les 2 versions...)
Mathias, pourrais-tu nous confirmer ta version Excel utilisée (2007 ou 2010)?
Comme je possède 2 versions (2003 et 2007), peut-être que le convertisseur utilise une dll de 2007 que ne possèderait pas les versions antérieures????
A suivre...
 
Re : VBA débutant complètement largué

Bonjour à tous et désolé pour le temps mis à vous répondre, Internet est quelque peu capricieux depuis le Vietnam.

Je vous dois un grand merci pour votre aide, ça marche du tonerre.

La version d'Excel que j'utilise est bien celle de 2007.

En tout cas, continuez comme ça, nous sommes beaucoup à ne pas encore maîtriser tous les rouages d'Excel et votre aide s'avère très précieuse.

Bonne journée
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

L
Réponses
9
Affichages
1 K
Réponses
10
Affichages
1 K
Réponses
7
Affichages
1 K
A
Réponses
7
Affichages
1 K
A
R
  • Question Question
Réponses
2
Affichages
988
Rousseau Benoit
R
G
  • Question Question
Microsoft 365 VBA : Copier-Coller
Réponses
1
Affichages
919
D
Réponses
4
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…