Recherche dates tableau et copier lign VBA
Résolu/Fermé
ivain34
Messages postés
11
Date d'inscription
lundi 7 février 2011
Statut
Membre
Dernière intervention
1 mars 2011
-
Modifié par ivain34 le 7/02/2011 à 13:26
Iama Messages postés 319 Date d'inscription mercredi 13 janvier 2010 Statut Membre Dernière intervention 27 mars 2020 - 8 févr. 2011 à 10:53
Iama Messages postés 319 Date d'inscription mercredi 13 janvier 2010 Statut Membre Dernière intervention 27 mars 2020 - 8 févr. 2011 à 10:53
A voir également:
- Recherche dates tableau et copier lign VBA
- Tableau croisé dynamique - Guide
- Recherche musique - Guide
- Recherche par image - Guide
- Erreur 1004 vba ✓ - Forum VB / VBA
- Copier une vidéo youtube - Guide
10 réponses
Sur quoi bloques-tu exactement ?
L'évènement sur le clic ?
La recherche des lignes comprises dans ton intervalle de date ?
La copie de ces lignes ?
L'évènement sur le clic ?
La recherche des lignes comprises dans ton intervalle de date ?
La copie de ces lignes ?
ivain34
Messages postés
11
Date d'inscription
lundi 7 février 2011
Statut
Membre
Dernière intervention
1 mars 2011
7 févr. 2011 à 14:32
7 févr. 2011 à 14:32
Je bloque sur la recherche et la selection des lignes comprises dans mon intervalles de dates (textbox 1 et 2).
Apres c'est bon.
Apres c'est bon.
ivain34
Messages postés
11
Date d'inscription
lundi 7 février 2011
Statut
Membre
Dernière intervention
1 mars 2011
Modifié par ivain34 le 7/02/2011 à 14:50
Modifié par ivain34 le 7/02/2011 à 14:50
En gros je recherche un code du style :
IF valeurs colonne A sont inférieurs à date de fin (textbox2) et supérieurs à date debut (textbox1)
THEN selection des lignes entieres dont les valeurs colonne A correspondent à la condition
IF valeurs colonne A sont inférieurs à date de fin (textbox2) et supérieurs à date debut (textbox1)
THEN selection des lignes entieres dont les valeurs colonne A correspondent à la condition
Quand tu cliques sur le bouton rechercher, que se passe-t-il ?
Tu as des variables qui viennent récupérer les valeurs de tes textbox ?
Parce que logiquement cela devrait être quelque chose dans ce style.
Tu as des variables qui viennent récupérer les valeurs de tes textbox ?
Parce que logiquement cela devrait être quelque chose dans ce style.
DerniereLigne= ActiveSheet.UsedRange.Rows.Count Datedebut = textbox1.value DateFin = Textbox2.value For i = 1 to DerniereLigne if Sheets("Le nom de ta feuille").Cells(i,1) <= DateFin and Sheets("Le nom de ta feuille").Cells(1,1) >= DateDebut Then Worksheets("Le nom de ta feuille").Select Worksheets("Le nom de ta feuille").Rows(i).copy Sheets("Le nom de la feuille cible").Cells(Ligne ou tu copies, colonne).Paste end if Next i
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
ivain34
Messages postés
11
Date d'inscription
lundi 7 février 2011
Statut
Membre
Dernière intervention
1 mars 2011
7 févr. 2011 à 15:45
7 févr. 2011 à 15:45
Ok super! grace a ton code que j'ai un peu transformé, j'y suis arrivé!!!! D'avance je m'excuse pour la syntaxe qui va faire surement en hérisser plus d'un :)
Private Sub CommandButton1_Click()
Dim DerniereLigne As Integer
Dim DateDebut As Date
Dim DateFin As Date
Dim Li
DerniereLigne = ActiveSheet.UsedRange.Rows.Count
DateDebut = TextBox1.Value
DateFin = TextBox2.Value
For i = 1 To DerniereLigne
If Sheets("Feuil1").Cells(i, 1) <= DateFin And Sheets("Feuil1").Cells(i, 1) >= DateDebut Then
Worksheets("Feuil1").Select
Worksheets("Feuil1").Rows(i).Copy
Worksheets("feuil2").Activate
Range("A65536").Select
Selection.End(xlUp).Select
Li = Selection.Row + 1
Cells(Li, 1).Activate
ActiveSheet.Paste
End If
Next i
End Sub
Bref ca marche! Des que je lance mon userform1, je peux rentrer ma date debut et fin (textbox 1 et 2). Des que je clique sur mon bouton "rechercher", la macro selectionne les lignes superieures à la date de debut et inférieures a la date de fin. Pour ensuite me copier le tout dans la feuille 2 à la suite les unes des autres.
MERCI Youha d'avoir pris de ton temps pour ...me comprendre... et pour me repondre. :)
Comment peut on poster ma feuille excel pour que cela puisse servir a d'autre?
Private Sub CommandButton1_Click()
Dim DerniereLigne As Integer
Dim DateDebut As Date
Dim DateFin As Date
Dim Li
DerniereLigne = ActiveSheet.UsedRange.Rows.Count
DateDebut = TextBox1.Value
DateFin = TextBox2.Value
For i = 1 To DerniereLigne
If Sheets("Feuil1").Cells(i, 1) <= DateFin And Sheets("Feuil1").Cells(i, 1) >= DateDebut Then
Worksheets("Feuil1").Select
Worksheets("Feuil1").Rows(i).Copy
Worksheets("feuil2").Activate
Range("A65536").Select
Selection.End(xlUp).Select
Li = Selection.Row + 1
Cells(Li, 1).Activate
ActiveSheet.Paste
End If
Next i
End Sub
Bref ca marche! Des que je lance mon userform1, je peux rentrer ma date debut et fin (textbox 1 et 2). Des que je clique sur mon bouton "rechercher", la macro selectionne les lignes superieures à la date de debut et inférieures a la date de fin. Pour ensuite me copier le tout dans la feuille 2 à la suite les unes des autres.
MERCI Youha d'avoir pris de ton temps pour ...me comprendre... et pour me repondre. :)
Comment peut on poster ma feuille excel pour que cela puisse servir a d'autre?
Pour poster ta feuille tu vas sur http://www.cijoint.fr/
N'oublies pas d'enlever toutes données confidentielles :)
Peux tu aussi cliquer sur le lien Résolu en haut a gauche de la page ?
Bonne continuation !
N'oublies pas d'enlever toutes données confidentielles :)
Peux tu aussi cliquer sur le lien Résolu en haut a gauche de la page ?
Bonne continuation !
ivain34
Messages postés
11
Date d'inscription
lundi 7 février 2011
Statut
Membre
Dernière intervention
1 mars 2011
7 févr. 2011 à 16:33
7 févr. 2011 à 16:33
Ci joint le "programme" :)
http://www.cijoint.fr/cjlink.php?file=cj201102/cijlcy4MIZ.xls
http://www.cijoint.fr/cjlink.php?file=cj201102/cijlcy4MIZ.xls
Iama
Messages postés
319
Date d'inscription
mercredi 13 janvier 2010
Statut
Membre
Dernière intervention
27 mars 2020
14
8 févr. 2011 à 10:14
8 févr. 2011 à 10:14
Bonjour ivain34 et Youha
Pouvez-vous me dire par curiosité quel est le rôle lignes
Range("A65536").Select
Selection.End(xlUp).Select
dans la feuille2 avant la sélection des lignes.
PS: je vais récupérer quelques lignes qui vont m'être utile
Merci
Iama
Pouvez-vous me dire par curiosité quel est le rôle lignes
Range("A65536").Select
Selection.End(xlUp).Select
dans la feuille2 avant la sélection des lignes.
PS: je vais récupérer quelques lignes qui vont m'être utile
Merci
Iama
ivain34
Messages postés
11
Date d'inscription
lundi 7 février 2011
Statut
Membre
Dernière intervention
1 mars 2011
8 févr. 2011 à 10:43
8 févr. 2011 à 10:43
Salut Lama
Alors tout d'abord attention a mes explications, je ne fonctionne que par mimétisme et testS :).
Ces quelques lignes permettent de selectionner la derniere ligne pleine de la colonne A (A65536).
La suite du programme permet donc de selectionner/coller sur la 1er cellule vide de la colonne a:
"variable"=selection.row+1
Cells("variable", 1). activate
'le 1 est bien sur a mettre a jour en fonction de ta colonne balayé
active.sheet.paste
Ce qui me permet de venir coller à la suite de ma base de données les informations.
Il doit surement y avoir moins lourd ou mieux ... mais cette boucle marche :)
Alors tout d'abord attention a mes explications, je ne fonctionne que par mimétisme et testS :).
Ces quelques lignes permettent de selectionner la derniere ligne pleine de la colonne A (A65536).
La suite du programme permet donc de selectionner/coller sur la 1er cellule vide de la colonne a:
"variable"=selection.row+1
Cells("variable", 1). activate
'le 1 est bien sur a mettre a jour en fonction de ta colonne balayé
active.sheet.paste
Ce qui me permet de venir coller à la suite de ma base de données les informations.
Il doit surement y avoir moins lourd ou mieux ... mais cette boucle marche :)
Iama
Messages postés
319
Date d'inscription
mercredi 13 janvier 2010
Statut
Membre
Dernière intervention
27 mars 2020
14
8 févr. 2011 à 10:53
8 févr. 2011 à 10:53
Salut ivain34
Merci pour l'explication, ce qui explique que leurs supressions ne perturbe pas le programme
A+
Iama
Merci pour l'explication, ce qui explique que leurs supressions ne perturbe pas le programme
A+
Iama