Récupération adresse pour définition plage de cellules

  • Initiateur de la discussion Initiateur de la discussion Mike
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

M

Mike

Guest
Bonjour,

J'ai dans mon fichier une cellule qui contient une formule de type :

=TEXT(TRIM("'Synthèse par pays'!"&ADDRESS(MATCH(B3;'Synthèse par pays'!$D$1:$D$1500;0)-5;1;1;😉&":"&ADDRESS(MATCH(B3;'Synthèse par pays'!$D$1:$D$1500;0)+38;16;1;😉);"@")

Celle-ci me donne donc l'adresse d'un range à imprimer en fonction du pays sélectionné :

'Synthèse par pays'!$A$89:$P$132

J'aimerais via une macro, nommé la plage définie ci-dessus et utilisé cette plage comme zone à imprimer.

Quelqu'un peut-il m'aider ???
Merci d'avance.
 
Dernière modification par un modérateur:
Re : Récupération adresse pour définition plage de cellules

Bonjour Mike,

Essaye le code suivant:

Code:
    ActiveWorkbook.Names.Add Name:="Plage", RefersToR1C1:= _
        "='Synthèse par pays'!R89C1:R132C16"
    ActiveWorkbook.Names.Add Name:="Print_Area", RefersToR1C1:="=Plage"

@+

Gael
 
Re : Récupération adresse pour définition plage de cellules

Bonjour Gael,

Merci pour la réponse mais j'aimerais intégrer la formule TEXT(TRIM("'Synthèse par pays'!"&ADDRESS(MATCH(B3;'Synthèse par pays'!$D$1:$D$1500;0)-5;1;1;&":"&ADDRESS(MATCH(B3;'Synthèse par pays'!$D$1:$D$1500;0)+38;16;1😉;"@") car celle-ci est dynamique et l'adresse varie donc en fonction du pays sélectionné, et avoir en quelque sorte :

ActiveWorkbook.Names.Add Name:="Plage", RefersToR1C1:= _
"=TEXT(TRIM("'Synthèse par pays'!"&ADDRESS(MATCH(B3;'Synthèse par pays'!$D$1:$D$1500;0)-5;1;1;&":"&ADDRESS(MATCH(B3;'Synthèse par pays'!$D$1:$D$1500;0)+38;16;1😉;"@") "
ActiveWorkbook.Names.Add Name:="Print_Area", RefersToR1C1:="=Plage"

Mais que j'essaie ce code, celà ne marche pas...
Merci d'avance.
 
Re : Récupération adresse pour définition plage de cellules

Bonsoir Mike,

Essaye alors un truc du style:

Code:
Sub test()
Dim cel As Range, pays As String
pays = Range("B3")
With ActiveSheet.Range("D1:D1500")
Set cel = .Find(pays, LookIn:=xlValues, lookat:=xlWhole)
End With
If Not cel Is Nothing Then
ActiveWorkbook.Names.Add Name:="Plage", RefersToR1C1:= _
        "='Synthèse par pays'!R" & cel.Row - 5 & "C" & cel.Column & ":R" & cel.Row + 38 & "C" & cel.Column + 16
End If
End Sub

Sous toutes réserves, je n'ai pas pu tester sans exemple plus précis.

@+

Gael
 
Re : Récupération adresse pour définition plage de cellules

Bonjour,

Y a-t-il une adresse e-mail à laquelle je puisse envoyer le fichier d'exemple car celà ne marche pas et je n'ai pas les autorités pour joindre un fichier au forum.

Merci d'avance.
 
Re : Récupération adresse pour définition plage de cellules

Bonjour Gael,

Désolé me je n'ai pas l'autorisation de sortir un fichier excel via internet. La seule manière est de t'envoyer le fichier .. Est-ce possible ??

Merci d'avance.
 
Re : Récupération adresse pour définition plage de cellules

Bonjour Mike, Gaël,

S'il n'est pas trop lourd en XLS ou en Zip, je pourrai paut-être le déposer à ta place.

Je t'envoie un message privé.

A te lire, si tu le souhaite.

Jean-Pierre
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

A
Réponses
5
Affichages
5 K
A
S
Réponses
2
Affichages
1 K
Sunfreez
S
C
Réponses
7
Affichages
1 K
C
G
Réponses
0
Affichages
2 K
girl97224
G
M
Réponses
4
Affichages
2 K
M
T
Réponses
4
Affichages
1 K
Timide
T
Retour