• Initiateur de la discussion Initiateur de la discussion breizh3
  • 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 !

B

breizh3

Guest
Bonjour,
Voila je me suis lancé dans ma première macro, mais la je sèche.
mon but est simple lorsque la valeur de ma colonne Q en feuil 1103 est inférieur a 0 je voudrais qu íl me remplisse la feuil dec 13
avec la macro que j’ai fais il trouve bien les valeurs mais je n'arrive pas a sélectionner que les colonnes dont j'ai besoin et je ne veut copier que les valeurs
macro:
Sub copier()

Dim ligne As Long
With Sheets("1103")
For ligne = 2 To .Range("A" & Rows.Count).End(xlUp).Row
If .Range("Q" & ligne) > 0 Then
.Range("A" & ligne & ":N" & ligne).Copy _
Sheets("DEC 13").Cells(Rows.Count, 1).End(xlUp)(2).Resize(, 3)
End If
Next ligne
End With
End Sub

Merci pour votre aide
 

Pièces jointes

Re : Debutant Macro

Bonjour,
pas mauvais comme début,
il te suffit juste d’enlever les couleurs de tes cellules de la feuille dec 13 (regarde plus bas tu comprendras que la ligne trouvé n'est pas la bonne)
si je comprends bien ce que tu souhaites.

A bientôt.
 
Re : Debutant Macro

Bonjour.

Si j'ai bien compris :

Code:
For ligne = 5 To .Range("A" & Rows.Count).End(xlUp).Row 'Il me semble que ca doit commencer à la ligne 5
             
If .Range("Q" & ligne) > 0 Then ' Tu veux inférieur ou supérieur à 0
           
Set LR = Range("Tableau2").ListObject.ListRows.Add(AlwaysInsert:=True)

LR.Range.Cells(1, 1) = Sheets("1103").Cells(ligne, "C").Value
LR.Range.Cells(1, 2) = Sheets("1103").Cells(ligne, "D").Value
LR.Range.Cells(1, 3) = Sheets("1103").Cells(ligne, "G").Value
LR.Range.Cells(1, 4) = Sheets("1103").Cells(ligne, "j").Value
             
End If

Next ligne

Cordialement

Docmarti
 
Re : Debutant Macro

Merci de vouloir m'aider
mais cela ne fonctionne pas
sur la ligne:
Set LR = Range("Tableau2").ListObject.ListRows.Add(AlwaysInsert:=True)
Erreur exécution 91
je récapitule je voudrais obtenir que lorsque dans mon tableau 1103 ma valeur de la colonne Q est supérieur a 0
il remplisse ref,désignation,prix et la valeur Q de la même ligne
j’espère être suffisamment claire
 
Re : Debutant Macro

Bonjour à tous

Une petite question:
Inférieur ou Supérieur? car ...
mon but est simple lorsque la valeur de ma colonne Q en feuil 1103 est inférieur a 0 je voudrais
macro:
Sub copier()

Dim ligne As Long
With Sheets("1103")
For ligne = 2 To .Range("A" & Rows.Count).End(xlUp).Row
If .Range("Q" & ligne) > 0 Then


EDITION: Désolé, je viens de voir que Docmarti avait déjà fait la remarque dans les commentaires de son code 😱
 
Re : Debutant Macro

oui pour l'exemple pas pas de problème mais je voudrais qu’il puisse le faire autant qu'il y a de ligne
la macro fonctionne bien, juste que je suis limiter en nombre de ligne et je ne trouve pas pourquoi
 
Re : Debutant Macro

Re

Si tu appliques un filtre automatique (avec comme critére > 0) sur la colonne Q, le filtre te renvoie combien de lignes?

PS: N'y a-t-il pas des cellules vides en colonne A? car il y en a dans ton fichier exemple (A424)
ce qui peut fausser la détermination de la dernière cellule non vide de la colonne A.
For ligne = 5 To .Range("A" & Rows.Count).End(xlUp).Row
 
Dernière édition:
- 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

Réponses
15
Affichages
788
Retour