Recherche de données marco
Résolu
Rachel
-
Rachel -
Rachel -
Bonjour,
Dans une feuille excel, je souhaite sélectionner des données qui sont composées toujours du même nombre de ligne (9) mais pas située toujours au même endroit (début des données = ligne variable)
Dans l'exemple du fichier en lien, il s'agit des lignes 502 à 510 et le repère est la ligne qui contient la cellule nommée "Avg Result" => https://mon-partage.fr/f/iz3ZSnef/
Voici ce que j'avais imaginé mais qui ne fonctionne pas :
Dim LigneD As Long, ligneF As Long
LigneD = ActiveSheet.Columns(2).Find("Avg Result", , , , xlByColumns, xlNext).Row
Range("A" & LigneD & ":AA" & LigneD).Select
ligneF = selection.Offset(8, 0).Select
Range("A" & LigneD & ":AA" & ligneF).Select
selection.Copy
Merci d'avance pour votre aide.
Rachel
Dans une feuille excel, je souhaite sélectionner des données qui sont composées toujours du même nombre de ligne (9) mais pas située toujours au même endroit (début des données = ligne variable)
Dans l'exemple du fichier en lien, il s'agit des lignes 502 à 510 et le repère est la ligne qui contient la cellule nommée "Avg Result" => https://mon-partage.fr/f/iz3ZSnef/
Voici ce que j'avais imaginé mais qui ne fonctionne pas :
Dim LigneD As Long, ligneF As Long
LigneD = ActiveSheet.Columns(2).Find("Avg Result", , , , xlByColumns, xlNext).Row
Range("A" & LigneD & ":AA" & LigneD).Select
ligneF = selection.Offset(8, 0).Select
Range("A" & LigneD & ":AA" & ligneF).Select
selection.Copy
Merci d'avance pour votre aide.
Rachel
A voir également:
- Recherche de données marco
- Fuite données maif - Guide
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Supprimer les données de navigation - Guide
- Trier des données excel - Guide
- Recherche image - Guide
1 réponse
Bonjour,
Simplement :
Simplement :
Sub test()
Dim src As Range 'source
Dim dst As Range 'destination
Set dst = ActiveSheet.Range("A6000") ' à adapter
Set src = ActiveSheet.Columns(2).Find("Avg Result", , xlFormulas, xlWhole)
If Not scr Is Nothing Then
Set src = src.EntireRow.Resize(8)
src.Copy dst
End If
End Sub
« Dans une feuille excel, je souhaite sélectionner des données... »
Sélectionner n'est pas une finalité, en général on souhaite faire quelque chose après : avec VBA il faut impérativement éviter de sélectionner si ce n'est pas la finalité !!!
Merci pour cette réponse.
Effectivement, mon libellé n'est pas complet, c'était par soucis de clarté qui n'a apparemment pas eu l'effet escompté, désolée. Inutile de préciser que mes connaissances en VBA sont limitées.
Je souhaite donc copier ces données pour les coller dans une autre feuille du même fichier nommée "Validation de données", 2 lignes en dessous d'une cellule contenant le texte "Standard : Delta calculé-attendu (Avg Result)", cellule qui n'est pas toujours à la même ligne mais toujours dans la colonne A. Voilà pour l'expression complète de mon besoin. Voici le fichir mis à jour dans ce sens : https://mon-partage.fr/f/ZYX2VsUU/.
Je ne parviens pas à faire fonctionner la solution proposée car j'ai l'erreur "Erreur d'exécution "424" : Objet requis" sur la ligne "If Not scr Is Nothing Then". Une idée de ce qui bloque?
Merci d'avance, Rachel
Option Explicit Sub test() Const s$ = "Avg Result" Const d$ = "Standard : Delta calculé-attendu (Avg Result)" Dim src As Range 'source Dim dst As Range 'destination Set dst = Worksheets("Validation série").Columns(1).Find(d, , xlFormulas, xlWhole) Set src = Worksheets("Importation").Columns(2).Find(s, , xlFormulas, xlWhole) If Not src Is Nothing And Not dst Is Nothing Then Set src = src.EntireRow.Resize(8) src.Copy dst.Offset(1) End If End Sub