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

copier ligne, si cellule contient variable

PauLD

XLDnaute Nouveau
salut tous le monde,
je suis un peu perdu dans ma brousse.
J'ai un fichier excel qui contient un "formulaire" que je dois remplir.
Le report de ce formulaire doit être reporté sur une deuxième page, mais seulement si la valeur paramêtre est de 1-3
J'ai essayé avec les formules standart et j'ai échoué- j'ai essayé avec une macro et pourtant je n'y arrive pas.

le macro utilisé: Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Target.Column = 4 Then
If UCase(Target.Value) = "1" Then
Range("A" & Target.Row).Resize(1, 8).Copy
ActiveSheet.Paste Destination:=Worksheets("Feuil4").Range("A" & Rows.Count).End(xlUp).Offset(1, 0)
Application.CutCopyMode = False
End If
End If
End Sub

j'ai essayé avec 2-3 solutions google, mais souvent les solutions trouvées n'ont proposées qu'une variable fixe (voir:1 ou 2 ou3 mais jamais la possibilité de 1,2,3

je vous joints deux images une du fichier entrant et une du fichier sortant souhaité et une feuille excel exemplaire sans macros.

je vous remercie de votre aide.

salutations du luxembourg

Pol
 

Pièces jointes

  • bild wie ist.jpg
    46.9 KB · Affichages: 19
  • bild wie soll.jpg
    26 KB · Affichages: 20
  • bsp.xls
    43 KB · Affichages: 33

Paf

XLDnaute Barbatruc
Re : copier ligne, si cellule contient variable

Bonjour,

pas sûr d'avoir compris, s'il s'agit de copier la ligne si la cellule de la colonne D = 1 ou 2 ou 3, une solution:

modifier
Code:
If UCase(Target.Value) = "1" Then
en
Code:
If Target.Value >= 1 And Target.Value <= 3 Then

Nota : la fonction UCase permet de passer en majuscule, traitant ici de chiffres, ça semble inutile.

A+
 

PauLD

XLDnaute Nouveau
Re : copier ligne, si cellule contient variable

rebonsoir,
d'abord je vous remercie pour votre premier conseil, mais cela apparament ne résoud pas mon soucis.
Maintenant aulieu de copier chaque ligne, il copie juste dans un endroit une des ligne (la dernière modifiée)

aurait quelqu'un une solution secondaire pour moi?

merci pour votre support.

Pol
 

PauLD

XLDnaute Nouveau
Re : copier ligne, si cellule contient variable

salut, je viens de trouver une solution, pourtant elle n'est pas automatique, faut que je mette probablement un bouton pour faire exécuter mon copier coller..
Sub FiltreLulu()
Dim Lig As Long
Dim Col As String
Dim NbrLig As Long
Dim NumLig As Long

Sheets("Feuil4").Activate ' feuille de destination

Col = "D" ' colonne données non vides à tester'
NumLig = 4 'alors là ca doit etre le N° de la 1er ligne de données en comptant la ligne 1 = 0 .... ? '
With Sheets("VoiesEvacuation") ' feuille source'
NbrLig = .Cells(65536, Col).End(xlUp).Row
For Lig = 5 To NbrLig 'n° de la 1ere ligne de données'
If .Cells(Lig, Col).Value <> "" Then
.Cells(Lig, Col).EntireRow.Copy
NumLig = NumLig + 1
Sheets("Feuil4").Cells(NumLig, 1).Insert Shift:=xlDown
'ici pour insérer ou .Paste pour coller'
End If
Next
End With


End Sub


je suis ouvert à toute critique, et idée.

bonnee soirée

Pol
 
Dernière modification par un modérateur:

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…