OVH Cloud OVH Cloud

Sheets(Array("inconu"))

11 réponses
Avatar
ABED HADDOU
Bonjour à tout le monde

Sheets(Array("feuil1", "feuil2","feuil3"))
cette syntaxe si on connais le nombre et les noms des feuilles d'un classeur
je veut obtenir la même syntaxe avec le nombre et les noms des feuilles
inconu.
comment faire ?

merci d'avance

Abed_H

10 réponses

1 2
Avatar
Youky
Utilise plutot le codename que le nom de l'onglet, au cas ou l'utilisateur
s'amuse
à rennomer les feuilles à son gout.
dans la fenetre projet VBA en haut à gauche voir Feuil1(Feuil1)
Dim onglet(100) As String
For k = 1 To Sheets.Count
onglet(k) = Sheets(k).CodeName
Next
'pour avoir la Feuil2
'Sheets(onglet(2)).Select

ou aussi
Feuil1.Range("A1") qui n'est pas pareil que [Feuil1!A1]
Youky

"ABED HADDOU" a écrit dans le message
de news:
Bonjour à tout le monde

Sheets(Array("feuil1", "feuil2","feuil3"))
cette syntaxe si on connais le nombre et les noms des feuilles d'un
classeur

je veut obtenir la même syntaxe avec le nombre et les noms des feuilles
inconu.
comment faire ?

merci d'avance

Abed_H



Avatar
ABED HADDOU
Utilise plutot le codename que le nom de l'onglet,


si j'utilise le codename, j'obtient un message d'eurreur là
For Each c In rng(i).Range("A1:A500")
disant qualificateur incorrect.
merci comme même pour ton aide.

je cherche

Abed_H




Utilise plutot le codename que le nom de l'onglet, au cas ou l'utilisateur
s'amuse
à rennomer les feuilles à son gout.
dans la fenetre projet VBA en haut à gauche voir Feuil1(Feuil1)
Dim onglet(100) As String
For k = 1 To Sheets.Count
onglet(k) = Sheets(k).CodeName
Next
'pour avoir la Feuil2
'Sheets(onglet(2)).Select

ou aussi
Feuil1.Range("A1") qui n'est pas pareil que [Feuil1!A1]
Youky

"ABED HADDOU" a écrit dans le message
de news:
Bonjour à tout le monde

Sheets(Array("feuil1", "feuil2","feuil3"))
cette syntaxe si on connais le nombre et les noms des feuilles d'un
classeur

je veut obtenir la même syntaxe avec le nombre et les noms des feuilles
inconu.
comment faire ?

merci d'avance

Abed_H








Avatar
Youky
For Each c In sheets(rng(i)).Range("A1:A500")
devrait fair l'affaire
Youky

"ABED HADDOU" a écrit dans le message
de news:
Utilise plutot le codename que le nom de l'onglet,


si j'utilise le codename, j'obtient un message d'eurreur là
For Each c In rng(i).Range("A1:A500")
disant qualificateur incorrect.
merci comme même pour ton aide.

je cherche

Abed_H




Utilise plutot le codename que le nom de l'onglet, au cas ou
l'utilisateur


s'amuse
à rennomer les feuilles à son gout.
dans la fenetre projet VBA en haut à gauche voir Feuil1(Feuil1)
Dim onglet(100) As String
For k = 1 To Sheets.Count
onglet(k) = Sheets(k).CodeName
Next
'pour avoir la Feuil2
'Sheets(onglet(2)).Select

ou aussi
Feuil1.Range("A1") qui n'est pas pareil que [Feuil1!A1]
Youky

"ABED HADDOU" a écrit dans le
message


de news:
Bonjour à tout le monde

Sheets(Array("feuil1", "feuil2","feuil3"))
cette syntaxe si on connais le nombre et les noms des feuilles d'un
classeur

je veut obtenir la même syntaxe avec le nombre et les noms des
feuilles



inconu.
comment faire ?

merci d'avance

Abed_H










Avatar
ABED HADDOU
mais non youky !
si je renome une feuille le message suivant apparait
L'indice n'appartient pas à la sélection
pourtant j'utilise le codename.
merci.

Abed_H



"Youky" wrote:

For Each c In sheets(rng(i)).Range("A1:A500")
devrait fair l'affaire
Youky

"ABED HADDOU" a écrit dans le message
de news:
Utilise plutot le codename que le nom de l'onglet,


si j'utilise le codename, j'obtient un message d'eurreur là
For Each c In rng(i).Range("A1:A500")
disant qualificateur incorrect.
merci comme même pour ton aide.

je cherche

Abed_H




Utilise plutot le codename que le nom de l'onglet, au cas ou
l'utilisateur


s'amuse
à rennomer les feuilles à son gout.
dans la fenetre projet VBA en haut à gauche voir Feuil1(Feuil1)
Dim onglet(100) As String
For k = 1 To Sheets.Count
onglet(k) = Sheets(k).CodeName
Next
'pour avoir la Feuil2
'Sheets(onglet(2)).Select

ou aussi
Feuil1.Range("A1") qui n'est pas pareil que [Feuil1!A1]
Youky

"ABED HADDOU" a écrit dans le
message


de news:
Bonjour à tout le monde

Sheets(Array("feuil1", "feuil2","feuil3"))
cette syntaxe si on connais le nombre et les noms des feuilles d'un
classeur

je veut obtenir la même syntaxe avec le nombre et les noms des
feuilles



inconu.
comment faire ?

merci d'avance

Abed_H















Avatar
Youky
avant le For
pose la question en macro pour savoir
MsgBox sheets(rng(i))
ceci doit renvoyer Feuil1 ou Feuil2 ou plus si cé pas le cas c'est pas bon
revoir le code
Youky
"ABED HADDOU" a écrit dans le message
de news:
mais non youky !
si je renome une feuille le message suivant apparait
L'indice n'appartient pas à la sélection
pourtant j'utilise le codename.
merci.

Abed_H



"Youky" wrote:

For Each c In sheets(rng(i)).Range("A1:A500")
devrait fair l'affaire
Youky

"ABED HADDOU" a écrit dans le
message


de news:
Utilise plutot le codename que le nom de l'onglet,


si j'utilise le codename, j'obtient un message d'eurreur là
For Each c In rng(i).Range("A1:A500")
disant qualificateur incorrect.
merci comme même pour ton aide.

je cherche

Abed_H




Utilise plutot le codename que le nom de l'onglet, au cas ou
l'utilisateur


s'amuse
à rennomer les feuilles à son gout.
dans la fenetre projet VBA en haut à gauche voir Feuil1(Feuil1)
Dim onglet(100) As String
For k = 1 To Sheets.Count
onglet(k) = Sheets(k).CodeName
Next
'pour avoir la Feuil2
'Sheets(onglet(2)).Select

ou aussi
Feuil1.Range("A1") qui n'est pas pareil que [Feuil1!A1]
Youky

"ABED HADDOU" a écrit dans le
message


de news:
Bonjour à tout le monde

Sheets(Array("feuil1", "feuil2","feuil3"))
cette syntaxe si on connais le nombre et les noms des feuilles
d'un





classeur
je veut obtenir la même syntaxe avec le nombre et les noms des
feuilles



inconu.
comment faire ?

merci d'avance

Abed_H

















Avatar
ABED HADDOU
si je renomme une des feuilles de mon classeur une erreur se déclenche disant
que
l'indice n'appartient pas à la sélection le code plante ici
For Each c In sheets(rng(i)).Range("A1:A500")
voir le code http://cjoint.com/?hqrhoOuKOC
je veut utilisé le codename dans la boucle.

Abed_H



"Youky" wrote:

avant le For
pose la question en macro pour savoir
MsgBox sheets(rng(i))
ceci doit renvoyer Feuil1 ou Feuil2 ou plus si cé pas le cas c'est pas bon
revoir le code
Youky
"ABED HADDOU" a écrit dans le message
de news:
mais non youky !
si je renome une feuille le message suivant apparait
L'indice n'appartient pas à la sélection
pourtant j'utilise le codename.
merci.

Abed_H



"Youky" wrote:

For Each c In sheets(rng(i)).Range("A1:A500")
devrait fair l'affaire
Youky

"ABED HADDOU" a écrit dans le
message


de news:
Utilise plutot le codename que le nom de l'onglet,


si j'utilise le codename, j'obtient un message d'eurreur là
For Each c In rng(i).Range("A1:A500")
disant qualificateur incorrect.
merci comme même pour ton aide.

je cherche

Abed_H




Utilise plutot le codename que le nom de l'onglet, au cas ou
l'utilisateur


s'amuse
à rennomer les feuilles à son gout.
dans la fenetre projet VBA en haut à gauche voir Feuil1(Feuil1)
Dim onglet(100) As String
For k = 1 To Sheets.Count
onglet(k) = Sheets(k).CodeName
Next
'pour avoir la Feuil2
'Sheets(onglet(2)).Select

ou aussi
Feuil1.Range("A1") qui n'est pas pareil que [Feuil1!A1]
Youky

"ABED HADDOU" a écrit dans le
message


de news:
Bonjour à tout le monde

Sheets(Array("feuil1", "feuil2","feuil3"))
cette syntaxe si on connais le nombre et les noms des feuilles
d'un





classeur
je veut obtenir la même syntaxe avec le nombre et les noms des
feuilles



inconu.
comment faire ?

merci d'avance

Abed_H






















Avatar
Youky
dans le fichier il n'y a aucun code j'ai essayé de deviner...
la macro crée un tableau des données de toutes les colonnes B
du classeur
Tu peux appeler
Dim myd(10000) As String
For onglet = 1 To Sheets.Count
For c = 2 To Sheets(onglet).[A65000].End(3).Row
If Sheets(onglet).Cells(c, 2) <> "" Then
k = k + 1
myd(k) = Sheets(onglet).Cells(c, 2)
End If
Next
Next
msgbox "Le tableau a " & k & " données"
rep = InputBox("entre le N° de position")
If rep = "" Then Exit Sub
MsgBox myd(rep)

je suis pas sur d'avoir bien compris
Youky

"ABED HADDOU" a écrit dans le message
de news:
si je renomme une des feuilles de mon classeur une erreur se déclenche
disant

que
l'indice n'appartient pas à la sélection le code plante ici
For Each c In sheets(rng(i)).Range("A1:A500")
voir le code http://cjoint.com/?hqrhoOuKOC
je veut utilisé le codename dans la boucle.

Abed_H



"Youky" wrote:

avant le For
pose la question en macro pour savoir
MsgBox sheets(rng(i))
ceci doit renvoyer Feuil1 ou Feuil2 ou plus si cé pas le cas c'est pas
bon


revoir le code
Youky
"ABED HADDOU" a écrit dans le
message


de news:
mais non youky !
si je renome une feuille le message suivant apparait
L'indice n'appartient pas à la sélection
pourtant j'utilise le codename.
merci.

Abed_H



"Youky" wrote:

For Each c In sheets(rng(i)).Range("A1:A500")
devrait fair l'affaire
Youky

"ABED HADDOU" a écrit dans le
message


de news:
Utilise plutot le codename que le nom de l'onglet,


si j'utilise le codename, j'obtient un message d'eurreur là
For Each c In rng(i).Range("A1:A500")
disant qualificateur incorrect.
merci comme même pour ton aide.

je cherche

Abed_H




Utilise plutot le codename que le nom de l'onglet, au cas ou
l'utilisateur


s'amuse
à rennomer les feuilles à son gout.
dans la fenetre projet VBA en haut à gauche voir
Feuil1(Feuil1)






Dim onglet(100) As String
For k = 1 To Sheets.Count
onglet(k) = Sheets(k).CodeName
Next
'pour avoir la Feuil2
'Sheets(onglet(2)).Select

ou aussi
Feuil1.Range("A1") qui n'est pas pareil que [Feuil1!A1]
Youky

"ABED HADDOU" a écrit
dans le






message
de news:
Bonjour à tout le monde

Sheets(Array("feuil1", "feuil2","feuil3"))
cette syntaxe si on connais le nombre et les noms des feuilles
d'un





classeur
je veut obtenir la même syntaxe avec le nombre et les noms des
feuilles



inconu.
comment faire ?

merci d'avance

Abed_H
























Avatar
ABED HADDOU
dans le fichier il n'y a aucun code
comment ? j'ai chargé le fichier et je le vois il est clair!

voici le code

Sub Trouve()
Dim rng(100) As String
Dim VlCh As String
For i = 1 To Sheets.Count
rng(i) = Sheets(i).CodeName
For Each c In Sheets(rng(i)).Range("A1:A100")
If c Like "*mai*" Then
ValCh = ValCh & "," & c.Offset(, 1)
End If
Next c
Next i
[Feuil1!b1] = ValCh
End Sub

merci bien Youky à bientôt.

Abed_H




dans le fichier il n'y a aucun code j'ai essayé de deviner...
la macro crée un tableau des données de toutes les colonnes B
du classeur
Tu peux appeler
Dim myd(10000) As String
For onglet = 1 To Sheets.Count
For c = 2 To Sheets(onglet).[A65000].End(3).Row
If Sheets(onglet).Cells(c, 2) <> "" Then
k = k + 1
myd(k) = Sheets(onglet).Cells(c, 2)
End If
Next
Next
msgbox "Le tableau a " & k & " données"
rep = InputBox("entre le N° de position")
If rep = "" Then Exit Sub
MsgBox myd(rep)

je suis pas sur d'avoir bien compris
Youky

"ABED HADDOU" a écrit dans le message
de news:
si je renomme une des feuilles de mon classeur une erreur se déclenche
disant

que
l'indice n'appartient pas à la sélection le code plante ici
For Each c In sheets(rng(i)).Range("A1:A500")
voir le code http://cjoint.com/?hqrhoOuKOC
je veut utilisé le codename dans la boucle.

Abed_H



"Youky" wrote:

avant le For
pose la question en macro pour savoir
MsgBox sheets(rng(i))
ceci doit renvoyer Feuil1 ou Feuil2 ou plus si cé pas le cas c'est pas
bon


revoir le code
Youky
"ABED HADDOU" a écrit dans le
message


de news:
mais non youky !
si je renome une feuille le message suivant apparait
L'indice n'appartient pas à la sélection
pourtant j'utilise le codename.
merci.

Abed_H



"Youky" wrote:

For Each c In sheets(rng(i)).Range("A1:A500")
devrait fair l'affaire
Youky

"ABED HADDOU" a écrit dans le
message


de news:
Utilise plutot le codename que le nom de l'onglet,


si j'utilise le codename, j'obtient un message d'eurreur là
For Each c In rng(i).Range("A1:A500")
disant qualificateur incorrect.
merci comme même pour ton aide.

je cherche

Abed_H




Utilise plutot le codename que le nom de l'onglet, au cas ou
l'utilisateur


s'amuse
à rennomer les feuilles à son gout.
dans la fenetre projet VBA en haut à gauche voir
Feuil1(Feuil1)






Dim onglet(100) As String
For k = 1 To Sheets.Count
onglet(k) = Sheets(k).CodeName
Next
'pour avoir la Feuil2
'Sheets(onglet(2)).Select

ou aussi
Feuil1.Range("A1") qui n'est pas pareil que [Feuil1!A1]
Youky

"ABED HADDOU" a écrit
dans le






message
de news:
Bonjour à tout le monde

Sheets(Array("feuil1", "feuil2","feuil3"))
cette syntaxe si on connais le nombre et les noms des feuilles
d'un





classeur
je veut obtenir la même syntaxe avec le nombre et les noms des
feuilles



inconu.
comment faire ?

merci d'avance

Abed_H





























Avatar
Youky
Mille excuses, je suis passé à coté, une connerie de plus
avec cette macro tu peux renomer les onglets
j'ai mis des apostrphes afin que tu passes pas à coté de la variable "
myd()"
'Dim myd(10000) As String
For onglet = 1 To Sheets.Count
For lig = 2 To Sheets(onglet).[A65000].End(3).Row
If Sheets(onglet).Cells(lig, 1) = "mai" Then
k = k + 1
'myd(k) = Sheets(onglet).Cells(lig, 2)
tx = tx & Sheets(onglet).Cells(lig, 2) & ", "
End If
Next
Next
'rep = InputBox("entre le N° de position")
'If rep = "" Then Exit Sub
'MsgBox myd(rep)
MsgBox " ton B1 : " & tx

Youky

"ABED HADDOU" a écrit dans le message
de news:
dans le fichier il n'y a aucun code
comment ? j'ai chargé le fichier et je le vois il est clair!

voici le code

Sub Trouve()
Dim rng(100) As String
Dim VlCh As String
For i = 1 To Sheets.Count
rng(i) = Sheets(i).CodeName
For Each c In Sheets(rng(i)).Range("A1:A100")
If c Like "*mai*" Then
ValCh = ValCh & "," & c.Offset(, 1)
End If
Next c
Next i
[Feuil1!b1] = ValCh
End Sub

merci bien Youky à bientôt.

Abed_H




dans le fichier il n'y a aucun code j'ai essayé de deviner...
la macro crée un tableau des données de toutes les colonnes B
du classeur
Tu peux appeler
Dim myd(10000) As String
For onglet = 1 To Sheets.Count
For c = 2 To Sheets(onglet).[A65000].End(3).Row
If Sheets(onglet).Cells(c, 2) <> "" Then
k = k + 1
myd(k) = Sheets(onglet).Cells(c, 2)
End If
Next
Next
msgbox "Le tableau a " & k & " données"
rep = InputBox("entre le N° de position")
If rep = "" Then Exit Sub
MsgBox myd(rep)

je suis pas sur d'avoir bien compris
Youky

"ABED HADDOU" a écrit dans le
message


de news:
si je renomme une des feuilles de mon classeur une erreur se déclenche
disant

que
l'indice n'appartient pas à la sélection le code plante ici
For Each c In sheets(rng(i)).Range("A1:A500")
voir le code http://cjoint.com/?hqrhoOuKOC
je veut utilisé le codename dans la boucle.

Abed_H



"Youky" wrote:

avant le For
pose la question en macro pour savoir
MsgBox sheets(rng(i))
ceci doit renvoyer Feuil1 ou Feuil2 ou plus si cé pas le cas c'est
pas




bon
revoir le code
Youky
"ABED HADDOU" a écrit dans le
message


de news:
mais non youky !
si je renome une feuille le message suivant apparait
L'indice n'appartient pas à la sélection
pourtant j'utilise le codename.
merci.

Abed_H



"Youky" wrote:

For Each c In sheets(rng(i)).Range("A1:A500")
devrait fair l'affaire
Youky

"ABED HADDOU" a écrit
dans le






message
de news:
Utilise plutot le codename que le nom de l'onglet,


si j'utilise le codename, j'obtient un message d'eurreur là
For Each c In rng(i).Range("A1:A500")
disant qualificateur incorrect.
merci comme même pour ton aide.

je cherche

Abed_H




Utilise plutot le codename que le nom de l'onglet, au cas ou
l'utilisateur


s'amuse
à rennomer les feuilles à son gout.
dans la fenetre projet VBA en haut à gauche voir
Feuil1(Feuil1)






Dim onglet(100) As String
For k = 1 To Sheets.Count
onglet(k) = Sheets(k).CodeName
Next
'pour avoir la Feuil2
'Sheets(onglet(2)).Select

ou aussi
Feuil1.Range("A1") qui n'est pas pareil que [Feuil1!A1]
Youky

"ABED HADDOU" a écrit
dans le






message
de news:









Bonjour à tout le monde

Sheets(Array("feuil1", "feuil2","feuil3"))
cette syntaxe si on connais le nombre et les noms des
feuilles









d'un
classeur
je veut obtenir la même syntaxe avec le nombre et les noms
des









feuilles
inconu.
comment faire ?

merci d'avance

Abed_H































Avatar
ABED HADDOU
merci pour ton aide Youky
je veux préservé mon code toute en utilisant le codename, peut être un
costaut du groupe va me repodre.
Bonne soirée

Abed_H


"Youky" wrote:

Mille excuses, je suis passé à coté, une connerie de plus
avec cette macro tu peux renomer les onglets
j'ai mis des apostrphes afin que tu passes pas à coté de la variable "
myd()"
'Dim myd(10000) As String
For onglet = 1 To Sheets.Count
For lig = 2 To Sheets(onglet).[A65000].End(3).Row
If Sheets(onglet).Cells(lig, 1) = "mai" Then
k = k + 1
'myd(k) = Sheets(onglet).Cells(lig, 2)
tx = tx & Sheets(onglet).Cells(lig, 2) & ", "
End If
Next
Next
'rep = InputBox("entre le N° de position")
'If rep = "" Then Exit Sub
'MsgBox myd(rep)
MsgBox " ton B1 : " & tx

Youky

"ABED HADDOU" a écrit dans le message
de news:
dans le fichier il n'y a aucun code
comment ? j'ai chargé le fichier et je le vois il est clair!

voici le code

Sub Trouve()
Dim rng(100) As String
Dim VlCh As String
For i = 1 To Sheets.Count
rng(i) = Sheets(i).CodeName
For Each c In Sheets(rng(i)).Range("A1:A100")
If c Like "*mai*" Then
ValCh = ValCh & "," & c.Offset(, 1)
End If
Next c
Next i
[Feuil1!b1] = ValCh
End Sub

merci bien Youky à bientôt.

Abed_H




dans le fichier il n'y a aucun code j'ai essayé de deviner...
la macro crée un tableau des données de toutes les colonnes B
du classeur
Tu peux appeler
Dim myd(10000) As String
For onglet = 1 To Sheets.Count
For c = 2 To Sheets(onglet).[A65000].End(3).Row
If Sheets(onglet).Cells(c, 2) <> "" Then
k = k + 1
myd(k) = Sheets(onglet).Cells(c, 2)
End If
Next
Next
msgbox "Le tableau a " & k & " données"
rep = InputBox("entre le N° de position")
If rep = "" Then Exit Sub
MsgBox myd(rep)

je suis pas sur d'avoir bien compris
Youky

"ABED HADDOU" a écrit dans le
message


de news:
si je renomme une des feuilles de mon classeur une erreur se déclenche
disant

que
l'indice n'appartient pas à la sélection le code plante ici
For Each c In sheets(rng(i)).Range("A1:A500")
voir le code http://cjoint.com/?hqrhoOuKOC
je veut utilisé le codename dans la boucle.

Abed_H



"Youky" wrote:

avant le For
pose la question en macro pour savoir
MsgBox sheets(rng(i))
ceci doit renvoyer Feuil1 ou Feuil2 ou plus si cé pas le cas c'est
pas




bon
revoir le code
Youky
"ABED HADDOU" a écrit dans le
message


de news:
mais non youky !
si je renome une feuille le message suivant apparait
L'indice n'appartient pas à la sélection
pourtant j'utilise le codename.
merci.

Abed_H



"Youky" wrote:

For Each c In sheets(rng(i)).Range("A1:A500")
devrait fair l'affaire
Youky

"ABED HADDOU" a écrit
dans le






message
de news:
Utilise plutot le codename que le nom de l'onglet,


si j'utilise le codename, j'obtient un message d'eurreur là
For Each c In rng(i).Range("A1:A500")
disant qualificateur incorrect.
merci comme même pour ton aide.

je cherche

Abed_H




Utilise plutot le codename que le nom de l'onglet, au cas ou
l'utilisateur


s'amuse
à rennomer les feuilles à son gout.
dans la fenetre projet VBA en haut à gauche voir
Feuil1(Feuil1)






Dim onglet(100) As String
For k = 1 To Sheets.Count
onglet(k) = Sheets(k).CodeName
Next
'pour avoir la Feuil2
'Sheets(onglet(2)).Select

ou aussi
Feuil1.Range("A1") qui n'est pas pareil que [Feuil1!A1]
Youky

"ABED HADDOU" a écrit
dans le






message
de news:









Bonjour à tout le monde

Sheets(Array("feuil1", "feuil2","feuil3"))
cette syntaxe si on connais le nombre et les noms des
feuilles









d'un
classeur
je veut obtenir la même syntaxe avec le nombre et les noms
des









feuilles
inconu.
comment faire ?

merci d'avance

Abed_H




































1 2