Problème Macro VBA (cacher de manière sélective)

meli

XLDnaute Nouveau
Bonjour,

Je suis débutante en VBA (quelle surprise!) et je dois créer un fichier Excel qui intégrerait plusieurs Macro.
J'en ai déjà créées quelques unes mais je là je bloque vraiment.

1) Je dois en fait créer une macro qui me permettrait de cacher les colonnes en fonction de leur intitulé (niveau longueur, les colonnes s'étendent de A1 à DZ1 et l'intitulé est systématiquement indiqué dans la première case).
Par exemple, dès que la colonne comprend le terme RO alors celle-ci doit être cachée. Le terme RO peut faire partie de mots différents (RODSC, ROTCR,...).

J'ai honte de mettre ce que j'ai pu trouver mais, la seule chose que j'ai réussi à faire c'est sélectionner mes colonnes. Pas possible de faire disparaître celle dont le nom contient RO.

Range("B1:DZ1").Select
If ActiveCell.Value = "RO" +"*" Then EntireColumns.Hidden = True


2) Une deuxième question se pose, toujours en fonction du nom des colonnes, est-il possible de créer une macro qui créerait autant de sheet que de colonnes et qui donnerait à l'onglet le même nom que la colonne?

Ex: Si ma colonne B s'appelle Jean Jacques Cousteau et ma colonne C Françoise Hardi, alors en activant ma macro j'aurais une sheet pour Jean-Jacques et une sheet pour Françoise, et l'onglet porterait leur nom à chacun.

En néophyte de l'informatique j'espère avoir été assez claire dans mes explications :)

Merci d'avance
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Problème Macro VBA (cacher de manière sélective)

Bonjour Meli, et bienvenue sur le forum
2) Une deuxième question se pose, toujours en fonction du nom des colonnes, est-il possible de créer une macro qui créerait autant de sheet que de colonnes et qui donnerait à l'onglet le même nom que la colonne?

Ex: Si ma colonne B s'appelle Jean Jacques Cousteau et ma colonne C Françoise Hardi, alors en activant ma macro j'aurais une sheet pour Jean-Jacques et une sheet pour Françoise, et l'onglet porterait leur nom à chacun.
voir fichier joint pour cette partie de la question posée

à+
Philippe
 

Pièces jointes

  • 111.xls
    39 KB · Affichages: 32
  • 111.xls
    39 KB · Affichages: 46
  • 111.xls
    39 KB · Affichages: 42

STephane

XLDnaute Occasionnel
Re : Problème Macro VBA (cacher de manière sélective)

Sub PremierePartie()
Dim Ma1ereFeuille As Worksheet
Dim Pattern$
Pattern = "RO*"
Set Ma1ereFeuille = Sheets("Feuil1")
With Ma1ereFeuille
For i = 1 To .Range("IV1").End(xlToLeft).Column
If .Cells(1, i) Like Pattern Then .Cells(1, i).EntireColumn.Hidden = True
Next i
End With
End Sub
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Problème Macro VBA (cacher de manière sélective)

Re,

voici la seconde partie

à+
Philippe

Edit: Bonjour Stéphane
 

Pièces jointes

  • 111.xls
    39.5 KB · Affichages: 33
  • 111.xls
    39.5 KB · Affichages: 34
  • 111.xls
    39.5 KB · Affichages: 35

meli

XLDnaute Nouveau
Re : Problème Macro VBA (cacher de manière sélective)

Génial! ca fonctionne parfaitement, un grand merci :)

Si j'ai d'autre questions par la suite (et je pense qu'on peut déjà dire avec certitude que j'en aurais...) je me permetterais de revenir en quête d'info.

Encore merci et bonne journée
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
311 725
Messages
2 081 941
Membres
101 848
dernier inscrit
Djigbenou