Selectionner une cellule par rapport à son contenu

Résolu
Dyarguy Messages postés 31 Date d'inscription   Statut Membre Dernière intervention   -  
Dyarguy Messages postés 31 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Dans un document Excel, j'ai réussi à copier une plage de cellule (une colonne plus précisément) dans la feuille 1, que je souhaiterait coller dans la feuille 2 suivant ces conditions:
- sélectionner la ligne 3
- trouver la cellule qui contient le numéro "8" (par exemple)
- coller mes cellules à la ligne du dessous

Comme le montre l'exemple ci-dessous:
https://www.cjoint.com/c/EDkqYVJIkkv

Tous cela en VBA car ce n'est qu'une petite partie de mon fichier. Que je ne peut vous donnée car il est trop volumineux.

Merci d'avance de votre aide.
Dylan

3 réponses

Gyrus Messages postés 3334 Date d'inscription   Statut Membre Dernière intervention   526
 
Bonjour,

Voici une proposition à tester
https://www.cjoint.com/c/EDnoFQhr5C0

A+
1
Dyarguy Messages postés 31 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,

Ton code marche super bien.

Je te remercie, c'est sympas d'avoir des réponses aussi vite et aussi bien !!!

Bonne fin de journée
0
Gyrus Messages postés 3334 Date d'inscription   Statut Membre Dernière intervention   526
 
Bonjour,

Tout cela n'est pas très clair.
- sélectionner la ligne 3 de quelle feuille ?
- trouver la cellule qui contient le numéro "8". Doit-on supposer que ce numéro est à rechercher sur la ligne 2 de la Feuille2.
- Qu'est-ce qui permet de faire la relation entre la colonne G / Feuille 1 et la colonne 8 / Feuille2 ?

A+
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,

que je souhaiterait coller dans la feuille 2 suivant ces conditions:
- sélectionner la ligne 3
- trouver la cellule qui contient le numéro "8" (par exemple)

code pour trouver la colonne:
Sub test()
    'numero de colonne puisque debut colonne A (1)
    x = WorksheetFunction.Match(8, Worksheets("feuille2").Range("A2:BA2"), 0)
    'cherche le nom (la lettre) de la colonne
    Lettre_col = Split(Cells(1, x).Address, "$")(1)    
End Sub


pour coller les cellules, tout depend de comment vous "selectionnez" la plage de cellules a copier
0
Dyarguy Messages postés 31 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,

Je ne vois pas d'autre façon de vous expliquer mon problème, autrement que de vous exposer mon fichier (sans mes codes de macro car trop lourd).

Le voici ci-dessous:
https://www.cjoint.com/c/EDnngGHIGDt

Ce document a pour but de connaitre la charge de travail par rapport à des semaines. Chaque données représente une tâche.
La première page "TPPC" est la source de données, où l'ont peut choisir grâce à la liste déroulante, une semaine précisément pour voir sa charge.
La seconde page "GRAPHE BJ" est le planning en détaille. Son échelle est à la semaine.

Voici la macro que j'ai réalisés, que je souhaiterais modifier afin que les semaines puisse être changer de colonne sans perdre leur données. Je souhaiterais que les données ne soit pas lié a une colonne dans mon code, mais à une semaine.


Sub MacroS24()
'
' MacroS24 Macro
'

'
' Selectionner la feuille "GRAPHE BJ"
Sheets("GRAPHE BJ").Select
' Selectionner dans la colonne N et effacer son contenu
Range("N3:N33").Select
Application.CutCopyMode = False
Selection.ClearContents
' Selectionner la feuille "TPPC"
Sheets("TPPC").Select
' Choisir dans la liste déroulante de ne voir que les données de la semaine 24
ActiveSheet.Range("$A$1:$J$210").AutoFilter Field:=8, Criteria1:="24"
' Selectionner les données de la semaines 24 et les copiés
Columns("I:I").Select
Selection.Copy
Application.CutCopyMode = False
Selection.Copy
' Selectionner la feuille "GRAPHE BJ"
Sheets("GRAPHE BJ").Select
' Coller les données à la cellule "N3"
Range("N3").Select
ActiveSheet.Paste
Range("N3").Select
Application.CutCopyMode = False
Selection.ClearContents
' Selectionner la feuille "TPPC"
Sheets("TPPC").Select
' Selectionner dans la liste déroulante l'ensemble des semaines
ActiveSheet.Range("$A$1:$J$210").AutoFilter Field:=8

End Sub


Ce code n'est réaliser seulement pour la semaine 24, il y à pour chaque semaine un code quasiment identique à celui-ci (c'est pourquoi il est très lourd).

Ma question est plus détailler dans le ci-joint (seconde feuille).

Merci d'avance, je reste à votre disposition si vous ne comprenez pas, car se n'est pas évident à expliquer pour ma part donc forcément compliquer à comprendre.

Bonne journée
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   > Dyarguy Messages postés 31 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,
j'ai recupere votre fichier. C'est un filtre que vous faites, pas une liste deroulante!!!!

Je regarde la chose

A+
0
Dyarguy Messages postés 31 Date d'inscription   Statut Membre Dernière intervention   > f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour

Oui désolé!!!

Merci
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   > Dyarguy Messages postés 31 Date d'inscription   Statut Membre Dernière intervention  
 
Re,

fichier modifie avec un bouton pour lancer la macro (choix de la semaine) car je demande precision pour, en effet, lancer cette macro

https://www.cjoint.com/c/EDnqHquWt3V

A+
0
Dyarguy Messages postés 31 Date d'inscription   Statut Membre Dernière intervention   > f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention  
 
Re,

Merci pour ta macro elle fonctionne aussi et me convient.

A+
0