Difficulté vba - VB/VBA/VBS - Programmation
Marsh Posté le 24-03-2015 à 11:41:51
Bonjour,
conformément aux règles du forum (à lire donc !), poster le code entrepris …
Sinon le plus efficace est d'utiliser les fonctionnalités de feuilles de calcul au lieu de partir dans une usine à gaz !
Voir du côté du filtre avancé …
_______________________________________________________________________________________________
Je suis Charlie - Je suis Bardo
Marsh Posté le 24-03-2015 à 18:13:55
Désolé Marc il est vrai que je me suis aperçu un peu tard que j'avais laissé le fichier au boulot.
Je vais regarder les filtres pour voir si cela est possible.
En attendant, voici les lignes de prog mais j'ai fait tellement de modif qu'à la fin je ne suis plus sûr d'avoir l'exhaustivité des lignes de prog pour ce type d'analyse.
Private Sub Commandbutton1_Click()
Application.ScreenUpdating = False
Range("CA2" ).Clear
Range("CA2" ) = TextBox1
FTA.Hide
Sheets("Master planning" ).Select
Dim plage As Range, cel As Range
'valeur a chercher
valcherch = Sheets("Master planning" ).Range("CA2" )
Set plage = .Range("C20" & derlig)
End With
With Worksheets("Master planning" )
'test plage
For Each cel In plage
If cel = valcherch Then
'premiere cellule vide apres derniere non vide colonne C
derlig = .Range("C" & Rows.Count).End(xlUp).Row + 1
'premier lancement
If derlig = 2 Then
derlig = 20
End If
'copy ligne entiere
cel.EntireRow.Copy .Range("A" & derlig)
Sheets("FTA" ).Visible = True
Sheets("FTA" ).Select
Range("A100" ).Select
ActiveSheet.Paste
End If
Next cel
End With
'rafraichissement ecran
Application.ScreenUpdating = True
End Sub
Marsh Posté le 24-03-2015 à 18:47:11
J'ai réussi avec un filtre. Effectivement je suis parti au départ pour faire une usine à gaz
Private Sub Commandbutton1_Click()
Application.ScreenUpdating = False
Range("CA2" ).Clear
Range("CA2" ) = TextBox1
FTA.Hide
Sheets("Master planning" ).Select
ActiveSheet.Range("A19:BM240" ).AutoFilter Field:=3, Criteria1:="=" & Range("CA2" ).Value
Range("B7:BM241" ).Select
Selection.Copy
Sheets("FTA" ).Visible = True
Sheets("FTA" ).Select
Range("B100" ).Select
ActiveSheet.Paste
End Sub
Merci en tout cas Marc
Marsh Posté le 23-03-2015 à 20:28:52
Bonsoir à tous,
Je debute en macro excel et je tente actuellement d'ecrire une macro me permettant une analyse de cellule puis un copier/ coller de ligne.
Voici ce que je souhaite:
Sur l'onglet "master planning" je souhaite lancer une analyse de valeur dans la colonne C de mon tableau.
L'ensemble des cellules va de C20 à C240.
La macro doit comparer la valeur numerique de chaque cellule l'un apres l'autre jusqu'à ce quelle trouve la cellule egale a une autre cellule de la page (variable en cellule CA2).
Des que la macro a trouvé la cellule correspondante, elle copie la ligne entiere et la copie sur une autre page (FTA).
J'ai essayé avec for each mais rien ne se passe...
Merci pour votre aide
Cclc