Aide pour macro

guilusf Messages postés 12 Statut Membre -  
guilusf Messages postés 12 Statut Membre -
Bonjour,
J'ai besoin d'une macro pour copier une seule fois le contenu d'une cellule se trouvant plusieurs fois dans la même page.
La rubrique "commune:" suivie d'un nom, dans la même cellule, se trouve plusieurs fois dans la page et dans chaque page de ma feuille excel.
Je voudrais extraire le contenu de la cellule mais une seule fois par page pour le copier dans une autre feuille.
Pour d'autres macros j'ai trouvé sur ce forum mais là je sèche,
merci de votre aide
A voir également:

2 réponses

kadeh Messages postés 341 Statut Membre 92
 
bon soir
de quelle plage vers quelle plage tu veux copier?
est ce que ces plages sont toujours les mêmes?
@+
0
guilusf Messages postés 12 Statut Membre
 
bonsoir,
exemple: page1 A16 j'ai: "commune: Bordeaux"
A20 "commune: Bordeaux"
A42 "commune: Bordeaux"

page2 A12 J'ai: "commune: Toulouse"
A25 "commune: toulouse"
....etc sur les autres pages, l'emplacement dans les pages change en fonction de la feuille mais se trouve toujours dans une cellule faisant partie de la colonne A.
Je voudrais sélectionner une seule fois "commune: bordeaux" et le copier dans une cellule d'une autre feuille pareil pour "commune: toulouse" et ainsi de suite pour chaque page.
A savoir que "commune:" est invariable mais que la suite est diffèrent selon la page dans une même feuille.
@+
0
kadeh Messages postés 341 Statut Membre 92 > guilusf Messages postés 12 Statut Membre
 
donc tu veux copier toute les cellules qui contiennent "commune:Bordeaux"dans une autre feuille nommé "commune:Bordeaux" et de même pour toutes les communes
tu va avoir une feuille "commune bordeau" qui contient dans toutes les cellules "commune:Bordeau"?
0
guilusf Messages postés 12 Statut Membre > kadeh Messages postés 341 Statut Membre
 
non, je ne veux récupérer qu' une fois la valeur "commune:......." puis une fois la valeur sur la page suivante et ainsi de suite pour toutes les pages de ma feuille.
cette valeur devra se retrouver dans un tableau que je crée et doit être alignée a d'autres valeurs ( qui elles ne sont que une fois par pages) récupérées sur la même page.
je l'ai fait pour toutes les valeurs présentes une seule fois par page, il suffit qu' au départ je filtre sur le mot qui m'intéresse , mais lorsque je filtre sur "commune:*******" j'ai plusieurs résultats, ce qui m'oblige au final a supprimer manuellement le surplus.
j'espère être assez clair, merci pour votre patiente
@+
0
kadeh Messages postés 341 Statut Membre 92 > guilusf Messages postés 12 Statut Membre
 
Bonjour,
cette macro permet de copier une seule fois par feuille l'expression "commune: Bordeaux"
et les coller dans la colonne A la feuille6 appartir de la 2ème cellule, bien sur tu remplace "feuille6" par le nom de la feuille ou tu va recopier les cellule "commune:Bordeaux"

Sub Macro1()
'
' Macro1 Macro


Dim x As Long, i As Integer

For i = 1 To Worksheets.Count - 1 'Parcours des feuilles
Sheets(Array(i)).Select
For x = 1 To Range("A65535").End(xlUp).Row
If Range("A" & x) <> "commune: Bordeaux" Then
GoTo erreur
Else: GoTo trouve
End If
erreur: Next x
trouve: Range("A" & x).Select
Sheets("Feuil6").Range("A65536").End(xlUp).Offset(1, 0).Value = ActiveCell.Value
Next i
cancel = True
0
guilusf Messages postés 12 Statut Membre > kadeh Messages postés 341 Statut Membre
 
lorsque je réalise cette macro j'ai le message d'erreur suivant "erreur de compilation variable non définie" avec "cancel =" grisé.
lorsque je parle de page, c'est la zone entre deux sauts de pages sur la même feuille.
donc je voudrais sélectionner à partir du premier saut de page la premiere valeur "commune: xxxxxx" puis a partir du second saut de page la premiere valeur " commune: xxxxx" et ainsi de suite pour toutes les pages de ma feuille. Les "xxxxx" varient selon la page, la position de la ligne par rapport au saut de page diffère selon la page par contre la colonne est toujours la A.
une fois sélectionné je voudrais que la premiere selection soit collée dans une cellule prédéfinie puis la deuxième selection dans la cellule du dessous et ainsi de suite.
merci encore pour ta patience, si ça te gave n'hésite pas a le dire.
@+
0
kadeh Messages postés 341 Statut Membre 92
 
bon soir
pour l'erreur dans cette macro, j'ai oublié de mettre( end sub) à la fin
donc la macro devient:

Sub Macro1()

Dim x As Long, i As Integer

For i = 1 To Worksheets.Count - 1
Sheets(Array(i)).Select
For x = 1 To Range("A65535").End(xlUp).Row
If Range("A" & x) <> "commune: Bordeaux" Then
GoTo erreur
Else: GoTo trouve
End If
erreur: Next x
trouve: Range("A" & x).Select
Sheets("Feuil6").Range("A65536").End(xlUp).Offset(1, 0).Value = ActiveCell.Value
Next i
cancel = True
End sub

<<Les "xxxxx" varient selon la page, la position de la ligne par rapport au saut de page diffère selon la page par contre la colonne est toujours la A. >>
Euh... Là je me sens une petite faiblesse d'un seul coup !
ça doit être faisable mais je n'ai pas le truc en tête.
si je trouverai la solution je te l'envoi

bonne chance
bonne soirée
0
guilusf Messages postés 12 Statut Membre
 
bonsoir,
Je ne suis pas très fort en macro, pour l'instant je fais une manip entre deux macros qui consiste après filtrage a déplacer la première valeur "commune: xxxxx" de la colonne A vers la colonne B dans laquelle il n'y a rien.
merci de ton aide, j'ai de toute manière compris d'autres trucs qui me serviront.
@+
0