Bonjour,
j'ai un fichier avec beaucoup de feuilles.
Au début, un userform me permet soit de tout afficher (70 pages), soit de
n'afficher que les 13 pages de l'année voulue (il y a 5 années, soit 65
pages).
Lorsque je sélectionne une année, soit 13 pages en visuel, je voudrais que
pour chacune des 12 premières pages, si la celulle C8 est plus vielle de 30
jours par rapport à la date système, alors la feuille en question se
vérouille.
Je pensais à un truc du style:
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Next
Sheets(i).protect = True
End If
End Sub
Pourquoi ça ne marche pas?
Merci
YANN
Bonjour,
j'ai un fichier avec beaucoup de feuilles.
Au début, un userform me permet soit de tout afficher (70 pages), soit de
n'afficher que les 13 pages de l'année voulue (il y a 5 années, soit 65
pages).
Lorsque je sélectionne une année, soit 13 pages en visuel, je voudrais que
pour chacune des 12 premières pages, si la celulle C8 est plus vielle de 30
jours par rapport à la date système, alors la feuille en question se
vérouille.
Je pensais à un truc du style:
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Next
Sheets(i).protect = True
End If
End Sub
Pourquoi ça ne marche pas?
Merci
YANN
Bonjour,
j'ai un fichier avec beaucoup de feuilles.
Au début, un userform me permet soit de tout afficher (70 pages), soit de
n'afficher que les 13 pages de l'année voulue (il y a 5 années, soit 65
pages).
Lorsque je sélectionne une année, soit 13 pages en visuel, je voudrais que
pour chacune des 12 premières pages, si la celulle C8 est plus vielle de 30
jours par rapport à la date système, alors la feuille en question se
vérouille.
Je pensais à un truc du style:
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Next
Sheets(i).protect = True
End If
End Sub
Pourquoi ça ne marche pas?
Merci
YANN
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Sheets(i).protect = True
'et non pas là
End If
Next '-----------ici
End Sub
Bonjour,
j'ai un fichier avec beaucoup de feuilles.
Au début, un userform me permet soit de tout afficher (70 pages), soit
de
n'afficher que les 13 pages de l'année voulue (il y a 5 années, soit 65
pages).
Lorsque je sélectionne une année, soit 13 pages en visuel, je voudrais
que
pour chacune des 12 premières pages, si la celulle C8 est plus vielle de
30
jours par rapport à la date système, alors la feuille en question se
vérouille.
Je pensais à un truc du style:
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Next
Sheets(i).protect = True
End If
End Sub
Pourquoi ça ne marche pas?
Merci
YANN
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Sheets(i).protect = True
'et non pas là
End If
Next '-----------ici
End Sub
Bonjour,
j'ai un fichier avec beaucoup de feuilles.
Au début, un userform me permet soit de tout afficher (70 pages), soit
de
n'afficher que les 13 pages de l'année voulue (il y a 5 années, soit 65
pages).
Lorsque je sélectionne une année, soit 13 pages en visuel, je voudrais
que
pour chacune des 12 premières pages, si la celulle C8 est plus vielle de
30
jours par rapport à la date système, alors la feuille en question se
vérouille.
Je pensais à un truc du style:
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Next
Sheets(i).protect = True
End If
End Sub
Pourquoi ça ne marche pas?
Merci
YANN
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Sheets(i).protect = True
'et non pas là
End If
Next '-----------ici
End Sub
Bonjour,
j'ai un fichier avec beaucoup de feuilles.
Au début, un userform me permet soit de tout afficher (70 pages), soit
de
n'afficher que les 13 pages de l'année voulue (il y a 5 années, soit 65
pages).
Lorsque je sélectionne une année, soit 13 pages en visuel, je voudrais
que
pour chacune des 12 premières pages, si la celulle C8 est plus vielle de
30
jours par rapport à la date système, alors la feuille en question se
vérouille.
Je pensais à un truc du style:
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Next
Sheets(i).protect = True
End If
End Sub
Pourquoi ça ne marche pas?
Merci
YANN
Re....
Personnellement je mettrai le next ici:Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Sheets(i).protect = True
'et non pas làEnd If
Next '-----------ici
End Sub
Salutations
JJ
"YANN24" a écrit dans le message de
news:Bonjour,
j'ai un fichier avec beaucoup de feuilles.
Au début, un userform me permet soit de tout afficher (70 pages),
soit
den'afficher que les 13 pages de l'année voulue (il y a 5 années, soit
65
pages).
Lorsque je sélectionne une année, soit 13 pages en visuel, je
voudrais
quepour chacune des 12 premières pages, si la celulle C8 est plus
vielle de
30jours par rapport à la date système, alors la feuille en question se
vérouille.
Je pensais à un truc du style:
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Next
Sheets(i).protect = True
End If
End Sub
Pourquoi ça ne marche pas?
Merci
YANN
Re....
Personnellement je mettrai le next ici:
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Sheets(i).protect = True
'et non pas là
End If
Next '-----------ici
End Sub
Salutations
JJ
"YANN24" <YANN24@discussions.microsoft.com> a écrit dans le message de
news:A5EDEDD2-36C1-4FCA-9648-9607D44F0076@microsoft.com...
Bonjour,
j'ai un fichier avec beaucoup de feuilles.
Au début, un userform me permet soit de tout afficher (70 pages),
soit
de
n'afficher que les 13 pages de l'année voulue (il y a 5 années, soit
65
pages).
Lorsque je sélectionne une année, soit 13 pages en visuel, je
voudrais
que
pour chacune des 12 premières pages, si la celulle C8 est plus
vielle de
30
jours par rapport à la date système, alors la feuille en question se
vérouille.
Je pensais à un truc du style:
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Next
Sheets(i).protect = True
End If
End Sub
Pourquoi ça ne marche pas?
Merci
YANN
Re....
Personnellement je mettrai le next ici:Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Sheets(i).protect = True
'et non pas làEnd If
Next '-----------ici
End Sub
Salutations
JJ
"YANN24" a écrit dans le message de
news:Bonjour,
j'ai un fichier avec beaucoup de feuilles.
Au début, un userform me permet soit de tout afficher (70 pages),
soit
den'afficher que les 13 pages de l'année voulue (il y a 5 années, soit
65
pages).
Lorsque je sélectionne une année, soit 13 pages en visuel, je
voudrais
quepour chacune des 12 premières pages, si la celulle C8 est plus
vielle de
30jours par rapport à la date système, alors la feuille en question se
vérouille.
Je pensais à un truc du style:
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Next
Sheets(i).protect = True
End If
End Sub
Pourquoi ça ne marche pas?
Merci
YANN
bonjour Yann24,
tu pourrais ajouter des lignes pour vérifier les variables, et attention
il y a une parenthèse de trop à la fin de la formule.
Sub bouh()
For i = 1 To 12
MsgBox "i = " & i
MsgBox "feuille " & Sheets(i).Name
MsgBox "la valeur de la formule = " & _
(DateDiff("d", Now, Sheets(i).[C8]))
If (DateDiff("d", Now, Sheets(i).[C8])) < -30 Then
Next
Sheets(i).Protect = True
End If
End Sub
isabelleBonjour,
j'ai un fichier avec beaucoup de feuilles.
Au début, un userform me permet soit de tout afficher (70 pages), soit de
n'afficher que les 13 pages de l'année voulue (il y a 5 années, soit 65
pages).
Lorsque je sélectionne une année, soit 13 pages en visuel, je voudrais que
pour chacune des 12 premières pages, si la celulle C8 est plus vielle de 30
jours par rapport à la date système, alors la feuille en question se
vérouille.
Je pensais à un truc du style:
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Next
Sheets(i).protect = True
End If
End Sub
Pourquoi ça ne marche pas?
Merci
YANN
bonjour Yann24,
tu pourrais ajouter des lignes pour vérifier les variables, et attention
il y a une parenthèse de trop à la fin de la formule.
Sub bouh()
For i = 1 To 12
MsgBox "i = " & i
MsgBox "feuille " & Sheets(i).Name
MsgBox "la valeur de la formule = " & _
(DateDiff("d", Now, Sheets(i).[C8]))
If (DateDiff("d", Now, Sheets(i).[C8])) < -30 Then
Next
Sheets(i).Protect = True
End If
End Sub
isabelle
Bonjour,
j'ai un fichier avec beaucoup de feuilles.
Au début, un userform me permet soit de tout afficher (70 pages), soit de
n'afficher que les 13 pages de l'année voulue (il y a 5 années, soit 65
pages).
Lorsque je sélectionne une année, soit 13 pages en visuel, je voudrais que
pour chacune des 12 premières pages, si la celulle C8 est plus vielle de 30
jours par rapport à la date système, alors la feuille en question se
vérouille.
Je pensais à un truc du style:
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Next
Sheets(i).protect = True
End If
End Sub
Pourquoi ça ne marche pas?
Merci
YANN
bonjour Yann24,
tu pourrais ajouter des lignes pour vérifier les variables, et attention
il y a une parenthèse de trop à la fin de la formule.
Sub bouh()
For i = 1 To 12
MsgBox "i = " & i
MsgBox "feuille " & Sheets(i).Name
MsgBox "la valeur de la formule = " & _
(DateDiff("d", Now, Sheets(i).[C8]))
If (DateDiff("d", Now, Sheets(i).[C8])) < -30 Then
Next
Sheets(i).Protect = True
End If
End Sub
isabelleBonjour,
j'ai un fichier avec beaucoup de feuilles.
Au début, un userform me permet soit de tout afficher (70 pages), soit de
n'afficher que les 13 pages de l'année voulue (il y a 5 années, soit 65
pages).
Lorsque je sélectionne une année, soit 13 pages en visuel, je voudrais que
pour chacune des 12 premières pages, si la celulle C8 est plus vielle de 30
jours par rapport à la date système, alors la feuille en question se
vérouille.
Je pensais à un truc du style:
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Next
Sheets(i).protect = True
End If
End Sub
Pourquoi ça ne marche pas?
Merci
YANN
bonjour Yann24,
tu pourrais ajouter des lignes pour vérifier les variables, et attention
il y a une parenthèse de trop à la fin de la formule.
Sub bouh()
For i = 1 To 12
MsgBox "i = " & i
MsgBox "feuille " & Sheets(i).Name
MsgBox "la valeur de la formule = " & _
(DateDiff("d", Now, Sheets(i).[C8]))
If (DateDiff("d", Now, Sheets(i).[C8])) < -30 Then
Next
Sheets(i).Protect = True
End If
End Sub
isabelleBonjour,
j'ai un fichier avec beaucoup de feuilles.
Au début, un userform me permet soit de tout afficher (70 pages), soit de
n'afficher que les 13 pages de l'année voulue (il y a 5 années, soit 65
pages).
Lorsque je sélectionne une année, soit 13 pages en visuel, je voudrais que
pour chacune des 12 premières pages, si la celulle C8 est plus vielle de 30
jours par rapport à la date système, alors la feuille en question se
vérouille.
Je pensais à un truc du style:
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Next
Sheets(i).protect = True
End If
End Sub
Pourquoi ça ne marche pas?
Merci
YANN
bonjour Yann24,
tu pourrais ajouter des lignes pour vérifier les variables, et attention
il y a une parenthèse de trop à la fin de la formule.
Sub bouh()
For i = 1 To 12
MsgBox "i = " & i
MsgBox "feuille " & Sheets(i).Name
MsgBox "la valeur de la formule = " & _
(DateDiff("d", Now, Sheets(i).[C8]))
If (DateDiff("d", Now, Sheets(i).[C8])) < -30 Then
Next
Sheets(i).Protect = True
End If
End Sub
isabelle
Bonjour,
j'ai un fichier avec beaucoup de feuilles.
Au début, un userform me permet soit de tout afficher (70 pages), soit de
n'afficher que les 13 pages de l'année voulue (il y a 5 années, soit 65
pages).
Lorsque je sélectionne une année, soit 13 pages en visuel, je voudrais que
pour chacune des 12 premières pages, si la celulle C8 est plus vielle de 30
jours par rapport à la date système, alors la feuille en question se
vérouille.
Je pensais à un truc du style:
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Next
Sheets(i).protect = True
End If
End Sub
Pourquoi ça ne marche pas?
Merci
YANN
bonjour Yann24,
tu pourrais ajouter des lignes pour vérifier les variables, et attention
il y a une parenthèse de trop à la fin de la formule.
Sub bouh()
For i = 1 To 12
MsgBox "i = " & i
MsgBox "feuille " & Sheets(i).Name
MsgBox "la valeur de la formule = " & _
(DateDiff("d", Now, Sheets(i).[C8]))
If (DateDiff("d", Now, Sheets(i).[C8])) < -30 Then
Next
Sheets(i).Protect = True
End If
End Sub
isabelleBonjour,
j'ai un fichier avec beaucoup de feuilles.
Au début, un userform me permet soit de tout afficher (70 pages), soit de
n'afficher que les 13 pages de l'année voulue (il y a 5 années, soit 65
pages).
Lorsque je sélectionne une année, soit 13 pages en visuel, je voudrais que
pour chacune des 12 premières pages, si la celulle C8 est plus vielle de 30
jours par rapport à la date système, alors la feuille en question se
vérouille.
Je pensais à un truc du style:
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Next
Sheets(i).protect = True
End If
End Sub
Pourquoi ça ne marche pas?
Merci
YANN
re,
en fait, c'est le next qu'il fallait placer avant le 'If, OK
Par contre, il ne prend pas en compte les feuilles visibles.
C'est pour ça que je préfèrerai adapter la macro que je t'ai donné
précédemment.
Si tu paux m'aider.
Merci.
YANNbonjour Yann24,
tu pourrais ajouter des lignes pour vérifier les variables, et attention
il y a une parenthèse de trop à la fin de la formule.
Sub bouh()
For i = 1 To 12
MsgBox "i = " & i
MsgBox "feuille " & Sheets(i).Name
MsgBox "la valeur de la formule = " & _
(DateDiff("d", Now, Sheets(i).[C8]))
If (DateDiff("d", Now, Sheets(i).[C8])) < -30 Then
Next
Sheets(i).Protect = True
End If
End Sub
isabelleBonjour,
j'ai un fichier avec beaucoup de feuilles.
Au début, un userform me permet soit de tout afficher (70 pages), soit
de
n'afficher que les 13 pages de l'année voulue (il y a 5 années, soit
65
pages).
Lorsque je sélectionne une année, soit 13 pages en visuel, je voudrais
que
pour chacune des 12 premières pages, si la celulle C8 est plus vielle
de 30
jours par rapport à la date système, alors la feuille en question se
vérouille.
Je pensais à un truc du style:
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Next
Sheets(i).protect = True
End If
End Sub
Pourquoi ça ne marche pas?
Merci
YANN
re,
en fait, c'est le next qu'il fallait placer avant le 'If, OK
Par contre, il ne prend pas en compte les feuilles visibles.
C'est pour ça que je préfèrerai adapter la macro que je t'ai donné
précédemment.
Si tu paux m'aider.
Merci.
YANN
bonjour Yann24,
tu pourrais ajouter des lignes pour vérifier les variables, et attention
il y a une parenthèse de trop à la fin de la formule.
Sub bouh()
For i = 1 To 12
MsgBox "i = " & i
MsgBox "feuille " & Sheets(i).Name
MsgBox "la valeur de la formule = " & _
(DateDiff("d", Now, Sheets(i).[C8]))
If (DateDiff("d", Now, Sheets(i).[C8])) < -30 Then
Next
Sheets(i).Protect = True
End If
End Sub
isabelle
Bonjour,
j'ai un fichier avec beaucoup de feuilles.
Au début, un userform me permet soit de tout afficher (70 pages), soit
de
n'afficher que les 13 pages de l'année voulue (il y a 5 années, soit
65
pages).
Lorsque je sélectionne une année, soit 13 pages en visuel, je voudrais
que
pour chacune des 12 premières pages, si la celulle C8 est plus vielle
de 30
jours par rapport à la date système, alors la feuille en question se
vérouille.
Je pensais à un truc du style:
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Next
Sheets(i).protect = True
End If
End Sub
Pourquoi ça ne marche pas?
Merci
YANN
re,
en fait, c'est le next qu'il fallait placer avant le 'If, OK
Par contre, il ne prend pas en compte les feuilles visibles.
C'est pour ça que je préfèrerai adapter la macro que je t'ai donné
précédemment.
Si tu paux m'aider.
Merci.
YANNbonjour Yann24,
tu pourrais ajouter des lignes pour vérifier les variables, et attention
il y a une parenthèse de trop à la fin de la formule.
Sub bouh()
For i = 1 To 12
MsgBox "i = " & i
MsgBox "feuille " & Sheets(i).Name
MsgBox "la valeur de la formule = " & _
(DateDiff("d", Now, Sheets(i).[C8]))
If (DateDiff("d", Now, Sheets(i).[C8])) < -30 Then
Next
Sheets(i).Protect = True
End If
End Sub
isabelleBonjour,
j'ai un fichier avec beaucoup de feuilles.
Au début, un userform me permet soit de tout afficher (70 pages), soit
de
n'afficher que les 13 pages de l'année voulue (il y a 5 années, soit
65
pages).
Lorsque je sélectionne une année, soit 13 pages en visuel, je voudrais
que
pour chacune des 12 premières pages, si la celulle C8 est plus vielle
de 30
jours par rapport à la date système, alors la feuille en question se
vérouille.
Je pensais à un truc du style:
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Next
Sheets(i).protect = True
End If
End Sub
Pourquoi ça ne marche pas?
Merci
YANN
Bonjour.
Voici qui tient compte de toutes les feuilles visibles:
Sub bouh()
For i = 1 To Sheets.Count
If Sheets(i).Visible = True Then
If (DateDiff("d", Now, Sheets(i).[C8])) < -30 Then
Sheets(i).Protect = True
Else
Sheets(i).Protect = False
End If
End If
Next
End Sub
docm
"YANN24" a écrit dans le message news:re,
en fait, c'est le next qu'il fallait placer avant le 'If, OK
Par contre, il ne prend pas en compte les feuilles visibles.
C'est pour ça que je préfèrerai adapter la macro que je t'ai donné
précédemment.
Si tu paux m'aider.
Merci.
YANNbonjour Yann24,
tu pourrais ajouter des lignes pour vérifier les variables, et
attention
il y a une parenthèse de trop à la fin de la formule.
Sub bouh()
For i = 1 To 12
MsgBox "i = " & i
MsgBox "feuille " & Sheets(i).Name
MsgBox "la valeur de la formule = " & _
(DateDiff("d", Now, Sheets(i).[C8]))
If (DateDiff("d", Now, Sheets(i).[C8])) < -30 Then
Next
Sheets(i).Protect = True
End If
End Sub
isabelleBonjour,
j'ai un fichier avec beaucoup de feuilles.
Au début, un userform me permet soit de tout afficher (70 pages),
soit
den'afficher que les 13 pages de l'année voulue (il y a 5 années, soit
65pages).
Lorsque je sélectionne une année, soit 13 pages en visuel, je
voudrais
quepour chacune des 12 premières pages, si la celulle C8 est plus
vielle
de 30jours par rapport à la date système, alors la feuille en question se
vérouille.
Je pensais à un truc du style:
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Next
Sheets(i).protect = True
End If
End Sub
Pourquoi ça ne marche pas?
Merci
YANN
Bonjour.
Voici qui tient compte de toutes les feuilles visibles:
Sub bouh()
For i = 1 To Sheets.Count
If Sheets(i).Visible = True Then
If (DateDiff("d", Now, Sheets(i).[C8])) < -30 Then
Sheets(i).Protect = True
Else
Sheets(i).Protect = False
End If
End If
Next
End Sub
docm
"YANN24" <YANN24@discussions.microsoft.com> a écrit dans le message news:
AA3FB11F-5798-481B-87F1-9821988DE69E@microsoft.com...
re,
en fait, c'est le next qu'il fallait placer avant le 'If, OK
Par contre, il ne prend pas en compte les feuilles visibles.
C'est pour ça que je préfèrerai adapter la macro que je t'ai donné
précédemment.
Si tu paux m'aider.
Merci.
YANN
bonjour Yann24,
tu pourrais ajouter des lignes pour vérifier les variables, et
attention
il y a une parenthèse de trop à la fin de la formule.
Sub bouh()
For i = 1 To 12
MsgBox "i = " & i
MsgBox "feuille " & Sheets(i).Name
MsgBox "la valeur de la formule = " & _
(DateDiff("d", Now, Sheets(i).[C8]))
If (DateDiff("d", Now, Sheets(i).[C8])) < -30 Then
Next
Sheets(i).Protect = True
End If
End Sub
isabelle
Bonjour,
j'ai un fichier avec beaucoup de feuilles.
Au début, un userform me permet soit de tout afficher (70 pages),
soit
de
n'afficher que les 13 pages de l'année voulue (il y a 5 années, soit
65
pages).
Lorsque je sélectionne une année, soit 13 pages en visuel, je
voudrais
que
pour chacune des 12 premières pages, si la celulle C8 est plus
vielle
de 30
jours par rapport à la date système, alors la feuille en question se
vérouille.
Je pensais à un truc du style:
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Next
Sheets(i).protect = True
End If
End Sub
Pourquoi ça ne marche pas?
Merci
YANN
Bonjour.
Voici qui tient compte de toutes les feuilles visibles:
Sub bouh()
For i = 1 To Sheets.Count
If Sheets(i).Visible = True Then
If (DateDiff("d", Now, Sheets(i).[C8])) < -30 Then
Sheets(i).Protect = True
Else
Sheets(i).Protect = False
End If
End If
Next
End Sub
docm
"YANN24" a écrit dans le message news:re,
en fait, c'est le next qu'il fallait placer avant le 'If, OK
Par contre, il ne prend pas en compte les feuilles visibles.
C'est pour ça que je préfèrerai adapter la macro que je t'ai donné
précédemment.
Si tu paux m'aider.
Merci.
YANNbonjour Yann24,
tu pourrais ajouter des lignes pour vérifier les variables, et
attention
il y a une parenthèse de trop à la fin de la formule.
Sub bouh()
For i = 1 To 12
MsgBox "i = " & i
MsgBox "feuille " & Sheets(i).Name
MsgBox "la valeur de la formule = " & _
(DateDiff("d", Now, Sheets(i).[C8]))
If (DateDiff("d", Now, Sheets(i).[C8])) < -30 Then
Next
Sheets(i).Protect = True
End If
End Sub
isabelleBonjour,
j'ai un fichier avec beaucoup de feuilles.
Au début, un userform me permet soit de tout afficher (70 pages),
soit
den'afficher que les 13 pages de l'année voulue (il y a 5 années, soit
65pages).
Lorsque je sélectionne une année, soit 13 pages en visuel, je
voudrais
quepour chacune des 12 premières pages, si la celulle C8 est plus
vielle
de 30jours par rapport à la date système, alors la feuille en question se
vérouille.
Je pensais à un truc du style:
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Next
Sheets(i).protect = True
End If
End Sub
Pourquoi ça ne marche pas?
Merci
YANN
Re..re
A moins de mettre le "if" sur une ligne...
'-------
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then Sheets(i).protect > True
Next
'----------
JJ
"Jacky" a écrit dans le message
de news:O%Re....
Personnellement je mettrai le next ici:Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Sheets(i).protect = True
'et non pas làEnd If
Next '-----------ici
End Sub
Salutations
JJ
"YANN24" a écrit dans le message de
news:Bonjour,
j'ai un fichier avec beaucoup de feuilles.
Au début, un userform me permet soit de tout afficher (70 pages),
soitden'afficher que les 13 pages de l'année voulue (il y a 5 années, soit
65pages).
Lorsque je sélectionne une année, soit 13 pages en visuel, je
voudraisquepour chacune des 12 premières pages, si la celulle C8 est plus
vielle de30jours par rapport à la date système, alors la feuille en question se
vérouille.
Je pensais à un truc du style:
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Next
Sheets(i).protect = True
End If
End Sub
Pourquoi ça ne marche pas?
Merci
YANN
Re..re
A moins de mettre le "if" sur une ligne...
'-------
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then Sheets(i).protect > True
Next
'----------
JJ
"Jacky" <delaenlevezjusquiciJacky.jaeg@Wbidon.fr> a écrit dans le message
de news:O%23YBwgvWFHA.2692@TK2MSFTNGP15.phx.gbl...
Re....
Personnellement je mettrai le next ici:
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Sheets(i).protect = True
'et non pas là
End If
Next '-----------ici
End Sub
Salutations
JJ
"YANN24" <YANN24@discussions.microsoft.com> a écrit dans le message de
news:A5EDEDD2-36C1-4FCA-9648-9607D44F0076@microsoft.com...
Bonjour,
j'ai un fichier avec beaucoup de feuilles.
Au début, un userform me permet soit de tout afficher (70 pages),
soit
de
n'afficher que les 13 pages de l'année voulue (il y a 5 années, soit
65
pages).
Lorsque je sélectionne une année, soit 13 pages en visuel, je
voudrais
que
pour chacune des 12 premières pages, si la celulle C8 est plus
vielle de
30
jours par rapport à la date système, alors la feuille en question se
vérouille.
Je pensais à un truc du style:
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Next
Sheets(i).protect = True
End If
End Sub
Pourquoi ça ne marche pas?
Merci
YANN
Re..re
A moins de mettre le "if" sur une ligne...
'-------
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then Sheets(i).protect > True
Next
'----------
JJ
"Jacky" a écrit dans le message
de news:O%Re....
Personnellement je mettrai le next ici:Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Sheets(i).protect = True
'et non pas làEnd If
Next '-----------ici
End Sub
Salutations
JJ
"YANN24" a écrit dans le message de
news:Bonjour,
j'ai un fichier avec beaucoup de feuilles.
Au début, un userform me permet soit de tout afficher (70 pages),
soitden'afficher que les 13 pages de l'année voulue (il y a 5 années, soit
65pages).
Lorsque je sélectionne une année, soit 13 pages en visuel, je
voudraisquepour chacune des 12 premières pages, si la celulle C8 est plus
vielle de30jours par rapport à la date système, alors la feuille en question se
vérouille.
Je pensais à un truc du style:
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Next
Sheets(i).protect = True
End If
End Sub
Pourquoi ça ne marche pas?
Merci
YANN
Remplacer Sheets(i).Protect = True
par Sheets(i).Protect True
"docm" a écrit dans le message news:Bonjour.
Voici qui tient compte de toutes les feuilles visibles:
Sub bouh()
For i = 1 To Sheets.Count
If Sheets(i).Visible = True Then
If (DateDiff("d", Now, Sheets(i).[C8])) < -30 Then
Sheets(i).Protect = True
Else
Sheets(i).Protect = False
End If
End If
Next
End Sub
docm
"YANN24" a écrit dans le message news:re,
en fait, c'est le next qu'il fallait placer avant le 'If, OK
Par contre, il ne prend pas en compte les feuilles visibles.
C'est pour ça que je préfèrerai adapter la macro que je t'ai donné
précédemment.
Si tu paux m'aider.
Merci.
YANNbonjour Yann24,
tu pourrais ajouter des lignes pour vérifier les variables, et
attentionil y a une parenthèse de trop à la fin de la formule.
Sub bouh()
For i = 1 To 12
MsgBox "i = " & i
MsgBox "feuille " & Sheets(i).Name
MsgBox "la valeur de la formule = " & _
(DateDiff("d", Now, Sheets(i).[C8]))
If (DateDiff("d", Now, Sheets(i).[C8])) < -30 Then
Next
Sheets(i).Protect = True
End If
End Sub
isabelleBonjour,
j'ai un fichier avec beaucoup de feuilles.
Au début, un userform me permet soit de tout afficher (70 pages),
soitden'afficher que les 13 pages de l'année voulue (il y a 5 années, soit
65pages).
Lorsque je sélectionne une année, soit 13 pages en visuel, je
voudraisquepour chacune des 12 premières pages, si la celulle C8 est plus
viellede 30jours par rapport à la date système, alors la feuille en question se
vérouille.
Je pensais à un truc du style:
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Next
Sheets(i).protect = True
End If
End Sub
Pourquoi ça ne marche pas?
Merci
YANN
Remplacer Sheets(i).Protect = True
par Sheets(i).Protect True
"docm" <docmarti@spamcolba.net> a écrit dans le message news:
eUhUjYxWFHA.2664@TK2MSFTNGP15.phx.gbl...
Bonjour.
Voici qui tient compte de toutes les feuilles visibles:
Sub bouh()
For i = 1 To Sheets.Count
If Sheets(i).Visible = True Then
If (DateDiff("d", Now, Sheets(i).[C8])) < -30 Then
Sheets(i).Protect = True
Else
Sheets(i).Protect = False
End If
End If
Next
End Sub
docm
"YANN24" <YANN24@discussions.microsoft.com> a écrit dans le message news:
AA3FB11F-5798-481B-87F1-9821988DE69E@microsoft.com...
re,
en fait, c'est le next qu'il fallait placer avant le 'If, OK
Par contre, il ne prend pas en compte les feuilles visibles.
C'est pour ça que je préfèrerai adapter la macro que je t'ai donné
précédemment.
Si tu paux m'aider.
Merci.
YANN
bonjour Yann24,
tu pourrais ajouter des lignes pour vérifier les variables, et
attention
il y a une parenthèse de trop à la fin de la formule.
Sub bouh()
For i = 1 To 12
MsgBox "i = " & i
MsgBox "feuille " & Sheets(i).Name
MsgBox "la valeur de la formule = " & _
(DateDiff("d", Now, Sheets(i).[C8]))
If (DateDiff("d", Now, Sheets(i).[C8])) < -30 Then
Next
Sheets(i).Protect = True
End If
End Sub
isabelle
Bonjour,
j'ai un fichier avec beaucoup de feuilles.
Au début, un userform me permet soit de tout afficher (70 pages),
soit
de
n'afficher que les 13 pages de l'année voulue (il y a 5 années, soit
65
pages).
Lorsque je sélectionne une année, soit 13 pages en visuel, je
voudrais
que
pour chacune des 12 premières pages, si la celulle C8 est plus
vielle
de 30
jours par rapport à la date système, alors la feuille en question se
vérouille.
Je pensais à un truc du style:
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Next
Sheets(i).protect = True
End If
End Sub
Pourquoi ça ne marche pas?
Merci
YANN
Remplacer Sheets(i).Protect = True
par Sheets(i).Protect True
"docm" a écrit dans le message news:Bonjour.
Voici qui tient compte de toutes les feuilles visibles:
Sub bouh()
For i = 1 To Sheets.Count
If Sheets(i).Visible = True Then
If (DateDiff("d", Now, Sheets(i).[C8])) < -30 Then
Sheets(i).Protect = True
Else
Sheets(i).Protect = False
End If
End If
Next
End Sub
docm
"YANN24" a écrit dans le message news:re,
en fait, c'est le next qu'il fallait placer avant le 'If, OK
Par contre, il ne prend pas en compte les feuilles visibles.
C'est pour ça que je préfèrerai adapter la macro que je t'ai donné
précédemment.
Si tu paux m'aider.
Merci.
YANNbonjour Yann24,
tu pourrais ajouter des lignes pour vérifier les variables, et
attentionil y a une parenthèse de trop à la fin de la formule.
Sub bouh()
For i = 1 To 12
MsgBox "i = " & i
MsgBox "feuille " & Sheets(i).Name
MsgBox "la valeur de la formule = " & _
(DateDiff("d", Now, Sheets(i).[C8]))
If (DateDiff("d", Now, Sheets(i).[C8])) < -30 Then
Next
Sheets(i).Protect = True
End If
End Sub
isabelleBonjour,
j'ai un fichier avec beaucoup de feuilles.
Au début, un userform me permet soit de tout afficher (70 pages),
soitden'afficher que les 13 pages de l'année voulue (il y a 5 années, soit
65pages).
Lorsque je sélectionne une année, soit 13 pages en visuel, je
voudraisquepour chacune des 12 premières pages, si la celulle C8 est plus
viellede 30jours par rapport à la date système, alors la feuille en question se
vérouille.
Je pensais à un truc du style:
Sub bouh()
For i = 1 to 12
if (DateDiff("d", Now, Sheets(i).[C8])))<-30 Then
Next
Sheets(i).protect = True
End If
End Sub
Pourquoi ça ne marche pas?
Merci
YANN