Bonjour,
Je balaye une plage de cellules de U1 à Ux, cellules contenant des noms
d'onglets (Ass. Modules, Ass.baio, Ass.Cont ...)
Je souhaite concaténer ces valeurs dans une variable (NomFeuille) pour
l'exploiter ensuite avec la commande :
Sheets(Array(NomFeuille)).Select
au lieu de
Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select
car le nombre de noms de feuilles varie.
Lorsque j'écris le contenu de ma variable NomFeuille avec Debug.Print, je
lis
"Ass. Modules","Ass.baio","Ass.Cont"
et cela semble correct mais ça ne passe pas avec
Sheets(Array(NomFeuille)).Select
Sub SelectionMultiOnglets()
Dim NomFeuille As String
Dim C As Variant
Sheets("Données").Select
Range("U1:U3").Select
' U1 = Ass. Modules
' U2 =Ass.baio
' U3=Ass.Cont
For Each C In Selection
NomFeuille = IIf(NomFeuille = "", """" & C.Value & """", NomFeuille
& "," & """" & C.Value & """")
Next C
Debug.Print NomFeuille
' Je souhaite en balayant ma plage U1:U3 (qui peut varier jusqu'à Ux)
Sheets(Array(NomFeuille)).Select ' ça ne ramène pas les doubles
quotes)
' Résultat souhaité
'Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select
End Sub
Comme solution de secours, je pourrais dire sélectionne de la feuille 3 (1
et 2 ne sont pas concernés) à la dernière feuille mais là aussi je sèche
D'avance merci
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
MichDenis
Admettons que tes noms de feuilles soient en A1:A3 '-------------------------- Sub test() Dim Toto() Toto = Application.Transpose(Range("A1:A3").Value) Sheets(Toto).Select End Sub '--------------------------
si tes données sont en ligne comme ceci : '-------------------------- Sub test() Dim Toto() Toto = Application.Transpose(Application.Transpose(Range("A1:C1").Value)) Sheets(Toto).Select End Sub '--------------------------
"RENAUD Eric" <erenaud(retirerceci)@fr.fm> a écrit dans le message de news:
Bonjour, Je balaye une plage de cellules de U1 à Ux, cellules contenant des noms d'onglets (Ass. Modules, Ass.baio, Ass.Cont ...) Je souhaite concaténer ces valeurs dans une variable (NomFeuille) pour l'exploiter ensuite avec la commande :
Sheets(Array(NomFeuille)).Select au lieu de Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select car le nombre de noms de feuilles varie.
Lorsque j'écris le contenu de ma variable NomFeuille avec Debug.Print, je lis
"Ass. Modules","Ass.baio","Ass.Cont" et cela semble correct mais ça ne passe pas avec Sheets(Array(NomFeuille)).Select
Sub SelectionMultiOnglets() Dim NomFeuille As String Dim C As Variant Sheets("Données").Select Range("U1:U3").Select ' U1 = Ass. Modules ' U2 =Ass.baio ' U3=Ass.Cont For Each C In Selection NomFeuille = IIf(NomFeuille = "", """" & C.Value & """", NomFeuille & "," & """" & C.Value & """") Next C Debug.Print NomFeuille ' Je souhaite en balayant ma plage U1:U3 (qui peut varier jusqu'à Ux) Sheets(Array(NomFeuille)).Select ' ça ne ramène pas les doubles quotes) ' Résultat souhaité 'Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select End Sub
Comme solution de secours, je pourrais dire sélectionne de la feuille 3 (1 et 2 ne sont pas concernés) à la dernière feuille mais là aussi je sèche D'avance merci
Admettons que tes noms de feuilles soient en A1:A3
'--------------------------
Sub test()
Dim Toto()
Toto = Application.Transpose(Range("A1:A3").Value)
Sheets(Toto).Select
End Sub
'--------------------------
si tes données sont en ligne comme ceci :
'--------------------------
Sub test()
Dim Toto()
Toto = Application.Transpose(Application.Transpose(Range("A1:C1").Value))
Sheets(Toto).Select
End Sub
'--------------------------
"RENAUD Eric" <erenaud(retirerceci)@fr.fm> a écrit dans le message de news:
umoYKzbMIHA.5040@TK2MSFTNGP04.phx.gbl...
Bonjour,
Je balaye une plage de cellules de U1 à Ux, cellules contenant des noms
d'onglets (Ass. Modules, Ass.baio, Ass.Cont ...)
Je souhaite concaténer ces valeurs dans une variable (NomFeuille) pour
l'exploiter ensuite avec la commande :
Sheets(Array(NomFeuille)).Select
au lieu de
Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select
car le nombre de noms de feuilles varie.
Lorsque j'écris le contenu de ma variable NomFeuille avec Debug.Print, je
lis
"Ass. Modules","Ass.baio","Ass.Cont"
et cela semble correct mais ça ne passe pas avec
Sheets(Array(NomFeuille)).Select
Sub SelectionMultiOnglets()
Dim NomFeuille As String
Dim C As Variant
Sheets("Données").Select
Range("U1:U3").Select
' U1 = Ass. Modules
' U2 =Ass.baio
' U3=Ass.Cont
For Each C In Selection
NomFeuille = IIf(NomFeuille = "", """" & C.Value & """", NomFeuille
& "," & """" & C.Value & """")
Next C
Debug.Print NomFeuille
' Je souhaite en balayant ma plage U1:U3 (qui peut varier jusqu'à Ux)
Sheets(Array(NomFeuille)).Select ' ça ne ramène pas les doubles
quotes)
' Résultat souhaité
'Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select
End Sub
Comme solution de secours, je pourrais dire sélectionne de la feuille 3 (1
et 2 ne sont pas concernés) à la dernière feuille mais là aussi je sèche
D'avance merci
Admettons que tes noms de feuilles soient en A1:A3 '-------------------------- Sub test() Dim Toto() Toto = Application.Transpose(Range("A1:A3").Value) Sheets(Toto).Select End Sub '--------------------------
si tes données sont en ligne comme ceci : '-------------------------- Sub test() Dim Toto() Toto = Application.Transpose(Application.Transpose(Range("A1:C1").Value)) Sheets(Toto).Select End Sub '--------------------------
"RENAUD Eric" <erenaud(retirerceci)@fr.fm> a écrit dans le message de news:
Bonjour, Je balaye une plage de cellules de U1 à Ux, cellules contenant des noms d'onglets (Ass. Modules, Ass.baio, Ass.Cont ...) Je souhaite concaténer ces valeurs dans une variable (NomFeuille) pour l'exploiter ensuite avec la commande :
Sheets(Array(NomFeuille)).Select au lieu de Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select car le nombre de noms de feuilles varie.
Lorsque j'écris le contenu de ma variable NomFeuille avec Debug.Print, je lis
"Ass. Modules","Ass.baio","Ass.Cont" et cela semble correct mais ça ne passe pas avec Sheets(Array(NomFeuille)).Select
Sub SelectionMultiOnglets() Dim NomFeuille As String Dim C As Variant Sheets("Données").Select Range("U1:U3").Select ' U1 = Ass. Modules ' U2 =Ass.baio ' U3=Ass.Cont For Each C In Selection NomFeuille = IIf(NomFeuille = "", """" & C.Value & """", NomFeuille & "," & """" & C.Value & """") Next C Debug.Print NomFeuille ' Je souhaite en balayant ma plage U1:U3 (qui peut varier jusqu'à Ux) Sheets(Array(NomFeuille)).Select ' ça ne ramène pas les doubles quotes) ' Résultat souhaité 'Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select End Sub
Comme solution de secours, je pourrais dire sélectionne de la feuille 3 (1 et 2 ne sont pas concernés) à la dernière feuille mais là aussi je sèche D'avance merci
Tatanka
Salut Éric,
Si chaque cellule de la plage U1:Ux contient un nom de feuille valide et s'il n'y a absolument rien sous Ux, alors esaie ceci :
Sub Sélection_Feuilles() Dim Feuilles() Dim plage As Range Set plage = Sheets("Données").Range([u1], [u65000].End(xlUp)) Feuilles = Application.Transpose(plage.Value) Sheets(Feuilles).Select End Sub
Serge
"RENAUD Eric" <erenaud(retirerceci)@fr.fm> a écrit dans le message de news:
Bonjour, Je balaye une plage de cellules de U1 à Ux, cellules contenant des noms d'onglets (Ass. Modules, Ass.baio, Ass.Cont ...) Je souhaite concaténer ces valeurs dans une variable (NomFeuille) pour l'exploiter ensuite avec la commande :
Sheets(Array(NomFeuille)).Select au lieu de Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select car le nombre de noms de feuilles varie.
Lorsque j'écris le contenu de ma variable NomFeuille avec Debug.Print, je lis
"Ass. Modules","Ass.baio","Ass.Cont" et cela semble correct mais ça ne passe pas avec Sheets(Array(NomFeuille)).Select
Sub SelectionMultiOnglets() Dim NomFeuille As String Dim C As Variant Sheets("Données").Select Range("U1:U3").Select ' U1 = Ass. Modules ' U2 =Ass.baio ' U3=Ass.Cont For Each C In Selection NomFeuille = IIf(NomFeuille = "", """" & C.Value & """", NomFeuille & "," & """" & C.Value & """") Next C Debug.Print NomFeuille ' Je souhaite en balayant ma plage U1:U3 (qui peut varier jusqu'à Ux) Sheets(Array(NomFeuille)).Select ' ça ne ramène pas les doubles quotes) ' Résultat souhaité 'Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select End Sub
Comme solution de secours, je pourrais dire sélectionne de la feuille 3 (1 et 2 ne sont pas concernés) à la dernière feuille mais là aussi je sèche D'avance merci
Salut Éric,
Si chaque cellule de la plage U1:Ux contient un nom
de feuille valide et s'il n'y a absolument rien sous Ux,
alors esaie ceci :
Sub Sélection_Feuilles()
Dim Feuilles()
Dim plage As Range
Set plage = Sheets("Données").Range([u1], [u65000].End(xlUp))
Feuilles = Application.Transpose(plage.Value)
Sheets(Feuilles).Select
End Sub
Serge
"RENAUD Eric" <erenaud(retirerceci)@fr.fm> a écrit dans le message de news: umoYKzbMIHA.5040@TK2MSFTNGP04.phx.gbl...
Bonjour,
Je balaye une plage de cellules de U1 à Ux, cellules contenant des noms d'onglets (Ass. Modules, Ass.baio, Ass.Cont ...)
Je souhaite concaténer ces valeurs dans une variable (NomFeuille) pour l'exploiter ensuite avec la commande :
Sheets(Array(NomFeuille)).Select
au lieu de
Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select
car le nombre de noms de feuilles varie.
Lorsque j'écris le contenu de ma variable NomFeuille avec Debug.Print, je lis
"Ass. Modules","Ass.baio","Ass.Cont"
et cela semble correct mais ça ne passe pas avec
Sheets(Array(NomFeuille)).Select
Sub SelectionMultiOnglets()
Dim NomFeuille As String
Dim C As Variant
Sheets("Données").Select
Range("U1:U3").Select
' U1 = Ass. Modules
' U2 =Ass.baio
' U3=Ass.Cont
For Each C In Selection
NomFeuille = IIf(NomFeuille = "", """" & C.Value & """", NomFeuille & "," & """" & C.Value & """")
Next C
Debug.Print NomFeuille
' Je souhaite en balayant ma plage U1:U3 (qui peut varier jusqu'à Ux)
Sheets(Array(NomFeuille)).Select ' ça ne ramène pas les doubles quotes)
' Résultat souhaité
'Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select
End Sub
Comme solution de secours, je pourrais dire sélectionne de la feuille 3 (1 et 2 ne sont pas concernés) à la dernière feuille mais
là aussi je sèche
D'avance merci
Si chaque cellule de la plage U1:Ux contient un nom de feuille valide et s'il n'y a absolument rien sous Ux, alors esaie ceci :
Sub Sélection_Feuilles() Dim Feuilles() Dim plage As Range Set plage = Sheets("Données").Range([u1], [u65000].End(xlUp)) Feuilles = Application.Transpose(plage.Value) Sheets(Feuilles).Select End Sub
Serge
"RENAUD Eric" <erenaud(retirerceci)@fr.fm> a écrit dans le message de news:
Bonjour, Je balaye une plage de cellules de U1 à Ux, cellules contenant des noms d'onglets (Ass. Modules, Ass.baio, Ass.Cont ...) Je souhaite concaténer ces valeurs dans une variable (NomFeuille) pour l'exploiter ensuite avec la commande :
Sheets(Array(NomFeuille)).Select au lieu de Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select car le nombre de noms de feuilles varie.
Lorsque j'écris le contenu de ma variable NomFeuille avec Debug.Print, je lis
"Ass. Modules","Ass.baio","Ass.Cont" et cela semble correct mais ça ne passe pas avec Sheets(Array(NomFeuille)).Select
Sub SelectionMultiOnglets() Dim NomFeuille As String Dim C As Variant Sheets("Données").Select Range("U1:U3").Select ' U1 = Ass. Modules ' U2 =Ass.baio ' U3=Ass.Cont For Each C In Selection NomFeuille = IIf(NomFeuille = "", """" & C.Value & """", NomFeuille & "," & """" & C.Value & """") Next C Debug.Print NomFeuille ' Je souhaite en balayant ma plage U1:U3 (qui peut varier jusqu'à Ux) Sheets(Array(NomFeuille)).Select ' ça ne ramène pas les doubles quotes) ' Résultat souhaité 'Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select End Sub
Comme solution de secours, je pourrais dire sélectionne de la feuille 3 (1 et 2 ne sont pas concernés) à la dernière feuille mais là aussi je sèche D'avance merci
RENAUD Eric
Bonjour, Merci à tous les deux, c'est parfait
"RENAUD Eric" <erenaud(retirerceci)@fr.fm> a écrit dans le message de news:
Bonjour, Je balaye une plage de cellules de U1 à Ux, cellules contenant des noms d'onglets (Ass. Modules, Ass.baio, Ass.Cont ...) Je souhaite concaténer ces valeurs dans une variable (NomFeuille) pour l'exploiter ensuite avec la commande :
Sheets(Array(NomFeuille)).Select au lieu de Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select car le nombre de noms de feuilles varie.
Lorsque j'écris le contenu de ma variable NomFeuille avec Debug.Print, je lis
"Ass. Modules","Ass.baio","Ass.Cont" et cela semble correct mais ça ne passe pas avec Sheets(Array(NomFeuille)).Select
Sub SelectionMultiOnglets() Dim NomFeuille As String Dim C As Variant Sheets("Données").Select Range("U1:U3").Select ' U1 = Ass. Modules ' U2 =Ass.baio ' U3=Ass.Cont For Each C In Selection NomFeuille = IIf(NomFeuille = "", """" & C.Value & """", NomFeuille & "," & """" & C.Value & """") Next C Debug.Print NomFeuille ' Je souhaite en balayant ma plage U1:U3 (qui peut varier jusqu'à Ux) Sheets(Array(NomFeuille)).Select ' ça ne ramène pas les doubles quotes) ' Résultat souhaité 'Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select End Sub
Comme solution de secours, je pourrais dire sélectionne de la feuille 3 (1 et 2 ne sont pas concernés) à la dernière feuille mais là aussi je sèche D'avance merci
Bonjour,
Merci à tous les deux, c'est parfait
"RENAUD Eric" <erenaud(retirerceci)@fr.fm> a écrit dans le message de news:
umoYKzbMIHA.5040@TK2MSFTNGP04.phx.gbl...
Bonjour,
Je balaye une plage de cellules de U1 à Ux, cellules contenant des noms
d'onglets (Ass. Modules, Ass.baio, Ass.Cont ...)
Je souhaite concaténer ces valeurs dans une variable (NomFeuille) pour
l'exploiter ensuite avec la commande :
Sheets(Array(NomFeuille)).Select
au lieu de
Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select
car le nombre de noms de feuilles varie.
Lorsque j'écris le contenu de ma variable NomFeuille avec Debug.Print, je
lis
"Ass. Modules","Ass.baio","Ass.Cont"
et cela semble correct mais ça ne passe pas avec
Sheets(Array(NomFeuille)).Select
Sub SelectionMultiOnglets()
Dim NomFeuille As String
Dim C As Variant
Sheets("Données").Select
Range("U1:U3").Select
' U1 = Ass. Modules
' U2 =Ass.baio
' U3=Ass.Cont
For Each C In Selection
NomFeuille = IIf(NomFeuille = "", """" & C.Value & """", NomFeuille
& "," & """" & C.Value & """")
Next C
Debug.Print NomFeuille
' Je souhaite en balayant ma plage U1:U3 (qui peut varier jusqu'à Ux)
Sheets(Array(NomFeuille)).Select ' ça ne ramène pas les doubles
quotes)
' Résultat souhaité
'Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select
End Sub
Comme solution de secours, je pourrais dire sélectionne de la feuille 3 (1
et 2 ne sont pas concernés) à la dernière feuille mais là aussi je sèche
D'avance merci
"RENAUD Eric" <erenaud(retirerceci)@fr.fm> a écrit dans le message de news:
Bonjour, Je balaye une plage de cellules de U1 à Ux, cellules contenant des noms d'onglets (Ass. Modules, Ass.baio, Ass.Cont ...) Je souhaite concaténer ces valeurs dans une variable (NomFeuille) pour l'exploiter ensuite avec la commande :
Sheets(Array(NomFeuille)).Select au lieu de Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select car le nombre de noms de feuilles varie.
Lorsque j'écris le contenu de ma variable NomFeuille avec Debug.Print, je lis
"Ass. Modules","Ass.baio","Ass.Cont" et cela semble correct mais ça ne passe pas avec Sheets(Array(NomFeuille)).Select
Sub SelectionMultiOnglets() Dim NomFeuille As String Dim C As Variant Sheets("Données").Select Range("U1:U3").Select ' U1 = Ass. Modules ' U2 =Ass.baio ' U3=Ass.Cont For Each C In Selection NomFeuille = IIf(NomFeuille = "", """" & C.Value & """", NomFeuille & "," & """" & C.Value & """") Next C Debug.Print NomFeuille ' Je souhaite en balayant ma plage U1:U3 (qui peut varier jusqu'à Ux) Sheets(Array(NomFeuille)).Select ' ça ne ramène pas les doubles quotes) ' Résultat souhaité 'Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select End Sub
Comme solution de secours, je pourrais dire sélectionne de la feuille 3 (1 et 2 ne sont pas concernés) à la dernière feuille mais là aussi je sèche D'avance merci
Tatanka
Salut Éric
Petite modif :
Sub Sélection_Feuilles() Dim Feuilles() Dim plage As Range Set F = Sheets("Données") Set plage = F.Range(F.[u1], F.[u65000].End(xlUp)) Feuilles = Application.Transpose(plage.Value) Sheets(Feuilles).Select End Sub
Serge
"Tatanka" a écrit dans le message de news:
Salut Éric,
Si chaque cellule de la plage U1:Ux contient un nom de feuille valide et s'il n'y a absolument rien sous Ux, alors esaie ceci :
Sub Sélection_Feuilles() Dim Feuilles() Dim plage As Range Set plage = Sheets("Données").Range([u1], [u65000].End(xlUp)) Feuilles = Application.Transpose(plage.Value) Sheets(Feuilles).Select End Sub
Serge
"RENAUD Eric" <erenaud(retirerceci)@fr.fm> a écrit dans le message de news:
Bonjour, Je balaye une plage de cellules de U1 à Ux, cellules contenant des noms d'onglets (Ass. Modules, Ass.baio, Ass.Cont ...) Je souhaite concaténer ces valeurs dans une variable (NomFeuille) pour l'exploiter ensuite avec la commande :
Sheets(Array(NomFeuille)).Select au lieu de Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select car le nombre de noms de feuilles varie.
Lorsque j'écris le contenu de ma variable NomFeuille avec Debug.Print, je lis
"Ass. Modules","Ass.baio","Ass.Cont" et cela semble correct mais ça ne passe pas avec Sheets(Array(NomFeuille)).Select
Sub SelectionMultiOnglets() Dim NomFeuille As String Dim C As Variant Sheets("Données").Select Range("U1:U3").Select ' U1 = Ass. Modules ' U2 =Ass.baio ' U3=Ass.Cont For Each C In Selection NomFeuille = IIf(NomFeuille = "", """" & C.Value & """", NomFeuille & "," & """" & C.Value & """") Next C Debug.Print NomFeuille ' Je souhaite en balayant ma plage U1:U3 (qui peut varier jusqu'à Ux) Sheets(Array(NomFeuille)).Select ' ça ne ramène pas les doubles quotes) ' Résultat souhaité 'Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select End Sub
Comme solution de secours, je pourrais dire sélectionne de la feuille 3 (1 et 2 ne sont pas concernés) à la dernière feuille mais là aussi je sèche D'avance merci
Salut Éric
Petite modif :
Sub Sélection_Feuilles()
Dim Feuilles()
Dim plage As Range
Set F = Sheets("Données")
Set plage = F.Range(F.[u1], F.[u65000].End(xlUp))
Feuilles = Application.Transpose(plage.Value)
Sheets(Feuilles).Select
End Sub
Serge
"Tatanka" <garnote3@ENLEVER.videotron.ca> a écrit dans le message de news: OaPp2OcMIHA.5400@TK2MSFTNGP04.phx.gbl...
Salut Éric,
Si chaque cellule de la plage U1:Ux contient un nom
de feuille valide et s'il n'y a absolument rien sous Ux,
alors esaie ceci :
Sub Sélection_Feuilles()
Dim Feuilles()
Dim plage As Range
Set plage = Sheets("Données").Range([u1], [u65000].End(xlUp))
Feuilles = Application.Transpose(plage.Value)
Sheets(Feuilles).Select
End Sub
Serge
"RENAUD Eric" <erenaud(retirerceci)@fr.fm> a écrit dans le message de news: umoYKzbMIHA.5040@TK2MSFTNGP04.phx.gbl...
Bonjour,
Je balaye une plage de cellules de U1 à Ux, cellules contenant des noms d'onglets (Ass. Modules, Ass.baio, Ass.Cont ...)
Je souhaite concaténer ces valeurs dans une variable (NomFeuille) pour l'exploiter ensuite avec la commande :
Sheets(Array(NomFeuille)).Select
au lieu de
Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select
car le nombre de noms de feuilles varie.
Lorsque j'écris le contenu de ma variable NomFeuille avec Debug.Print, je lis
"Ass. Modules","Ass.baio","Ass.Cont"
et cela semble correct mais ça ne passe pas avec
Sheets(Array(NomFeuille)).Select
Sub SelectionMultiOnglets()
Dim NomFeuille As String
Dim C As Variant
Sheets("Données").Select
Range("U1:U3").Select
' U1 = Ass. Modules
' U2 =Ass.baio
' U3=Ass.Cont
For Each C In Selection
NomFeuille = IIf(NomFeuille = "", """" & C.Value & """", NomFeuille & "," & """" & C.Value & """")
Next C
Debug.Print NomFeuille
' Je souhaite en balayant ma plage U1:U3 (qui peut varier jusqu'à Ux)
Sheets(Array(NomFeuille)).Select ' ça ne ramène pas les doubles quotes)
' Résultat souhaité
'Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select
End Sub
Comme solution de secours, je pourrais dire sélectionne de la feuille 3 (1 et 2 ne sont pas concernés) à la dernière feuille mais
là aussi je sèche
D'avance merci
Sub Sélection_Feuilles() Dim Feuilles() Dim plage As Range Set F = Sheets("Données") Set plage = F.Range(F.[u1], F.[u65000].End(xlUp)) Feuilles = Application.Transpose(plage.Value) Sheets(Feuilles).Select End Sub
Serge
"Tatanka" a écrit dans le message de news:
Salut Éric,
Si chaque cellule de la plage U1:Ux contient un nom de feuille valide et s'il n'y a absolument rien sous Ux, alors esaie ceci :
Sub Sélection_Feuilles() Dim Feuilles() Dim plage As Range Set plage = Sheets("Données").Range([u1], [u65000].End(xlUp)) Feuilles = Application.Transpose(plage.Value) Sheets(Feuilles).Select End Sub
Serge
"RENAUD Eric" <erenaud(retirerceci)@fr.fm> a écrit dans le message de news:
Bonjour, Je balaye une plage de cellules de U1 à Ux, cellules contenant des noms d'onglets (Ass. Modules, Ass.baio, Ass.Cont ...) Je souhaite concaténer ces valeurs dans une variable (NomFeuille) pour l'exploiter ensuite avec la commande :
Sheets(Array(NomFeuille)).Select au lieu de Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select car le nombre de noms de feuilles varie.
Lorsque j'écris le contenu de ma variable NomFeuille avec Debug.Print, je lis
"Ass. Modules","Ass.baio","Ass.Cont" et cela semble correct mais ça ne passe pas avec Sheets(Array(NomFeuille)).Select
Sub SelectionMultiOnglets() Dim NomFeuille As String Dim C As Variant Sheets("Données").Select Range("U1:U3").Select ' U1 = Ass. Modules ' U2 =Ass.baio ' U3=Ass.Cont For Each C In Selection NomFeuille = IIf(NomFeuille = "", """" & C.Value & """", NomFeuille & "," & """" & C.Value & """") Next C Debug.Print NomFeuille ' Je souhaite en balayant ma plage U1:U3 (qui peut varier jusqu'à Ux) Sheets(Array(NomFeuille)).Select ' ça ne ramène pas les doubles quotes) ' Résultat souhaité 'Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select End Sub
Comme solution de secours, je pourrais dire sélectionne de la feuille 3 (1 et 2 ne sont pas concernés) à la dernière feuille mais là aussi je sèche D'avance merci
Et pour ton code s'exécute bien peu importe la feuille active
Tu ajoutes le nom de la feuille où est ta plage Sheets(Application.Transpose(Range("Feuil1!A1:A3").Value)).Select
"RENAUD Eric" <erenaud(retirerceci)@fr.fm> a écrit dans le message de news:
Bonjour, Merci à tous les deux, c'est parfait
"RENAUD Eric" <erenaud(retirerceci)@fr.fm> a écrit dans le message de news:
Bonjour, Je balaye une plage de cellules de U1 à Ux, cellules contenant des noms d'onglets (Ass. Modules, Ass.baio, Ass.Cont ...) Je souhaite concaténer ces valeurs dans une variable (NomFeuille) pour l'exploiter ensuite avec la commande :
Sheets(Array(NomFeuille)).Select au lieu de Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select car le nombre de noms de feuilles varie.
Lorsque j'écris le contenu de ma variable NomFeuille avec Debug.Print, je lis
"Ass. Modules","Ass.baio","Ass.Cont" et cela semble correct mais ça ne passe pas avec Sheets(Array(NomFeuille)).Select
Sub SelectionMultiOnglets() Dim NomFeuille As String Dim C As Variant Sheets("Données").Select Range("U1:U3").Select ' U1 = Ass. Modules ' U2 =Ass.baio ' U3=Ass.Cont For Each C In Selection NomFeuille = IIf(NomFeuille = "", """" & C.Value & """", NomFeuille & "," & """" & C.Value & """") Next C Debug.Print NomFeuille ' Je souhaite en balayant ma plage U1:U3 (qui peut varier jusqu'à Ux) Sheets(Array(NomFeuille)).Select ' ça ne ramène pas les doubles quotes) ' Résultat souhaité 'Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select End Sub
Comme solution de secours, je pourrais dire sélectionne de la feuille 3 (1 et 2 ne sont pas concernés) à la dernière feuille mais là aussi je sèche D'avance merci
Et pour ton code s'exécute bien peu importe la feuille active
Tu ajoutes le nom de la feuille où est ta plage
Sheets(Application.Transpose(Range("Feuil1!A1:A3").Value)).Select
"RENAUD Eric" <erenaud(retirerceci)@fr.fm> a écrit dans le message de news:
e9auEVcMIHA.5860@TK2MSFTNGP04.phx.gbl...
Bonjour,
Merci à tous les deux, c'est parfait
"RENAUD Eric" <erenaud(retirerceci)@fr.fm> a écrit dans le message de news:
umoYKzbMIHA.5040@TK2MSFTNGP04.phx.gbl...
Bonjour,
Je balaye une plage de cellules de U1 à Ux, cellules contenant des noms
d'onglets (Ass. Modules, Ass.baio, Ass.Cont ...)
Je souhaite concaténer ces valeurs dans une variable (NomFeuille) pour
l'exploiter ensuite avec la commande :
Sheets(Array(NomFeuille)).Select
au lieu de
Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select
car le nombre de noms de feuilles varie.
Lorsque j'écris le contenu de ma variable NomFeuille avec Debug.Print, je
lis
"Ass. Modules","Ass.baio","Ass.Cont"
et cela semble correct mais ça ne passe pas avec
Sheets(Array(NomFeuille)).Select
Sub SelectionMultiOnglets()
Dim NomFeuille As String
Dim C As Variant
Sheets("Données").Select
Range("U1:U3").Select
' U1 = Ass. Modules
' U2 =Ass.baio
' U3=Ass.Cont
For Each C In Selection
NomFeuille = IIf(NomFeuille = "", """" & C.Value & """", NomFeuille
& "," & """" & C.Value & """")
Next C
Debug.Print NomFeuille
' Je souhaite en balayant ma plage U1:U3 (qui peut varier jusqu'à Ux)
Sheets(Array(NomFeuille)).Select ' ça ne ramène pas les doubles
quotes)
' Résultat souhaité
'Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select
End Sub
Comme solution de secours, je pourrais dire sélectionne de la feuille 3 (1
et 2 ne sont pas concernés) à la dernière feuille mais là aussi je sèche
D'avance merci
Et pour ton code s'exécute bien peu importe la feuille active
Tu ajoutes le nom de la feuille où est ta plage Sheets(Application.Transpose(Range("Feuil1!A1:A3").Value)).Select
"RENAUD Eric" <erenaud(retirerceci)@fr.fm> a écrit dans le message de news:
Bonjour, Merci à tous les deux, c'est parfait
"RENAUD Eric" <erenaud(retirerceci)@fr.fm> a écrit dans le message de news:
Bonjour, Je balaye une plage de cellules de U1 à Ux, cellules contenant des noms d'onglets (Ass. Modules, Ass.baio, Ass.Cont ...) Je souhaite concaténer ces valeurs dans une variable (NomFeuille) pour l'exploiter ensuite avec la commande :
Sheets(Array(NomFeuille)).Select au lieu de Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select car le nombre de noms de feuilles varie.
Lorsque j'écris le contenu de ma variable NomFeuille avec Debug.Print, je lis
"Ass. Modules","Ass.baio","Ass.Cont" et cela semble correct mais ça ne passe pas avec Sheets(Array(NomFeuille)).Select
Sub SelectionMultiOnglets() Dim NomFeuille As String Dim C As Variant Sheets("Données").Select Range("U1:U3").Select ' U1 = Ass. Modules ' U2 =Ass.baio ' U3=Ass.Cont For Each C In Selection NomFeuille = IIf(NomFeuille = "", """" & C.Value & """", NomFeuille & "," & """" & C.Value & """") Next C Debug.Print NomFeuille ' Je souhaite en balayant ma plage U1:U3 (qui peut varier jusqu'à Ux) Sheets(Array(NomFeuille)).Select ' ça ne ramène pas les doubles quotes) ' Résultat souhaité 'Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select End Sub
Comme solution de secours, je pourrais dire sélectionne de la feuille 3 (1 et 2 ne sont pas concernés) à la dernière feuille mais là aussi je sèche D'avance merci
MichDenis
Et une dernière variante,
Si tu as donné à ta plage un NOM (menu insertion nom)
Ceci au cas où un usager puisse modifier le nom de l'onglet de la feuille ! Sheets(Application.Transpose(Range("NOM_PLage").Value)).Select
"MichDenis" a écrit dans le message de news: %23QVQ% Un truc de même sans variable est aussi bon :
Et pour ton code s'exécute bien peu importe la feuille active
Tu ajoutes le nom de la feuille où est ta plage Sheets(Application.Transpose(Range("Feuil1!A1:A3").Value)).Select
"RENAUD Eric" <erenaud(retirerceci)@fr.fm> a écrit dans le message de news:
Bonjour, Merci à tous les deux, c'est parfait
"RENAUD Eric" <erenaud(retirerceci)@fr.fm> a écrit dans le message de news:
Bonjour, Je balaye une plage de cellules de U1 à Ux, cellules contenant des noms d'onglets (Ass. Modules, Ass.baio, Ass.Cont ...) Je souhaite concaténer ces valeurs dans une variable (NomFeuille) pour l'exploiter ensuite avec la commande :
Sheets(Array(NomFeuille)).Select au lieu de Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select car le nombre de noms de feuilles varie.
Lorsque j'écris le contenu de ma variable NomFeuille avec Debug.Print, je lis
"Ass. Modules","Ass.baio","Ass.Cont" et cela semble correct mais ça ne passe pas avec Sheets(Array(NomFeuille)).Select
Sub SelectionMultiOnglets() Dim NomFeuille As String Dim C As Variant Sheets("Données").Select Range("U1:U3").Select ' U1 = Ass. Modules ' U2 =Ass.baio ' U3=Ass.Cont For Each C In Selection NomFeuille = IIf(NomFeuille = "", """" & C.Value & """", NomFeuille & "," & """" & C.Value & """") Next C Debug.Print NomFeuille ' Je souhaite en balayant ma plage U1:U3 (qui peut varier jusqu'à Ux) Sheets(Array(NomFeuille)).Select ' ça ne ramène pas les doubles quotes) ' Résultat souhaité 'Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select End Sub
Comme solution de secours, je pourrais dire sélectionne de la feuille 3 (1 et 2 ne sont pas concernés) à la dernière feuille mais là aussi je sèche D'avance merci
Et une dernière variante,
Si tu as donné à ta plage un NOM (menu insertion nom)
Ceci au cas où un usager puisse modifier le nom de l'onglet de la feuille !
Sheets(Application.Transpose(Range("NOM_PLage").Value)).Select
"MichDenis" <michdenis@hotmail.com> a écrit dans le message de news:
%23QVQ%23acMIHA.5224@TK2MSFTNGP02.phx.gbl...
Un truc de même sans variable est aussi bon :
Et pour ton code s'exécute bien peu importe la feuille active
Tu ajoutes le nom de la feuille où est ta plage
Sheets(Application.Transpose(Range("Feuil1!A1:A3").Value)).Select
"RENAUD Eric" <erenaud(retirerceci)@fr.fm> a écrit dans le message de news:
e9auEVcMIHA.5860@TK2MSFTNGP04.phx.gbl...
Bonjour,
Merci à tous les deux, c'est parfait
"RENAUD Eric" <erenaud(retirerceci)@fr.fm> a écrit dans le message de news:
umoYKzbMIHA.5040@TK2MSFTNGP04.phx.gbl...
Bonjour,
Je balaye une plage de cellules de U1 à Ux, cellules contenant des noms
d'onglets (Ass. Modules, Ass.baio, Ass.Cont ...)
Je souhaite concaténer ces valeurs dans une variable (NomFeuille) pour
l'exploiter ensuite avec la commande :
Sheets(Array(NomFeuille)).Select
au lieu de
Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select
car le nombre de noms de feuilles varie.
Lorsque j'écris le contenu de ma variable NomFeuille avec Debug.Print, je
lis
"Ass. Modules","Ass.baio","Ass.Cont"
et cela semble correct mais ça ne passe pas avec
Sheets(Array(NomFeuille)).Select
Sub SelectionMultiOnglets()
Dim NomFeuille As String
Dim C As Variant
Sheets("Données").Select
Range("U1:U3").Select
' U1 = Ass. Modules
' U2 =Ass.baio
' U3=Ass.Cont
For Each C In Selection
NomFeuille = IIf(NomFeuille = "", """" & C.Value & """", NomFeuille
& "," & """" & C.Value & """")
Next C
Debug.Print NomFeuille
' Je souhaite en balayant ma plage U1:U3 (qui peut varier jusqu'à Ux)
Sheets(Array(NomFeuille)).Select ' ça ne ramène pas les doubles
quotes)
' Résultat souhaité
'Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select
End Sub
Comme solution de secours, je pourrais dire sélectionne de la feuille 3 (1
et 2 ne sont pas concernés) à la dernière feuille mais là aussi je sèche
D'avance merci
Et pour ton code s'exécute bien peu importe la feuille active
Tu ajoutes le nom de la feuille où est ta plage Sheets(Application.Transpose(Range("Feuil1!A1:A3").Value)).Select
"RENAUD Eric" <erenaud(retirerceci)@fr.fm> a écrit dans le message de news:
Bonjour, Merci à tous les deux, c'est parfait
"RENAUD Eric" <erenaud(retirerceci)@fr.fm> a écrit dans le message de news:
Bonjour, Je balaye une plage de cellules de U1 à Ux, cellules contenant des noms d'onglets (Ass. Modules, Ass.baio, Ass.Cont ...) Je souhaite concaténer ces valeurs dans une variable (NomFeuille) pour l'exploiter ensuite avec la commande :
Sheets(Array(NomFeuille)).Select au lieu de Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select car le nombre de noms de feuilles varie.
Lorsque j'écris le contenu de ma variable NomFeuille avec Debug.Print, je lis
"Ass. Modules","Ass.baio","Ass.Cont" et cela semble correct mais ça ne passe pas avec Sheets(Array(NomFeuille)).Select
Sub SelectionMultiOnglets() Dim NomFeuille As String Dim C As Variant Sheets("Données").Select Range("U1:U3").Select ' U1 = Ass. Modules ' U2 =Ass.baio ' U3=Ass.Cont For Each C In Selection NomFeuille = IIf(NomFeuille = "", """" & C.Value & """", NomFeuille & "," & """" & C.Value & """") Next C Debug.Print NomFeuille ' Je souhaite en balayant ma plage U1:U3 (qui peut varier jusqu'à Ux) Sheets(Array(NomFeuille)).Select ' ça ne ramène pas les doubles quotes) ' Résultat souhaité 'Sheets(Array("Ass. Modules", "Ass.baio", "Ass.Cont")).Select End Sub
Comme solution de secours, je pourrais dire sélectionne de la feuille 3 (1 et 2 ne sont pas concernés) à la dernière feuille mais là aussi je sèche D'avance merci