Masquer donnée d'une feuille [Résolu]

Signaler
Messages postés
26
Date d'inscription
mercredi 27 janvier 2010
Statut
Membre
Dernière intervention
28 septembre 2011
-
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
-
Bonsoir,

voila mon petit problème je souhaiterais masquer une feuille (par exemple feuille 3) sur laquelle des données seront placés sauf que ces données change à chaque fois après le lancement d'une petite analyse. Ces données me permettent de tracer une courbe qui se trouve sur autre page exemple (feuille 1) mais des que je masque la page feuille 3 ma macro ne retrouve pas la page comme si elle était inexistante donc comment puis je faire pour pouvoir récupéré ces données sans pour autant qu'on puisse les voir s'afficher sur cette feuille et si possible de la masquer .

8 réponses

Messages postés
797
Date d'inscription
mardi 7 juin 2005
Statut
Membre
Dernière intervention
23 février 2011
6
Nous dire où ça plante dans le code (la belle ligne jaune de ton débugger) et le code erreur (S'il ne trouve pas ta feuille, je penche pour une erreur 1004, mais sait-on jamais).

Mais à vue de nez comme ça, je dirais que commencer par le Sheets("Feuil3").select puis enchainer avec seulement des Range doit poser problème, parce que tu ne peux pas sélectionner une feuille masquer.

Tu peux tenter après ton select de faire :
Sheets("Feuil3").activate

Mais je ne suis pas sûr que ça suffira (on peut activer une feuille masquer par code).

L'autre solution que je trouve plus propre, est de déclarer dans ton code à chaque fois sur quelle feuille tu travailles, en faisant :
'Pour chaque range, rajouter
worksheets("Feuil3").range(....)

'Utiliser une variable si le nom de feuille est appelé à changer, ça peut être plus pratique
Dim Feuille as worksheet
Set Feuille = worksheets("Feuil3")
'ajouter dans ton code
Feuille.range(...)


Molenn
Messages postés
797
Date d'inscription
mardi 7 juin 2005
Statut
Membre
Dernière intervention
23 février 2011
6
Donne nous ton code, il doit y avoir un pb dedans parce que moi, quand je fais le code suivant :

For i = 1 To ActiveWorkbook.Worksheets.Count
    MsgBox Worksheets(i).Name
Next i


que les feuilles soient masquées ou non, j'affiche bien leur nom. Je peux donc travailler dessus.

Molenn
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
239
Bonjour,
ne masque pas la feuille mais ses cellules

____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est
Messages postés
26
Date d'inscription
mercredi 27 janvier 2010
Statut
Membre
Dernière intervention
28 septembre 2011

voici mon code qui me permet de trouver les données et de choisir la feuille 3


Sheets("Feuil3").Select

Columns("I:I").Clear


For i = 1 To 40382
f = FreeFile
Open chemin For Binary As #f
Get #f, ((2 * i) - 1) + 44, pfaible
Get #f, (2 * i) + 44, pfort
Close #f


Range("D" & [i]).Value = pfaible
Range("E" & [i]).Value = pfort

If npiste 1 Then Range("H" & [i]).Value Range("D" & [i]).Value * 256 + Range("E" & [i]).Value
If npiste 2 Then Range("H" & [i]).Value Range("D" & (2 * i)).Offset(-1, 0).Value * 256 + Range("E" & (2 * i)).Offset(-1, 0).Value
If npiste 2 Then Range("I" & [i]).Value Range("D" & (2 * i)).Value * 256 + Range("E" & (2 * i)).Value



Next

For j = 0 To 40381

Range("K" & 1 + j).Value = (j * (1 / Freq)) / 2

Next


qu'est ce que je dois faire
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
239
1) Commence déjà par te débarrasser de cette fort mauvaise habitude de sélectionner une feuille pour la traiter !
Si tu veux pointer vers elle et vers des cellules qu'elle contient, pointe donc ! IUnutile de sélectionner !
2) masque les cellules et non la feuille (déjà dit)
3) pour le reste, que veux-tu qu'on te dise, sans savoir ce que contiennent et sont chemin et npiste ? (boule de cristal en panne !)*
4) et qu'est cette histoire de boucle for I DANS laquelle tu semble toujours ouvrir le même fichier ? pourquoi l'ouvrir plusieurs fois ? (bizarre).
____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est
Messages postés
26
Date d'inscription
mercredi 27 janvier 2010
Statut
Membre
Dernière intervention
28 septembre 2011

comment je fais pour masquer les celulles?(le plus important pour moi c'est qu'on ne voit pas mes données lorsque je lance mon analyse)

pour ce qui est de i c'est une boucle parceque je lis toute une série de donnée qui sont sur un fichier wave et chaque donnée est une valeur placée dans un classement différent et que je place par la suite dans une celulle sur excel qui me permettra de tracer ma courbe grace à ces données.
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
239
1) (et surtout) Il n'y a absolument aucune nécessité d'ouvrir n fois un fichier et de le fermer (pour le rouvrir) pour lire ses n lignes une par une !
2) on masque des cellules (ou des plages) en utilisant la propriété hidden (que l'on met à True) ...

____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
239
Ah oui : et :
3) on ne sélectionne ni active une feuille pour pointer sur elle et ses cellules ! on pointe directement en se référant à la feuille et à la ou les cellule(s) concernée(s).


____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est