Programmation VBA
Résolu
jacksa3ada
-
ccm81 Messages postés 11033 Statut Membre -
ccm81 Messages postés 11033 Statut Membre -
Bonjour,
j'ai un classeur Excel de plusieurs feuilles, pour les besoins d'une application j'ai réalisé une macro pour la selection de toutes les feuilles
voici la macro:
comment faire pour que la macro ne selectionne pas les feuilles "Source" , "calcul" et "tableaux"
merci
j'ai un classeur Excel de plusieurs feuilles, pour les besoins d'une application j'ai réalisé une macro pour la selection de toutes les feuilles
voici la macro:
'''''''''''''''''''selection des feuilles'''''''''''''''''''''
Dim I As Byte 'déclare la variable I (Incrément)
Dim OS As Variant 'déclare la variable OS (OngletS)
ReDim OS(1 To Sheets.Count) 'redimensionne le tableau OS (de 1 au nombre d'onglets dans le classeur)
For I = 1 To Sheets.Count 'boucle sur tous les onglets du classeur
OS(I) = Sheets(I).Name 'alimente le tableau OS avec le nom de l'onglet de la boucle
Next I 'prochain onglet de la boucle
Sheets(OS).Select 'sélectionne les onglets du tableau OS
comment faire pour que la macro ne selectionne pas les feuilles "Source" , "calcul" et "tableaux"
merci
Configuration: Windows / Chrome 74.0.3729.169
9 réponses
Bonjour,
A l'avenir, merci de placer tes questions VBA dans le forum VBA (j'ai déplacé celle-ci).
Merci également d'utiliser les BALISES DE CODE.
Explications disponibles ici : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Et pour répondre à ta question...... en faisant des IF
A l'avenir, merci de placer tes questions VBA dans le forum VBA (j'ai déplacé celle-ci).
Merci également d'utiliser les BALISES DE CODE.
Explications disponibles ici : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Et pour répondre à ta question...... en faisant des IF
If Sheets(I).Name <> "Source" AND Sheets(I).Name<>"calcul" AND Sheets(I).Name<>"tableaux" Then '... '... ici ton code EndIf
bonjour
merci pour ta reponse
j'ai fais ça !
et ça bloque
je ne suis qu'un débutant, je sais ce qui ne va pas
merci pour ta reponse
j'ai fais ça !
et ça bloque
je ne suis qu'un débutant, je sais ce qui ne va pas
'''''''''''''''''''selection des feuilles'''''''''''''''''''''
Dim i As Byte 'déclare la variable I (Incrément)
Dim OS As Variant 'déclare la variable OS (OngletS)
If Sheets(i).Name <> "Source" And Sheets(i).Name(i) <> "Modele" Then
ReDim OS(1 To Sheets.Count) 'redimensionne le tableau OS (de 1 au nombre d'onglets dans le classeur)
For i = 1 To Sheets.Count 'boucle sur tous les onglets du classeur
OS(i) = Sheets(i).Name 'alimente le tableau OS avec le nom de l'onglet de la boucle
Next i 'prochain onglet de la boucle
Sheets(OS).Select 'sélectionne les onglets du tableau OS
End If
Bonjour à tous les deux
Quelque chose comme ça
RQ. celle là Sheets(OS).Select 'sélectionne les onglets du tableau OS me parait douteuse !
Cdlmnt
Quelque chose comme ça
'''''''''''''''''''selection des feuilles'''''''''''''''''''''
Dim i As Byte 'déclare la variable I (Incrément)
Dim OS() 'déclare la variable OS (OngletS)
ReDim OS(1 To Sheets.Count) 'redimensionne le tableau OS (de 1 au nombre d'onglets dans le classeur)
For i = 1 To Sheets.Count 'boucle sur tous les onglets du classeur
If Sheets(i).Name <> "Source" And Sheets(i).Name <> "Modele" Then
OS(i) = Sheets(i).Name 'alimente le tableau OS avec le nom de l'onglet de la boucle
End If
Next i 'prochain onglet de la boucle
RQ. celle là Sheets(OS).Select 'sélectionne les onglets du tableau OS me parait douteuse !
Cdlmnt
bonjour
j 'ai fais ça :
'
cela ne fonctionne pas!!!!
rien n'est selectionné !!
je comprend pas pkoi
j 'ai fais ça :
'
''''''''''''''''''selection des feuilles'''''''''''''''''''''
Sub Selection ()
Dim i As Byte 'déclare la variable I (Incrément)
Dim OS() 'déclare la variable OS (OngletS)
ReDim OS(1 To Sheets.Count) 'redimensionne le tableau OS (de 1 au nombre d'onglets dans le classeur)
For i = 1 To Sheets.Count 'boucle sur tous les onglets du classeur
If Sheets(i).Name <> "Source" And Sheets(i).Name <> "Modele" Then
OS(i) = Sheets(i).Name 'alimente le tableau OS avec le nom de l'onglet de la boucle
End If
Next i 'prochain onglet de la boucle
End Sub
cela ne fonctionne pas!!!!
rien n'est selectionné !!
je comprend pas pkoi
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
bonjour
je veux selectionner toutes les feuilles autre que la feuille "source" et la feuille "Modele" .
merci
je veux selectionner toutes les feuilles autre que la feuille "source" et la feuille "Modele" .
merci
Re,
''''''''''''''''''selection des feuilles'''''''''''''''''''''
Sub Selection()
Dim i As Long 'd?clare la variable I (Incr?ment)
Dim OS() 'd?clare la variable OS (OngletS)
ReDim OS(1 To Sheets.Count) 'redimensionne le tableau OS (de 1 au nombre d'onglets dans le classeur)
For i = 1 To Sheets.Count 'boucle sur tous les onglets du classeur
If Sheets(i).Name <> "Source" And Sheets(i).Name <> "Modele" Then
OS(i) = Sheets(i).Name 'alimente le tableau OS avec le nom de l'onglet de la boucle
End If
Next i 'prochain onglet de la boucle
Sheets(OS).Select 'selection des onglets
End Sub
Essaies ceci pour mettre 1 en A1 des feuilles selectionnées
CDlmnt
Sub ok()
'''''''''''''''''''selection des feuilles'''''''''''''''''''''
Dim i As Byte 'déclare la variable I (Incrément)
Dim n As Long ' nombre de feuilles dans OS
Dim OS() 'déclare la variable OS (OngletS)
n = -1
For i = 1 To Sheets.Count 'boucle sur tous les onglets du classeur
If Sheets(i).Name <> "Source" And Sheets(i).Name <> "Modele" Then
n = n + 1
ReDim Preserve OS(0 To n)
OS(n) = Sheets(i).Name 'alimente le tableau OS avec le nom de l'onglet de la boucle
End If
Next i 'prochain onglet de la boucle
Sheets(OS).Select 'sélectionne les onglets du tableau OS et mettre 1 en A1
Range("A1").Select
ActiveCell.Value = 1
End Sub
CDlmnt