Sélection de plusieurs feuilles dont le nombre et le nom change

G

gilles

Guest
Bonjour à tous,
J’ai un problème de sélection de feuille dans une macro.

J’ai chercher pas mal dans le forum croyant trouver mon bonheur, j’ai trouvé des sujets qui m’on fait avancé mais je n’ai pas réussi à aller jusqu’au bout c’est pourquoi je demande votre aide.

En effet, je voudrais sélectionner des feuilles dans un classeur. Le nom des feuilles est variable et le nombre aussi est variable.

Le nom des feuilles est écrit dans des cellules de la feuille sommaire.

J’ai toujours dans ce classeur trois feuilles dont le nom ne change pas: sommaire ; Données brutes ; Quotation et suivent ensuite mes feuilles 010F314 ; 020F314 ; 030F314.. etc.

Ce sont les dernières feuilles que je voudrais sélectionner pour enlever une colonne.

Exemple de classeur :
sommaire ; Données brutes ; Quotation ;010F314 ; 020F314 ; 030F314
sommaire ; Données brutes ; Quotation ;020F316 ; 030F316 ; 040F316; 050F316

J’ai essayé avec le bout de macro ci-dessous ça fonctionne a condition que j’ai autant de feuilles que la macro attend c’est-à-dire ici 5 feuilles sinon ça plante.

Mais dans mon classeur j’ai un nombre de feuilles qui varie.

Sheets("sommaire").Select
f1 = Cells(12, 3).Value
f2 = Cells(13, 3).Value
f3 = Cells(14, 3).Value
f4 = Cells(15, 3).Value
f5 = Cells(16, 3).Value

Sheets(Array(f1, f2, f3, f4, f5)).Select

Je ne sais pas si cela est possible de sélectionner de la 4eme feuille jusqu’a la dernière (C'est-à-dire tout prendre après Quotation)

Merci d’avance pour votre aide.
 
B

Bricofire

Guest
Bonjour à tous du fil,

Concernant la réponse d’Hervé, je pense que le pb sera le même, j’avais bien sûr testé ma macro avant de l’envoyer et sub vev est la même en code plus « propre », mais comme il a été déjà débatu sur des fils récemment, est-ce bon de toujours faire le code minimaliste possible ?
Si gilles essaie de comprendre ce qui a été fait et pour cela utilise le mode débogage, pas à pas détaillé (la meilleure façon je pense pour piger), les deux codes ne donneront pas la même transparence, s’il est débutant et qu’il veut adapter, il reviendra sur le fil, ce qui n’est pas systématiquement le but recherché.

Le pb actuel est, je pense, de founir l’exemple ou la nature du message d’erreur….

Le principal c’est qu’on finira bien, à tous, par lui trouver une soluce :)

Cordialement,

bfr
 
H

Hervé

Guest
re bfr

Je ne suis pas sur qu'utiliser des variables dans les codes rendent les macros plus lisibles !!!!!!

Même pour un débutant :
Dim A (as ???)
A = Worksheets.Count
for i=4 to A

Ne va pas plus le géner qu'un : for i=4 to Worksheets.Count, par contre si son code fait 300 lignes et qu'il passe tout en variable, je te laisse imaginer la relecture du code (sachant aussi que les variables ne seront peut être pas déclarées ou mal déclarées).

De plus pour supprimer une colonne tu lui explique qu'il faut sélectionner la feuille, puis sélectionner une cellule dans la colonne et ensuite supprimer la dite colonne, là aussi je te laisse imaginer si son classeur comprend 200 feuilles.....

Je suis désolé , mais pour supprimer une colonne , on utilise : Worksheets(I).Columns(3).Delete, et ca suffit.

Ce n'est pas une macro minimaliste, c'est une macro facile à décrypter car peu de termes sont utilisés.

Ce post n'a pas pour but d'être vindicatif , mais seulement de remettre les choses en perspectives.

En tout cas tu as raison, le principal c'est que gilles résoude son problème.

Salut
Hervé
 
G

gilles

Guest
Grand merci a vous qui m'avez aidé.

J'ai réussi à faire ma macro encore mieux que je pensé grace à vous.

encore merci pour vos codes que vous m'avez gentillement créé et aussi merci de m'avoir répondu plusieurs fois.

Au fait, c'est vrai je débute , je me sert de l'enregistreur mais malheureusement il ne fait pas tout. Il y a des fonctions qu'il ne fait pas , mais grace à vos connaissances et à votre patience j'ai réussi.

@+ et encore merci

Existe-il un fichier qui regroupe les fonctions téléchargeables VBA ?
Par ce que l'aide Office c'est un peu bof quand mème.
 

Discussions similaires

Statistiques des forums

Discussions
315 147
Messages
2 116 770
Membres
112 857
dernier inscrit
sanogo