Cacher des colonnes

mistersaku Messages postés 38 Date d'inscription samedi 17 février 2007 Statut Membre Dernière intervention 21 octobre 2010 - 19 févr. 2007 à 15:04
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 - 20 févr. 2007 à 15:48
Encore une petite question, j'essaie de cacher les colonnes dans lesquelles apparait "X". En clair des que je mets un "X"sur la ligne 1 la colonne est cache. Si "X" dans D1 la colonne D doit etre cache. J'ai essaye ca mais ca ne fonctionne pas:


 Dim j As Long


For j = 1 To 10
If Worksheets("Sheet1").Range(j & "A").Text = "x" Then
       ActiveWorkbook.Worksheets("Sheet1").Range(j & "A").EntireColumn.Hidden = True


End If


Next j


End Sub

10 réponses

jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
19 févr. 2007 à 15:49
Salut,

ActiveWorkbook.Worksheets("Sheet1").Range(D1").EntireColumn.Hidden = True devrait fonctionne

Si cela ne fonctionne pas c'est que tu as fait une erreur quelque part.
NOTE: en comparaison de chaine x <> X   => essaie ce savoir si tu veux que ta recherche soit sensible  à la casse.
De plus dans le code que tu as posté ci dessus, Range(j & "A") ne veux rien Range("1A") n'existe pas.

Il faut donc bien savoir ce que tu cherches à faire. car dans la boucle il semblerait que tu essaie de vérifier les valeur contenu dans la colonne A alors que tu expose un exemple avec la colonne D

@+: =89254 Ju£i?n
Pensez: Réponse acceptée
0
mistersaku Messages postés 38 Date d'inscription samedi 17 février 2007 Statut Membre Dernière intervention 21 octobre 2010
19 févr. 2007 à 18:02
A vrai dire je ne sais pas comment m'y prendre. J'aimerais faire un programme qui verifie la case A1, B1, C1, D1, E1,...... et des qu'il y a le lettre "X" cacher cette colonne ou inversement quand la case et vide cacher la colonne. Je sais comment faire un compteur sur les lignes mais pas les colonnes.
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
20 févr. 2007 à 08:43
Salut,
Essaie ceci.

'Numero de la ligne
Dim NumLigne As Long
'Range Tampon
Dim UnCell As Range
'De la ligne 1 à 10
For NumLigne = 1 To 10
   'Pour chaque cellule dans la selection A1:E1 (si numligne = 1)
   For Each UnCell In ActiveWorkbook.ActiveSheet.Range("A" & NumLigne & ":E" & NumLigne)
       'Si Cellule = X ou cellule Vide alors       If UCase(UnCell.Text) "X" Or UnCell.Text vbNullString Then
           'On Cache la colonne entiere
           UnCell.EntireColumn.Hidden = True
       End If
   Next UnCell
Next NumLigne, ----
[code.aspx?ID=41455 By Renfield]

@+: Ju£i?n
Pensez: Réponse acceptée
0
mistersaku Messages postés 38 Date d'inscription samedi 17 février 2007 Statut Membre Dernière intervention 21 octobre 2010
20 févr. 2007 à 10:51
Incroyable, ca marche. Je te remercie tu me retires une belle epine du pied.
J'ai juste change
 
For NumLigne = 1 To 1

Mais en fait je n'es pas du etre tres clair parce que je n'etais interesse que par une ligne mais je me servirais plus tard de ce programme donc ce n'est pas une perte de temps.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
20 févr. 2007 à 11:06
Salut,
Si tu estimes que ton problème est résolu, s'il te plait, pense à appuyer sur réponse acceptée sur le ou les posts qui ont pu t'aider à avancer.

@+: Ju£i?n
Pensez: Réponse acceptée
0
mistersaku Messages postés 38 Date d'inscription samedi 17 février 2007 Statut Membre Dernière intervention 21 octobre 2010
20 févr. 2007 à 11:48
J'etais en train de tester ton programme sur mon document excel et j'ai un message d'erreur. Run time error '1004' Unable to set the hidden property of the range class.

Ce que je ne t'ai pas dit c'est que le document utilise toutes les colonnes de excel je vais de de A a IV. Le probleme vient peut etre de la. Ca fonctionne jusque DB.
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
20 févr. 2007 à 13:20
Salut,

Je ne vois pas le problème... moi je viens de testé et il y arrive (sauf pour IV) je te l'accorde.

Est ce que tu as des controles insérés directement sur la feuille. moi j'ai un bouton.
En revanche si je teste avec aucun controle sur la feuille  il arrive bien a tout cacher. peu etre qu il ne peux cacher les colonne qui contiennent des controles.

@+: Ju£i?n
Pensez: Réponse acceptée
0
mistersaku Messages postés 38 Date d'inscription samedi 17 février 2007 Statut Membre Dernière intervention 21 octobre 2010
20 févr. 2007 à 13:58
J'ai effectivement fait le test aussi, sur une feuille vierge tout marche tres bien mais pas sur mon document. J'ai toujours l'erreur '1004'. Le programme se bloque toujours.
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
20 févr. 2007 à 14:13
Salut,

Vu que je ne peux pas deviner ce que possède ton document, je peux te proposer de l'envoyer ici epsylon9@gmail.com
Si ton document n'est pas "top secret" bien évidement. et j'essaierai de voir cela vite fait.

@+: Ju£i?n
Pensez: Réponse acceptée
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
20 févr. 2007 à 15:48
Re,
Il faut que tu essaie d'épurer au maximum peu etre que cela fonctionera. car il semble que lorsqu il y a des controles sur la feuille cela foire.
Ou alors trouver une autre solution

@+: Ju£i?n
Pensez: Réponse acceptée
0
Rejoignez-nous