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 ?
Dans la macro proposée, je n'utilise pas la propriétée Name, non plus le Codename seulement le N° d'index de la feuille Il est tard Bonne soirée Youky "ABED HADDOU" a écrit dans le message de news:
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
Dans la macro proposée, je n'utilise pas la propriétée Name, non plus le
Codename
seulement le N° d'index de la feuille
Il est tard Bonne soirée
Youky
"ABED HADDOU" <ABEDHADDOU@discussions.microsoft.com> a écrit dans le message
de news: E178E62E-A4CD-4974-8580-075D8974A70D@microsoft.com...
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" <ABEDHADDOU@discussions.microsoft.com> a écrit dans le
message
de news: C0AEDFD1-A25F-4BD3-8B0C-817B03626A26@microsoft.com...
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" <ABEDHADDOU@discussions.microsoft.com> a écrit dans le
message
de news: BFD238DF-5662-40A5-8A19-E3C12558DA4F@microsoft.com...
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" <ABEDHADDOU@discussions.microsoft.com> a écrit
dans le
message
de news: 33C887D6-B336-4F59-A192-5D6A99F1117B@microsoft.com...
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" <ABEDHADDOU@discussions.microsoft.com> a écrit
dans le
message
de news:
0A689BCA-BDE0-4818-94F8-910F8677FC73@microsoft.com...
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" <ABEDHADDOU@discussions.microsoft.com> a
écrit
dans le
message
de news:
1B7462A8-117B-40E6-A01E-2DC63EB33298@microsoft.com...
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
Dans la macro proposée, je n'utilise pas la propriétée Name, non plus le Codename seulement le N° d'index de la feuille Il est tard Bonne soirée Youky "ABED HADDOU" a écrit dans le message de news:
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