J’ai cette macro d’impression qui fonctionne :
Sub Impression()
Dim Rg As Range
If Not Intersect(ActiveCell, Range("XF101")) Is Nothing Then
Set Rg = Range("XF101")
ElseIf Not Intersect(ActiveCell, Range("XF102")) Is Nothing Then
Set Rg = Range("XF102")
...
Ect
ActiveSheet.PageSetup.PrintArea = [Rg].Address
Je voudrais la modifier en lui donnant un caractère plus général car mes
différents champs d’impression sont très nombreux or je peux lister tous mes
champs d’impression en faisant Insertion Nom Coller Liste puis donner à ce
champ ainsi listé le Nom ‘’IMPRESSIONS’’ c’est à dire un champ à 2 colonnes
avec première colonne mes noms de champ et deuxième colonne les adresses des
champs
Comment définir d’une façon plus générale mon champ d’impression qui dépend
de la cellule active, par exemple si la cellule active a pour adresse
Procédure!$B$368, sachant que le champ ‘’XF102’’ est défini par
=Procédure!$A$366:$E$754
C’est le champ XF102 qui sera imprimé.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Daniel.C
Bonsoir. Ma liste de noms se trouvant en colonne A sur Feuil2 :
Sub test() Dim c As Range With Sheets("Feuil2") For Each c In .Range("A1", .Range("A65536").End(xlUp)) If Not Intersect(Range(c.Value), ActiveCell) Is Nothing Then Set Rg = Range(c.Value) Exit For End If Next c ActiveSheet.PageSetup.PrintArea = [Rg].Address End With End Sub
Cordialement. Daniel "Jean-Paul V" a écrit dans le message de news:
Bonjour à tous
J'ai cette macro d'impression qui fonctionne : Sub Impression() Dim Rg As Range If Not Intersect(ActiveCell, Range("XF101")) Is Nothing Then Set Rg = Range("XF101") ElseIf Not Intersect(ActiveCell, Range("XF102")) Is Nothing Then Set Rg = Range("XF102") ... Ect ActiveSheet.PageSetup.PrintArea = [Rg].Address
Je voudrais la modifier en lui donnant un caractère plus général car mes différents champs d'impression sont très nombreux or je peux lister tous mes champs d'impression en faisant Insertion Nom Coller Liste puis donner à ce champ ainsi listé le Nom ''IMPRESSIONS'' c'est à dire un champ à 2 colonnes avec première colonne mes noms de champ et deuxième colonne les adresses des champs
Comment définir d'une façon plus générale mon champ d'impression qui dépend de la cellule active, par exemple si la cellule active a pour adresse Procédure!$B$368, sachant que le champ ''XF102'' est défini par =Procédure!$A$366:$E$754 C'est le champ XF102 qui sera imprimé.
@+ j'espère
Bonsoir.
Ma liste de noms se trouvant en colonne A sur Feuil2 :
Sub test()
Dim c As Range
With Sheets("Feuil2")
For Each c In .Range("A1", .Range("A65536").End(xlUp))
If Not Intersect(Range(c.Value), ActiveCell) Is Nothing Then
Set Rg = Range(c.Value)
Exit For
End If
Next c
ActiveSheet.PageSetup.PrintArea = [Rg].Address
End With
End Sub
Cordialement.
Daniel
"Jean-Paul V" <JeanPaulV@discussions.microsoft.com> a écrit dans le message
de news: 7A390C75-468F-4FE9-8976-A13E52EB7231@microsoft.com...
Bonjour à tous
J'ai cette macro d'impression qui fonctionne :
Sub Impression()
Dim Rg As Range
If Not Intersect(ActiveCell, Range("XF101")) Is Nothing Then
Set Rg = Range("XF101")
ElseIf Not Intersect(ActiveCell, Range("XF102")) Is Nothing Then
Set Rg = Range("XF102")
...
Ect
ActiveSheet.PageSetup.PrintArea = [Rg].Address
Je voudrais la modifier en lui donnant un caractère plus général car mes
différents champs d'impression sont très nombreux or je peux lister tous
mes
champs d'impression en faisant Insertion Nom Coller Liste puis donner à ce
champ ainsi listé le Nom ''IMPRESSIONS'' c'est à dire un champ à 2
colonnes
avec première colonne mes noms de champ et deuxième colonne les adresses
des
champs
Comment définir d'une façon plus générale mon champ d'impression qui
dépend
de la cellule active, par exemple si la cellule active a pour adresse
Procédure!$B$368, sachant que le champ ''XF102'' est défini par
=Procédure!$A$366:$E$754
C'est le champ XF102 qui sera imprimé.
Bonsoir. Ma liste de noms se trouvant en colonne A sur Feuil2 :
Sub test() Dim c As Range With Sheets("Feuil2") For Each c In .Range("A1", .Range("A65536").End(xlUp)) If Not Intersect(Range(c.Value), ActiveCell) Is Nothing Then Set Rg = Range(c.Value) Exit For End If Next c ActiveSheet.PageSetup.PrintArea = [Rg].Address End With End Sub
Cordialement. Daniel "Jean-Paul V" a écrit dans le message de news:
Bonjour à tous
J'ai cette macro d'impression qui fonctionne : Sub Impression() Dim Rg As Range If Not Intersect(ActiveCell, Range("XF101")) Is Nothing Then Set Rg = Range("XF101") ElseIf Not Intersect(ActiveCell, Range("XF102")) Is Nothing Then Set Rg = Range("XF102") ... Ect ActiveSheet.PageSetup.PrintArea = [Rg].Address
Je voudrais la modifier en lui donnant un caractère plus général car mes différents champs d'impression sont très nombreux or je peux lister tous mes champs d'impression en faisant Insertion Nom Coller Liste puis donner à ce champ ainsi listé le Nom ''IMPRESSIONS'' c'est à dire un champ à 2 colonnes avec première colonne mes noms de champ et deuxième colonne les adresses des champs
Comment définir d'une façon plus générale mon champ d'impression qui dépend de la cellule active, par exemple si la cellule active a pour adresse Procédure!$B$368, sachant que le champ ''XF102'' est défini par =Procédure!$A$366:$E$754 C'est le champ XF102 qui sera imprimé.
@+ j'espère
Jean-Paul V
Bonjour Daniel
Ta réponse ne répond pas à ma demande, car mon champ IMPRESSIONS est dans une la Feuille 3 et ma cellule active est dans la Feuille procédure, il faut donc exploiter les renseignements d'adresses de la colonne 2 de IMPRESSIONS et c'est ça que je ne sais pas faire
Bonsoir. Ma liste de noms se trouvant en colonne A sur Feuil2 :
Sub test() Dim c As Range With Sheets("Feuil2") For Each c In .Range("A1", .Range("A65536").End(xlUp)) If Not Intersect(Range(c.Value), ActiveCell) Is Nothing Then Set Rg = Range(c.Value) Exit For End If Next c ActiveSheet.PageSetup.PrintArea = [Rg].Address End With End Sub
Cordialement. Daniel "Jean-Paul V" a écrit dans le message de news:
Bonjour à tous
J'ai cette macro d'impression qui fonctionne : Sub Impression() Dim Rg As Range If Not Intersect(ActiveCell, Range("XF101")) Is Nothing Then Set Rg = Range("XF101") ElseIf Not Intersect(ActiveCell, Range("XF102")) Is Nothing Then Set Rg = Range("XF102") ... Ect ActiveSheet.PageSetup.PrintArea = [Rg].Address
Je voudrais la modifier en lui donnant un caractère plus général car mes différents champs d'impression sont très nombreux or je peux lister tous mes champs d'impression en faisant Insertion Nom Coller Liste puis donner à ce champ ainsi listé le Nom ''IMPRESSIONS'' c'est à dire un champ à 2 colonnes avec première colonne mes noms de champ et deuxième colonne les adresses des champs
Comment définir d'une façon plus générale mon champ d'impression qui dépend de la cellule active, par exemple si la cellule active a pour adresse Procédure!$B$368, sachant que le champ ''XF102'' est défini par =Procédure!$A$366:$E$754 C'est le champ XF102 qui sera imprimé.
@+ j'espère
Bonjour Daniel
Ta réponse ne répond pas à ma demande, car mon champ IMPRESSIONS est dans
une la Feuille 3 et ma cellule active est dans la Feuille procédure, il faut
donc exploiter les renseignements d'adresses de la colonne 2 de IMPRESSIONS
et c'est ça que je ne sais pas faire
Bonsoir.
Ma liste de noms se trouvant en colonne A sur Feuil2 :
Sub test()
Dim c As Range
With Sheets("Feuil2")
For Each c In .Range("A1", .Range("A65536").End(xlUp))
If Not Intersect(Range(c.Value), ActiveCell) Is Nothing Then
Set Rg = Range(c.Value)
Exit For
End If
Next c
ActiveSheet.PageSetup.PrintArea = [Rg].Address
End With
End Sub
Cordialement.
Daniel
"Jean-Paul V" <JeanPaulV@discussions.microsoft.com> a écrit dans le message
de news: 7A390C75-468F-4FE9-8976-A13E52EB7231@microsoft.com...
Bonjour à tous
J'ai cette macro d'impression qui fonctionne :
Sub Impression()
Dim Rg As Range
If Not Intersect(ActiveCell, Range("XF101")) Is Nothing Then
Set Rg = Range("XF101")
ElseIf Not Intersect(ActiveCell, Range("XF102")) Is Nothing Then
Set Rg = Range("XF102")
...
Ect
ActiveSheet.PageSetup.PrintArea = [Rg].Address
Je voudrais la modifier en lui donnant un caractère plus général car mes
différents champs d'impression sont très nombreux or je peux lister tous
mes
champs d'impression en faisant Insertion Nom Coller Liste puis donner à ce
champ ainsi listé le Nom ''IMPRESSIONS'' c'est à dire un champ à 2
colonnes
avec première colonne mes noms de champ et deuxième colonne les adresses
des
champs
Comment définir d'une façon plus générale mon champ d'impression qui
dépend
de la cellule active, par exemple si la cellule active a pour adresse
Procédure!$B$368, sachant que le champ ''XF102'' est défini par
=Procédure!$A$366:$E$754
C'est le champ XF102 qui sera imprimé.
Ta réponse ne répond pas à ma demande, car mon champ IMPRESSIONS est dans une la Feuille 3 et ma cellule active est dans la Feuille procédure, il faut donc exploiter les renseignements d'adresses de la colonne 2 de IMPRESSIONS et c'est ça que je ne sais pas faire
Bonsoir. Ma liste de noms se trouvant en colonne A sur Feuil2 :
Sub test() Dim c As Range With Sheets("Feuil2") For Each c In .Range("A1", .Range("A65536").End(xlUp)) If Not Intersect(Range(c.Value), ActiveCell) Is Nothing Then Set Rg = Range(c.Value) Exit For End If Next c ActiveSheet.PageSetup.PrintArea = [Rg].Address End With End Sub
Cordialement. Daniel "Jean-Paul V" a écrit dans le message de news:
Bonjour à tous
J'ai cette macro d'impression qui fonctionne : Sub Impression() Dim Rg As Range If Not Intersect(ActiveCell, Range("XF101")) Is Nothing Then Set Rg = Range("XF101") ElseIf Not Intersect(ActiveCell, Range("XF102")) Is Nothing Then Set Rg = Range("XF102") ... Ect ActiveSheet.PageSetup.PrintArea = [Rg].Address
Je voudrais la modifier en lui donnant un caractère plus général car mes différents champs d'impression sont très nombreux or je peux lister tous mes champs d'impression en faisant Insertion Nom Coller Liste puis donner à ce champ ainsi listé le Nom ''IMPRESSIONS'' c'est à dire un champ à 2 colonnes avec première colonne mes noms de champ et deuxième colonne les adresses des champs
Comment définir d'une façon plus générale mon champ d'impression qui dépend de la cellule active, par exemple si la cellule active a pour adresse Procédure!$B$368, sachant que le champ ''XF102'' est défini par =Procédure!$A$366:$E$754 C'est le champ XF102 qui sera imprimé.
@+ j'espère
Daniel.C
Regarde comme ça :
Sub test() Dim c As Range, Noms As Range With Sheets("Feuil3") Set Noms = .[IMPRESSIONS].Resize(, 1) For Each c In Noms If Left(c.Offset(, 1), 12) = "=procedures!" Then If Not Intersect(Range(c.Value), ActiveCell) Is Nothing Then Set Rg = Range(c.Value) Exit For End If End If Next c ActiveSheet.PageSetup.PrintArea = [Rg].Address End With End Sub
Daniel "Jean-Paul V" a écrit dans le message de news:
Bonjour Daniel
Ta réponse ne répond pas à ma demande, car mon champ IMPRESSIONS est dans une la Feuille 3 et ma cellule active est dans la Feuille procédure, il faut donc exploiter les renseignements d'adresses de la colonne 2 de IMPRESSIONS et c'est ça que je ne sais pas faire
Bonsoir. Ma liste de noms se trouvant en colonne A sur Feuil2 :
Sub test() Dim c As Range With Sheets("Feuil2") For Each c In .Range("A1", .Range("A65536").End(xlUp)) If Not Intersect(Range(c.Value), ActiveCell) Is Nothing Then Set Rg = Range(c.Value) Exit For End If Next c ActiveSheet.PageSetup.PrintArea = [Rg].Address End With End Sub
Cordialement. Daniel "Jean-Paul V" a écrit dans le message de news:
Bonjour à tous
J'ai cette macro d'impression qui fonctionne : Sub Impression() Dim Rg As Range If Not Intersect(ActiveCell, Range("XF101")) Is Nothing Then Set Rg = Range("XF101") ElseIf Not Intersect(ActiveCell, Range("XF102")) Is Nothing Then Set Rg = Range("XF102") ... Ect ActiveSheet.PageSetup.PrintArea = [Rg].Address
Je voudrais la modifier en lui donnant un caractère plus général car mes différents champs d'impression sont très nombreux or je peux lister tous mes champs d'impression en faisant Insertion Nom Coller Liste puis donner à ce champ ainsi listé le Nom ''IMPRESSIONS'' c'est à dire un champ à 2 colonnes avec première colonne mes noms de champ et deuxième colonne les adresses des champs
Comment définir d'une façon plus générale mon champ d'impression qui dépend de la cellule active, par exemple si la cellule active a pour adresse Procédure!$B$368, sachant que le champ ''XF102'' est défini par =Procédure!$A$366:$E$754 C'est le champ XF102 qui sera imprimé.
@+ j'espère
Regarde comme ça :
Sub test()
Dim c As Range, Noms As Range
With Sheets("Feuil3")
Set Noms = .[IMPRESSIONS].Resize(, 1)
For Each c In Noms
If Left(c.Offset(, 1), 12) = "=procedures!" Then
If Not Intersect(Range(c.Value), ActiveCell) Is Nothing Then
Set Rg = Range(c.Value)
Exit For
End If
End If
Next c
ActiveSheet.PageSetup.PrintArea = [Rg].Address
End With
End Sub
Daniel
"Jean-Paul V" <JeanPaulV@discussions.microsoft.com> a écrit dans le message
de news: 295673E0-AA76-4C19-A102-A3FE17C0CF10@microsoft.com...
Bonjour Daniel
Ta réponse ne répond pas à ma demande, car mon champ IMPRESSIONS est dans
une la Feuille 3 et ma cellule active est dans la Feuille procédure, il
faut
donc exploiter les renseignements d'adresses de la colonne 2 de
IMPRESSIONS
et c'est ça que je ne sais pas faire
Bonsoir.
Ma liste de noms se trouvant en colonne A sur Feuil2 :
Sub test()
Dim c As Range
With Sheets("Feuil2")
For Each c In .Range("A1", .Range("A65536").End(xlUp))
If Not Intersect(Range(c.Value), ActiveCell) Is Nothing Then
Set Rg = Range(c.Value)
Exit For
End If
Next c
ActiveSheet.PageSetup.PrintArea = [Rg].Address
End With
End Sub
Cordialement.
Daniel
"Jean-Paul V" <JeanPaulV@discussions.microsoft.com> a écrit dans le
message
de news: 7A390C75-468F-4FE9-8976-A13E52EB7231@microsoft.com...
Bonjour à tous
J'ai cette macro d'impression qui fonctionne :
Sub Impression()
Dim Rg As Range
If Not Intersect(ActiveCell, Range("XF101")) Is Nothing Then
Set Rg = Range("XF101")
ElseIf Not Intersect(ActiveCell, Range("XF102")) Is Nothing Then
Set Rg = Range("XF102")
...
Ect
ActiveSheet.PageSetup.PrintArea = [Rg].Address
Je voudrais la modifier en lui donnant un caractère plus général car
mes
différents champs d'impression sont très nombreux or je peux lister
tous
mes
champs d'impression en faisant Insertion Nom Coller Liste puis donner à
ce
champ ainsi listé le Nom ''IMPRESSIONS'' c'est à dire un champ à 2
colonnes
avec première colonne mes noms de champ et deuxième colonne les
adresses
des
champs
Comment définir d'une façon plus générale mon champ d'impression qui
dépend
de la cellule active, par exemple si la cellule active a pour adresse
Procédure!$B$368, sachant que le champ ''XF102'' est défini par
=Procédure!$A$366:$E$754
C'est le champ XF102 qui sera imprimé.
Sub test() Dim c As Range, Noms As Range With Sheets("Feuil3") Set Noms = .[IMPRESSIONS].Resize(, 1) For Each c In Noms If Left(c.Offset(, 1), 12) = "=procedures!" Then If Not Intersect(Range(c.Value), ActiveCell) Is Nothing Then Set Rg = Range(c.Value) Exit For End If End If Next c ActiveSheet.PageSetup.PrintArea = [Rg].Address End With End Sub
Daniel "Jean-Paul V" a écrit dans le message de news:
Bonjour Daniel
Ta réponse ne répond pas à ma demande, car mon champ IMPRESSIONS est dans une la Feuille 3 et ma cellule active est dans la Feuille procédure, il faut donc exploiter les renseignements d'adresses de la colonne 2 de IMPRESSIONS et c'est ça que je ne sais pas faire
Bonsoir. Ma liste de noms se trouvant en colonne A sur Feuil2 :
Sub test() Dim c As Range With Sheets("Feuil2") For Each c In .Range("A1", .Range("A65536").End(xlUp)) If Not Intersect(Range(c.Value), ActiveCell) Is Nothing Then Set Rg = Range(c.Value) Exit For End If Next c ActiveSheet.PageSetup.PrintArea = [Rg].Address End With End Sub
Cordialement. Daniel "Jean-Paul V" a écrit dans le message de news:
Bonjour à tous
J'ai cette macro d'impression qui fonctionne : Sub Impression() Dim Rg As Range If Not Intersect(ActiveCell, Range("XF101")) Is Nothing Then Set Rg = Range("XF101") ElseIf Not Intersect(ActiveCell, Range("XF102")) Is Nothing Then Set Rg = Range("XF102") ... Ect ActiveSheet.PageSetup.PrintArea = [Rg].Address
Je voudrais la modifier en lui donnant un caractère plus général car mes différents champs d'impression sont très nombreux or je peux lister tous mes champs d'impression en faisant Insertion Nom Coller Liste puis donner à ce champ ainsi listé le Nom ''IMPRESSIONS'' c'est à dire un champ à 2 colonnes avec première colonne mes noms de champ et deuxième colonne les adresses des champs
Comment définir d'une façon plus générale mon champ d'impression qui dépend de la cellule active, par exemple si la cellule active a pour adresse Procédure!$B$368, sachant que le champ ''XF102'' est défini par =Procédure!$A$366:$E$754 C'est le champ XF102 qui sera imprimé.
@+ j'espère
Jean-Paul V
Bonjour Daniel
C'est formidable çà marche ! je vais gagner un temps fou.
Merci à +
Regarde comme ça :
Sub test() Dim c As Range, Noms As Range With Sheets("Feuil3") Set Noms = .[IMPRESSIONS].Resize(, 1) For Each c In Noms If Left(c.Offset(, 1), 12) = "=procedures!" Then If Not Intersect(Range(c.Value), ActiveCell) Is Nothing Then Set Rg = Range(c.Value) Exit For End If End If Next c ActiveSheet.PageSetup.PrintArea = [Rg].Address End With End Sub
Daniel "Jean-Paul V" a écrit dans le message de news:
Bonjour Daniel
Ta réponse ne répond pas à ma demande, car mon champ IMPRESSIONS est dans une la Feuille 3 et ma cellule active est dans la Feuille procédure, il faut donc exploiter les renseignements d'adresses de la colonne 2 de IMPRESSIONS et c'est ça que je ne sais pas faire
Bonsoir. Ma liste de noms se trouvant en colonne A sur Feuil2 :
Sub test() Dim c As Range With Sheets("Feuil2") For Each c In .Range("A1", .Range("A65536").End(xlUp)) If Not Intersect(Range(c.Value), ActiveCell) Is Nothing Then Set Rg = Range(c.Value) Exit For End If Next c ActiveSheet.PageSetup.PrintArea = [Rg].Address End With End Sub
Cordialement. Daniel "Jean-Paul V" a écrit dans le message de news:
Bonjour à tous
J'ai cette macro d'impression qui fonctionne : Sub Impression() Dim Rg As Range If Not Intersect(ActiveCell, Range("XF101")) Is Nothing Then Set Rg = Range("XF101") ElseIf Not Intersect(ActiveCell, Range("XF102")) Is Nothing Then Set Rg = Range("XF102") ... Ect ActiveSheet.PageSetup.PrintArea = [Rg].Address
Je voudrais la modifier en lui donnant un caractère plus général car mes différents champs d'impression sont très nombreux or je peux lister tous mes champs d'impression en faisant Insertion Nom Coller Liste puis donner à ce champ ainsi listé le Nom ''IMPRESSIONS'' c'est à dire un champ à 2 colonnes avec première colonne mes noms de champ et deuxième colonne les adresses des champs
Comment définir d'une façon plus générale mon champ d'impression qui dépend de la cellule active, par exemple si la cellule active a pour adresse Procédure!$B$368, sachant que le champ ''XF102'' est défini par =Procédure!$A$366:$E$754 C'est le champ XF102 qui sera imprimé.
@+ j'espère
Bonjour Daniel
C'est formidable çà marche ! je vais gagner un temps fou.
Merci à +
Regarde comme ça :
Sub test()
Dim c As Range, Noms As Range
With Sheets("Feuil3")
Set Noms = .[IMPRESSIONS].Resize(, 1)
For Each c In Noms
If Left(c.Offset(, 1), 12) = "=procedures!" Then
If Not Intersect(Range(c.Value), ActiveCell) Is Nothing Then
Set Rg = Range(c.Value)
Exit For
End If
End If
Next c
ActiveSheet.PageSetup.PrintArea = [Rg].Address
End With
End Sub
Daniel
"Jean-Paul V" <JeanPaulV@discussions.microsoft.com> a écrit dans le message
de news: 295673E0-AA76-4C19-A102-A3FE17C0CF10@microsoft.com...
Bonjour Daniel
Ta réponse ne répond pas à ma demande, car mon champ IMPRESSIONS est dans
une la Feuille 3 et ma cellule active est dans la Feuille procédure, il
faut
donc exploiter les renseignements d'adresses de la colonne 2 de
IMPRESSIONS
et c'est ça que je ne sais pas faire
Bonsoir.
Ma liste de noms se trouvant en colonne A sur Feuil2 :
Sub test()
Dim c As Range
With Sheets("Feuil2")
For Each c In .Range("A1", .Range("A65536").End(xlUp))
If Not Intersect(Range(c.Value), ActiveCell) Is Nothing Then
Set Rg = Range(c.Value)
Exit For
End If
Next c
ActiveSheet.PageSetup.PrintArea = [Rg].Address
End With
End Sub
Cordialement.
Daniel
"Jean-Paul V" <JeanPaulV@discussions.microsoft.com> a écrit dans le
message
de news: 7A390C75-468F-4FE9-8976-A13E52EB7231@microsoft.com...
Bonjour à tous
J'ai cette macro d'impression qui fonctionne :
Sub Impression()
Dim Rg As Range
If Not Intersect(ActiveCell, Range("XF101")) Is Nothing Then
Set Rg = Range("XF101")
ElseIf Not Intersect(ActiveCell, Range("XF102")) Is Nothing Then
Set Rg = Range("XF102")
...
Ect
ActiveSheet.PageSetup.PrintArea = [Rg].Address
Je voudrais la modifier en lui donnant un caractère plus général car
mes
différents champs d'impression sont très nombreux or je peux lister
tous
mes
champs d'impression en faisant Insertion Nom Coller Liste puis donner à
ce
champ ainsi listé le Nom ''IMPRESSIONS'' c'est à dire un champ à 2
colonnes
avec première colonne mes noms de champ et deuxième colonne les
adresses
des
champs
Comment définir d'une façon plus générale mon champ d'impression qui
dépend
de la cellule active, par exemple si la cellule active a pour adresse
Procédure!$B$368, sachant que le champ ''XF102'' est défini par
=Procédure!$A$366:$E$754
C'est le champ XF102 qui sera imprimé.
C'est formidable çà marche ! je vais gagner un temps fou.
Merci à +
Regarde comme ça :
Sub test() Dim c As Range, Noms As Range With Sheets("Feuil3") Set Noms = .[IMPRESSIONS].Resize(, 1) For Each c In Noms If Left(c.Offset(, 1), 12) = "=procedures!" Then If Not Intersect(Range(c.Value), ActiveCell) Is Nothing Then Set Rg = Range(c.Value) Exit For End If End If Next c ActiveSheet.PageSetup.PrintArea = [Rg].Address End With End Sub
Daniel "Jean-Paul V" a écrit dans le message de news:
Bonjour Daniel
Ta réponse ne répond pas à ma demande, car mon champ IMPRESSIONS est dans une la Feuille 3 et ma cellule active est dans la Feuille procédure, il faut donc exploiter les renseignements d'adresses de la colonne 2 de IMPRESSIONS et c'est ça que je ne sais pas faire
Bonsoir. Ma liste de noms se trouvant en colonne A sur Feuil2 :
Sub test() Dim c As Range With Sheets("Feuil2") For Each c In .Range("A1", .Range("A65536").End(xlUp)) If Not Intersect(Range(c.Value), ActiveCell) Is Nothing Then Set Rg = Range(c.Value) Exit For End If Next c ActiveSheet.PageSetup.PrintArea = [Rg].Address End With End Sub
Cordialement. Daniel "Jean-Paul V" a écrit dans le message de news:
Bonjour à tous
J'ai cette macro d'impression qui fonctionne : Sub Impression() Dim Rg As Range If Not Intersect(ActiveCell, Range("XF101")) Is Nothing Then Set Rg = Range("XF101") ElseIf Not Intersect(ActiveCell, Range("XF102")) Is Nothing Then Set Rg = Range("XF102") ... Ect ActiveSheet.PageSetup.PrintArea = [Rg].Address
Je voudrais la modifier en lui donnant un caractère plus général car mes différents champs d'impression sont très nombreux or je peux lister tous mes champs d'impression en faisant Insertion Nom Coller Liste puis donner à ce champ ainsi listé le Nom ''IMPRESSIONS'' c'est à dire un champ à 2 colonnes avec première colonne mes noms de champ et deuxième colonne les adresses des champs
Comment définir d'une façon plus générale mon champ d'impression qui dépend de la cellule active, par exemple si la cellule active a pour adresse Procédure!$B$368, sachant que le champ ''XF102'' est défini par =Procédure!$A$366:$E$754 C'est le champ XF102 qui sera imprimé.