Macro ou formule pour récupérer du texte dans plusieurs feuilles

Le
Pierre F.
Bonjour bonsoir à toutes et à tous,

J'ai un classeur de 10 feuilles nommées Sem1 à Sem10

Chaque feuille contient env 850 lignes

dans une 11e feuille nommée Recap1, pour chacune des lignes 5 à 850, je
cherche à récupérer les contenus de la cellule AZ de la manière suivante
(son contenu est soit vide, soit du texte) :

Si la cellule AZ est vide (""), ne rien faire et passer à la feuille
suivante.

Si la cellule n'est pas vide:

concaténer: le nom de la feuille et le contenu de la cellule AZ, ceci
pour les 10 feuilles successivement.
Je souhaite donc avoir, dans la cellule AZ de la ligne i la
concaténation de toutes les cellules AZ, ligne i des 10 pages.

J'ai essayé ceci :

Sub Recup()

For i = 1 to 850

zzz=""
For k = 1 to 10
If ("AZ(i)") <> "" Then zzz = zzz & Sheets(k).Name & ": " & ("AZ(i)")
next k

Sheets("Recap1").Select
Range("AZ(i)").Select
AZ(i) = zzz

Next i
End sub

Mais ça ne marche pas du tout :-( erreur de compilation

Où est l'erreur?

Merci.

Cordialement,
Pierre F.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
JB
Le #4756051
Bonsoir,

For i = 5 To 580
temp = ""
For j = 1 To 3
s = "sem" & j
If Sheets(s).Cells(i, "az") <> "" Then
temp = temp & Sheets(s).Name & ": " & Sheets(s).Cells(i,
"az") & " - "
End If
Next j
Sheets("recap1").Cells(i, "az") = temp
Next i

JB

On 3 sep, 23:09, "Pierre F."
Bonjour... bonsoir à toutes et à tous,

J'ai un classeur de 10 feuilles nommées Sem1 à Sem10

Chaque feuille contient env 850 lignes

dans une 11e feuille nommée Recap1, pour chacune des lignes 5 à 850, je
cherche à récupérer les contenus de la cellule AZ de la manière s uivante
(son contenu est soit vide, soit du texte) :

Si la cellule AZ est vide (""), ne rien faire et passer à la feuille
suivante.

Si la cellule n'est pas vide:

concaténer: le nom de la feuille et le contenu de la cellule AZ, ceci
pour les 10 feuilles successivement.
Je souhaite donc avoir, dans la cellule AZ de la ligne i la
concaténation de toutes les cellules AZ, ligne i des 10 pages.

J'ai essayé ceci :

Sub Recup()

For i = 1 to 850

zzz=""
For k = 1 to 10
If ("AZ(i)") <> "" Then zzz = zzz & Sheets(k).Name & ": " & ("AZ(i) ")
next k

Sheets("Recap1").Select
Range("AZ(i)").Select
AZ(i) = zzz

Next i
End sub

Mais ça ne marche pas du tout... :-( erreur de compilation...

Où est l'erreur?

Merci.

Cordialement,
Pierre F.


Pierre F.
Le #4756041
For i = 5 To 580
temp = ""
For j = 1 To 3
s = "sem" & j
If Sheets(s).Cells(i, "az") <> "" Then
temp = temp & Sheets(s).Name & ": " & Sheets(s).Cells(i,
"az") & " - "
End If
Next j
Sheets("recap1").Cells(i, "az") = temp
Next i


Merci JB !!!
C'est exactement ça... et ça a fonctionné du premier coup, même après
avoir changé quelques "trucs".

Cordialement,
Pierre F.

Publicité
Poster une réponse
Anonyme