pour éviter les pb du fait de l'absence de données en I10 et L10, ce
code met 0 si vide dans certaines feuilles (respecte les données et les
formules).
Cela semble fonctionner, mais y a t il plus élégant, allégé ?
Merci
J@@
'*****************
Sub MetZeroEnIetLdix()
Dim Feuille As Worksheet
Dim sht As Worksheet
Application.ScreenUpdating = False
On Error Resume Next
For Each Feuille In ActiveWorkbook.Worksheets '5 feuilles
If Feuille.Name <> "ListeFeuilles" _
And Feuille.Name <> "RapDoc" _
And Feuille.Name <> "Etat_" Then
Feuille.Select
For Each sht In ActiveWorkbook.Windows(1).SelectedSheets
ActiveSheet.Unprotect
If [i10].Value = "" Then [i10].Value = "0"
If [L10].Value = "" Then [L10].Value = "0"
ActiveSheet.Next.Select
Next sht
End If
Next Feuille
End Sub
'*****************
Bonjour, Pas sûr d'avoir compris ce que tu veux faire; peut-être :
Sub MetZeroEnIetLdix() Dim Feuille As Worksheet Dim sht As Worksheet Application.ScreenUpdating = False On Error Resume Next For Each Feuille In ActiveWorkbook.Worksheets '5 feuilles If Feuille.Name <> "ListeFeuilles" _ And Feuille.Name <> "RapDoc" _ And Feuille.Name <> "Etat_" Then With Feuille .Unprotect If .[i10].Value = "" Then .[i10].Value = "0" If .[L10].Value = "" Then .[L10].Value = "0" End With End If Next Feuille End Sub
Cordialement. Daniel
Bonjour à tous
pour éviter les pb du fait de l'absence de données en I10 et L10, ce code met 0 si vide dans certaines feuilles (respecte les données et les formules). Cela semble fonctionner, mais y a t il plus élégant, allégé ? Merci J@@ '***************** Sub MetZeroEnIetLdix() Dim Feuille As Worksheet Dim sht As Worksheet Application.ScreenUpdating = False On Error Resume Next For Each Feuille In ActiveWorkbook.Worksheets '5 feuilles If Feuille.Name <> "ListeFeuilles" _ And Feuille.Name <> "RapDoc" _ And Feuille.Name <> "Etat_" Then Feuille.Select For Each sht In ActiveWorkbook.Windows(1).SelectedSheets ActiveSheet.Unprotect If [i10].Value = "" Then [i10].Value = "0" If [L10].Value = "" Then [L10].Value = "0" ActiveSheet.Next.Select Next sht End If Next Feuille End Sub '*****************
Bonjour,
Pas sûr d'avoir compris ce que tu veux faire; peut-être :
Sub MetZeroEnIetLdix()
Dim Feuille As Worksheet
Dim sht As Worksheet
Application.ScreenUpdating = False
On Error Resume Next
For Each Feuille In ActiveWorkbook.Worksheets '5 feuilles
If Feuille.Name <> "ListeFeuilles" _
And Feuille.Name <> "RapDoc" _
And Feuille.Name <> "Etat_" Then
With Feuille
.Unprotect
If .[i10].Value = "" Then .[i10].Value = "0"
If .[L10].Value = "" Then .[L10].Value = "0"
End With
End If
Next Feuille
End Sub
Cordialement.
Daniel
Bonjour à tous
pour éviter les pb du fait de l'absence de données en I10 et L10, ce code met
0 si vide dans certaines feuilles (respecte les données et les formules).
Cela semble fonctionner, mais y a t il plus élégant, allégé ?
Merci
J@@
'*****************
Sub MetZeroEnIetLdix()
Dim Feuille As Worksheet
Dim sht As Worksheet
Application.ScreenUpdating = False
On Error Resume Next
For Each Feuille In ActiveWorkbook.Worksheets '5 feuilles
If Feuille.Name <> "ListeFeuilles" _
And Feuille.Name <> "RapDoc" _
And Feuille.Name <> "Etat_" Then
Feuille.Select
For Each sht In ActiveWorkbook.Windows(1).SelectedSheets
ActiveSheet.Unprotect
If [i10].Value = "" Then [i10].Value = "0"
If [L10].Value = "" Then [L10].Value = "0"
ActiveSheet.Next.Select
Next sht
End If
Next Feuille
End Sub
'*****************
Bonjour, Pas sûr d'avoir compris ce que tu veux faire; peut-être :
Sub MetZeroEnIetLdix() Dim Feuille As Worksheet Dim sht As Worksheet Application.ScreenUpdating = False On Error Resume Next For Each Feuille In ActiveWorkbook.Worksheets '5 feuilles If Feuille.Name <> "ListeFeuilles" _ And Feuille.Name <> "RapDoc" _ And Feuille.Name <> "Etat_" Then With Feuille .Unprotect If .[i10].Value = "" Then .[i10].Value = "0" If .[L10].Value = "" Then .[L10].Value = "0" End With End If Next Feuille End Sub
Cordialement. Daniel
Bonjour à tous
pour éviter les pb du fait de l'absence de données en I10 et L10, ce code met 0 si vide dans certaines feuilles (respecte les données et les formules). Cela semble fonctionner, mais y a t il plus élégant, allégé ? Merci J@@ '***************** Sub MetZeroEnIetLdix() Dim Feuille As Worksheet Dim sht As Worksheet Application.ScreenUpdating = False On Error Resume Next For Each Feuille In ActiveWorkbook.Worksheets '5 feuilles If Feuille.Name <> "ListeFeuilles" _ And Feuille.Name <> "RapDoc" _ And Feuille.Name <> "Etat_" Then Feuille.Select For Each sht In ActiveWorkbook.Windows(1).SelectedSheets ActiveSheet.Unprotect If [i10].Value = "" Then [i10].Value = "0" If [L10].Value = "" Then [L10].Value = "0" ActiveSheet.Next.Select Next sht End If Next Feuille End Sub '*****************
LSteph
Bonjour,
Oui avec un select case
Cordialement
-- LSteph
On 29 mar, 06:18, "J@@" wrote:
Bonjour à tous
pour éviter les pb du fait de l'absence de données en I10 et L10, ce code met 0 si vide dans certaines feuilles (respecte les données et les formules). Cela semble fonctionner, mais y a t il plus élégant, allégé ? Merci J@@ '***************** Sub MetZeroEnIetLdix() Dim Feuille As Worksheet Dim sht As Worksheet Application.ScreenUpdating = False On Error Resume Next For Each Feuille In ActiveWorkbook.Worksheets '5 feuilles If Feuille.Name <> "ListeFeuilles" _ And Feuille.Name <> "RapDoc" _ And Feuille.Name <> "Etat_" Then Feuille.Select For Each sht In ActiveWorkbook.Windows(1).Sele ctedSheets ActiveSheet.Unprotect If [i10].Value = "" Then [i10].Value = "0" If [L10].Value = "" Then [L10].Value = "0" ActiveSheet.Next.Select Next sht End If Next Feuille End Sub '*****************
Bonjour,
Oui avec un select case
Cordialement
--
LSteph
On 29 mar, 06:18, "J@@" <k...@hy.gg> wrote:
Bonjour à tous
pour éviter les pb du fait de l'absence de données en I10 et L10, ce
code met 0 si vide dans certaines feuilles (respecte les données et les
formules).
Cela semble fonctionner, mais y a t il plus élégant, allégé ?
Merci
J@@
'*****************
Sub MetZeroEnIetLdix()
Dim Feuille As Worksheet
Dim sht As Worksheet
Application.ScreenUpdating = False
On Error Resume Next
For Each Feuille In ActiveWorkbook.Worksheets '5 feuilles
If Feuille.Name <> "ListeFeuilles" _
And Feuille.Name <> "RapDoc" _
And Feuille.Name <> "Etat_" Then
Feuille.Select
For Each sht In ActiveWorkbook.Windows(1).Sele ctedSheets
ActiveSheet.Unprotect
If [i10].Value = "" Then [i10].Value = "0"
If [L10].Value = "" Then [L10].Value = "0"
ActiveSheet.Next.Select
Next sht
End If
Next Feuille
End Sub
'*****************
pour éviter les pb du fait de l'absence de données en I10 et L10, ce code met 0 si vide dans certaines feuilles (respecte les données et les formules). Cela semble fonctionner, mais y a t il plus élégant, allégé ? Merci J@@ '***************** Sub MetZeroEnIetLdix() Dim Feuille As Worksheet Dim sht As Worksheet Application.ScreenUpdating = False On Error Resume Next For Each Feuille In ActiveWorkbook.Worksheets '5 feuilles If Feuille.Name <> "ListeFeuilles" _ And Feuille.Name <> "RapDoc" _ And Feuille.Name <> "Etat_" Then Feuille.Select For Each sht In ActiveWorkbook.Windows(1).Sele ctedSheets ActiveSheet.Unprotect If [i10].Value = "" Then [i10].Value = "0" If [L10].Value = "" Then [L10].Value = "0" ActiveSheet.Next.Select Next sht End If Next Feuille End Sub '*****************
J
Bonjour Daniel J'ai besoin que, dans pleins de feuilles semblables, si I10 et L10 ne contiennent pas de donnée, il y ait un 0.
Mon code fonctionne, mais je le trouve très balourd.
Le tien est nettement mieux, et fonctionne :-) mais faut que je rajoute ".Select" pour que cela marche.
For Each Feuille In ActiveWorkbook.Worksheets If Feuille.Name <> "ListeFeuilles" _ And Feuille.Name <> "RapDoc" _ And Feuille.Name <> "Etat_" Then With Feuille .Unprotect .Select '<=*****ajout If [i10].Value = "" Then [i10].Value = "0" If [L10].Value = "" Then [L10].Value = "0" End With End If Next Feuille
Merci Daniel. @+ J@@
Le 28/03/2011 21:15, DanielCo a écrit :
Bonjour, Pas sûr d'avoir compris ce que tu veux faire; peut-être :
Sub MetZeroEnIetLdix() Dim Feuille As Worksheet Dim sht As Worksheet Application.ScreenUpdating = False On Error Resume Next For Each Feuille In ActiveWorkbook.Worksheets '5 feuilles If Feuille.Name <> "ListeFeuilles" _ And Feuille.Name <> "RapDoc" _ And Feuille.Name <> "Etat_" Then With Feuille .Unprotect If .[i10].Value = "" Then .[i10].Value = "0" If .[L10].Value = "" Then .[L10].Value = "0" End With End If Next Feuille End Sub
Cordialement. Daniel
Bonjour à tous
pour éviter les pb du fait de l'absence de données en I10 et L10, ce code met 0 si vide dans certaines feuilles (respecte les données et les formules). Cela semble fonctionner, mais y a t il plus élégant, allégé ? Merci J@@ '***************** Sub MetZeroEnIetLdix() Dim Feuille As Worksheet Dim sht As Worksheet Application.ScreenUpdating = False On Error Resume Next For Each Feuille In ActiveWorkbook.Worksheets '5 feuilles If Feuille.Name <> "ListeFeuilles" _ And Feuille.Name <> "RapDoc" _ And Feuille.Name <> "Etat_" Then Feuille.Select For Each sht In ActiveWorkbook.Windows(1).SelectedSheets ActiveSheet.Unprotect If [i10].Value = "" Then [i10].Value = "0" If [L10].Value = "" Then [L10].Value = "0" ActiveSheet.Next.Select Next sht End If Next Feuille End Sub '*****************
Bonjour Daniel
J'ai besoin que, dans pleins de feuilles semblables, si I10 et L10 ne
contiennent pas de donnée, il y ait un 0.
Mon code fonctionne, mais je le trouve très balourd.
Le tien est nettement mieux, et fonctionne :-) mais faut que je rajoute
".Select" pour que cela marche.
For Each Feuille In ActiveWorkbook.Worksheets
If Feuille.Name <> "ListeFeuilles" _
And Feuille.Name <> "RapDoc" _
And Feuille.Name <> "Etat_" Then
With Feuille
.Unprotect
.Select '<=*****ajout
If [i10].Value = "" Then [i10].Value = "0"
If [L10].Value = "" Then [L10].Value = "0"
End With
End If
Next Feuille
Merci Daniel.
@+
J@@
Le 28/03/2011 21:15, DanielCo a écrit :
Bonjour,
Pas sûr d'avoir compris ce que tu veux faire; peut-être :
Sub MetZeroEnIetLdix()
Dim Feuille As Worksheet
Dim sht As Worksheet
Application.ScreenUpdating = False
On Error Resume Next
For Each Feuille In ActiveWorkbook.Worksheets '5 feuilles
If Feuille.Name <> "ListeFeuilles" _
And Feuille.Name <> "RapDoc" _
And Feuille.Name <> "Etat_" Then
With Feuille
.Unprotect
If .[i10].Value = "" Then .[i10].Value = "0"
If .[L10].Value = "" Then .[L10].Value = "0"
End With
End If
Next Feuille
End Sub
Cordialement.
Daniel
Bonjour à tous
pour éviter les pb du fait de l'absence de données en I10 et L10, ce
code met 0 si vide dans certaines feuilles (respecte les données et
les formules).
Cela semble fonctionner, mais y a t il plus élégant, allégé ?
Merci
J@@
'*****************
Sub MetZeroEnIetLdix()
Dim Feuille As Worksheet
Dim sht As Worksheet
Application.ScreenUpdating = False
On Error Resume Next
For Each Feuille In ActiveWorkbook.Worksheets '5 feuilles
If Feuille.Name <> "ListeFeuilles" _
And Feuille.Name <> "RapDoc" _
And Feuille.Name <> "Etat_" Then
Feuille.Select
For Each sht In ActiveWorkbook.Windows(1).SelectedSheets
ActiveSheet.Unprotect
If [i10].Value = "" Then [i10].Value = "0"
If [L10].Value = "" Then [L10].Value = "0"
ActiveSheet.Next.Select
Next sht
End If
Next Feuille
End Sub
'*****************
Bonjour Daniel J'ai besoin que, dans pleins de feuilles semblables, si I10 et L10 ne contiennent pas de donnée, il y ait un 0.
Mon code fonctionne, mais je le trouve très balourd.
Le tien est nettement mieux, et fonctionne :-) mais faut que je rajoute ".Select" pour que cela marche.
For Each Feuille In ActiveWorkbook.Worksheets If Feuille.Name <> "ListeFeuilles" _ And Feuille.Name <> "RapDoc" _ And Feuille.Name <> "Etat_" Then With Feuille .Unprotect .Select '<=*****ajout If [i10].Value = "" Then [i10].Value = "0" If [L10].Value = "" Then [L10].Value = "0" End With End If Next Feuille
Merci Daniel. @+ J@@
Le 28/03/2011 21:15, DanielCo a écrit :
Bonjour, Pas sûr d'avoir compris ce que tu veux faire; peut-être :
Sub MetZeroEnIetLdix() Dim Feuille As Worksheet Dim sht As Worksheet Application.ScreenUpdating = False On Error Resume Next For Each Feuille In ActiveWorkbook.Worksheets '5 feuilles If Feuille.Name <> "ListeFeuilles" _ And Feuille.Name <> "RapDoc" _ And Feuille.Name <> "Etat_" Then With Feuille .Unprotect If .[i10].Value = "" Then .[i10].Value = "0" If .[L10].Value = "" Then .[L10].Value = "0" End With End If Next Feuille End Sub
Cordialement. Daniel
Bonjour à tous
pour éviter les pb du fait de l'absence de données en I10 et L10, ce code met 0 si vide dans certaines feuilles (respecte les données et les formules). Cela semble fonctionner, mais y a t il plus élégant, allégé ? Merci J@@ '***************** Sub MetZeroEnIetLdix() Dim Feuille As Worksheet Dim sht As Worksheet Application.ScreenUpdating = False On Error Resume Next For Each Feuille In ActiveWorkbook.Worksheets '5 feuilles If Feuille.Name <> "ListeFeuilles" _ And Feuille.Name <> "RapDoc" _ And Feuille.Name <> "Etat_" Then Feuille.Select For Each sht In ActiveWorkbook.Windows(1).SelectedSheets ActiveSheet.Unprotect If [i10].Value = "" Then [i10].Value = "0" If [L10].Value = "" Then [L10].Value = "0" ActiveSheet.Next.Select Next sht End If Next Feuille End Sub '*****************
J
Bonjour LSteph comment cela un select case? je n'ai pas beaucoup d'options, j'ai juste une 100aine de feuilles semblables, avec juste qq cellules où flanquer des 0. mais je ne peux pas grouper toutes les feuilles, car des feuilles contiennent des formules que j'écraserais alors.
Le code revu par Daniel fonctionne, mais l'approche select case m'intéresse, pour la culture. Merci encore cordialement j@@
Le 28/03/2011 21:47, LSteph a écrit :
Oui avec un select case -- LSteph
On 29 mar, 06:18, "J@@" wrote:
pour éviter les pb du fait de l'absence de données en I10 et L10, ce code met 0 si vide dans certaines feuilles (respecte les données et les formules). Cela semble fonctionner, mais y a t il plus élégant, allégé ? Merci J@@ '***************** Sub MetZeroEnIetLdix() Dim Feuille As Worksheet Dim sht As Worksheet Application.ScreenUpdating = False On Error Resume Next For Each Feuille In ActiveWorkbook.Worksheets '5 feuilles If Feuille.Name<> "ListeFeuilles" _ And Feuille.Name<> "RapDoc" _ And Feuille.Name<> "Etat_" Then Feuille.Select For Each sht In ActiveWorkbook.Windows(1).SelectedSheets ActiveSheet.Unprotect If [i10].Value = "" Then [i10].Value = "0" If [L10].Value = "" Then [L10].Value = "0" ActiveSheet.Next.Select Next sht End If Next Feuille End Sub '*****************
Bonjour LSteph
comment cela un select case?
je n'ai pas beaucoup d'options, j'ai juste une 100aine de feuilles
semblables, avec juste qq cellules où flanquer des 0.
mais je ne peux pas grouper toutes les feuilles, car des feuilles
contiennent des formules que j'écraserais alors.
Le code revu par Daniel fonctionne, mais l'approche select case
m'intéresse, pour la culture.
Merci encore
cordialement
j@@
Le 28/03/2011 21:47, LSteph a écrit :
Oui avec un select case
--
LSteph
On 29 mar, 06:18, "J@@"<k...@hy.gg> wrote:
pour éviter les pb du fait de l'absence de données en I10 et L10, ce
code met 0 si vide dans certaines feuilles (respecte les données et les
formules).
Cela semble fonctionner, mais y a t il plus élégant, allégé ?
Merci
J@@
'*****************
Sub MetZeroEnIetLdix()
Dim Feuille As Worksheet
Dim sht As Worksheet
Application.ScreenUpdating = False
On Error Resume Next
For Each Feuille In ActiveWorkbook.Worksheets '5 feuilles
If Feuille.Name<> "ListeFeuilles" _
And Feuille.Name<> "RapDoc" _
And Feuille.Name<> "Etat_" Then
Feuille.Select
For Each sht In ActiveWorkbook.Windows(1).SelectedSheets
ActiveSheet.Unprotect
If [i10].Value = "" Then [i10].Value = "0"
If [L10].Value = "" Then [L10].Value = "0"
ActiveSheet.Next.Select
Next sht
End If
Next Feuille
End Sub
'*****************
Bonjour LSteph comment cela un select case? je n'ai pas beaucoup d'options, j'ai juste une 100aine de feuilles semblables, avec juste qq cellules où flanquer des 0. mais je ne peux pas grouper toutes les feuilles, car des feuilles contiennent des formules que j'écraserais alors.
Le code revu par Daniel fonctionne, mais l'approche select case m'intéresse, pour la culture. Merci encore cordialement j@@
Le 28/03/2011 21:47, LSteph a écrit :
Oui avec un select case -- LSteph
On 29 mar, 06:18, "J@@" wrote:
pour éviter les pb du fait de l'absence de données en I10 et L10, ce code met 0 si vide dans certaines feuilles (respecte les données et les formules). Cela semble fonctionner, mais y a t il plus élégant, allégé ? Merci J@@ '***************** Sub MetZeroEnIetLdix() Dim Feuille As Worksheet Dim sht As Worksheet Application.ScreenUpdating = False On Error Resume Next For Each Feuille In ActiveWorkbook.Worksheets '5 feuilles If Feuille.Name<> "ListeFeuilles" _ And Feuille.Name<> "RapDoc" _ And Feuille.Name<> "Etat_" Then Feuille.Select For Each sht In ActiveWorkbook.Windows(1).SelectedSheets ActiveSheet.Unprotect If [i10].Value = "" Then [i10].Value = "0" If [L10].Value = "" Then [L10].Value = "0" ActiveSheet.Next.Select Next sht End If Next Feuille End Sub '*****************
DanielCo
Nan, mais j'avais mis un "." avant [i10] et [L10]. Daniel
Bonjour Daniel J'ai besoin que, dans pleins de feuilles semblables, si I10 et L10 ne contiennent pas de donnée, il y ait un 0.
Mon code fonctionne, mais je le trouve très balourd.
Le tien est nettement mieux, et fonctionne :-) mais faut que je rajoute ".Select" pour que cela marche.
For Each Feuille In ActiveWorkbook.Worksheets If Feuille.Name <> "ListeFeuilles" _ And Feuille.Name <> "RapDoc" _ And Feuille.Name <> "Etat_" Then With Feuille .Unprotect .Select '<=*****ajout If [i10].Value = "" Then [i10].Value = "0" If [L10].Value = "" Then [L10].Value = "0" End With End If Next Feuille
Merci Daniel. @+ J@@
Nan, mais j'avais mis un "." avant [i10] et [L10].
Daniel
Bonjour Daniel
J'ai besoin que, dans pleins de feuilles semblables, si I10 et L10 ne
contiennent pas de donnée, il y ait un 0.
Mon code fonctionne, mais je le trouve très balourd.
Le tien est nettement mieux, et fonctionne :-) mais faut que je rajoute
".Select" pour que cela marche.
For Each Feuille In ActiveWorkbook.Worksheets
If Feuille.Name <> "ListeFeuilles" _
And Feuille.Name <> "RapDoc" _
And Feuille.Name <> "Etat_" Then
With Feuille
.Unprotect
.Select '<=*****ajout
If [i10].Value = "" Then [i10].Value = "0"
If [L10].Value = "" Then [L10].Value = "0"
End With
End If
Next Feuille
Nan, mais j'avais mis un "." avant [i10] et [L10]. Daniel
Bonjour Daniel J'ai besoin que, dans pleins de feuilles semblables, si I10 et L10 ne contiennent pas de donnée, il y ait un 0.
Mon code fonctionne, mais je le trouve très balourd.
Le tien est nettement mieux, et fonctionne :-) mais faut que je rajoute ".Select" pour que cela marche.
For Each Feuille In ActiveWorkbook.Worksheets If Feuille.Name <> "ListeFeuilles" _ And Feuille.Name <> "RapDoc" _ And Feuille.Name <> "Etat_" Then With Feuille .Unprotect .Select '<=*****ajout If [i10].Value = "" Then [i10].Value = "0" If [L10].Value = "" Then [L10].Value = "0" End With End If Next Feuille
Merci Daniel. @+ J@@
MichD
Bonjour,
En reprenant l'exemple de Daniel, tu pourrais écrire la même chose en utilisant un select case
'------------------------------------------------- Sub MetZeroEnIetLdix() Dim Feuille As Worksheet
Application.ScreenUpdating = False On Error Resume Next For Each Feuille In ActiveWorkbook.Worksheets '5 feuilles Select Case Feuille.Name Case Is = "ListeFeuilles", "RapDoc", "Etat_" 'Si la feuille est dans ce groupe, rien se passe Case Else 'Si les feuilles n'appartiennent pas au premier groupe With Feuille .Unprotect If .[i10].Value = "" Then .[i10].Value = "0" If .[L10].Value = "" Then .[L10].Value = "0" End With End Select Next Feuille End Sub '-------------------------------------------------
En reprenant l'exemple de Daniel, tu pourrais écrire la même chose en utilisant un select case
'-------------------------------------------------
Sub MetZeroEnIetLdix()
Dim Feuille As Worksheet
Application.ScreenUpdating = False
On Error Resume Next
For Each Feuille In ActiveWorkbook.Worksheets '5 feuilles
Select Case Feuille.Name
Case Is = "ListeFeuilles", "RapDoc", "Etat_"
'Si la feuille est dans ce groupe, rien se passe
Case Else
'Si les feuilles n'appartiennent pas au premier groupe
With Feuille
.Unprotect
If .[i10].Value = "" Then .[i10].Value = "0"
If .[L10].Value = "" Then .[L10].Value = "0"
End With
End Select
Next Feuille
End Sub
'-------------------------------------------------
En reprenant l'exemple de Daniel, tu pourrais écrire la même chose en utilisant un select case
'------------------------------------------------- Sub MetZeroEnIetLdix() Dim Feuille As Worksheet
Application.ScreenUpdating = False On Error Resume Next For Each Feuille In ActiveWorkbook.Worksheets '5 feuilles Select Case Feuille.Name Case Is = "ListeFeuilles", "RapDoc", "Etat_" 'Si la feuille est dans ce groupe, rien se passe Case Else 'Si les feuilles n'appartiennent pas au premier groupe With Feuille .Unprotect If .[i10].Value = "" Then .[i10].Value = "0" If .[L10].Value = "" Then .[L10].Value = "0" End With End Select Next Feuille End Sub '-------------------------------------------------
Bonjour MichD D'accord, je comprends. C'est vrai que c'est beaucoup plus lisible que mon code initial. Merci @+ J@@
Le 29/03/2011 01:25, MichD a écrit :
Bonjour,
En reprenant l'exemple de Daniel, tu pourrais écrire la même chose en utilisant un select case
'------------------------------------------------- Sub MetZeroEnIetLdix() Dim Feuille As Worksheet
Application.ScreenUpdating = False On Error Resume Next For Each Feuille In ActiveWorkbook.Worksheets '5 feuilles Select Case Feuille.Name Case Is = "ListeFeuilles", "RapDoc", "Etat_" 'Si la feuille est dans ce groupe, rien se passe Case Else 'Si les feuilles n'appartiennent pas au premier groupe With Feuille .Unprotect If .[i10].Value = "" Then .[i10].Value = "0" If .[L10].Value = "" Then .[L10].Value = "0" End With End Select Next Feuille End Sub '-------------------------------------------------
Bonjour MichD
D'accord, je comprends.
C'est vrai que c'est beaucoup plus lisible que mon code initial.
Merci
@+
J@@
Le 29/03/2011 01:25, MichD a écrit :
Bonjour,
En reprenant l'exemple de Daniel, tu pourrais écrire la même chose en utilisant un select case
'-------------------------------------------------
Sub MetZeroEnIetLdix()
Dim Feuille As Worksheet
Application.ScreenUpdating = False
On Error Resume Next
For Each Feuille In ActiveWorkbook.Worksheets '5 feuilles
Select Case Feuille.Name
Case Is = "ListeFeuilles", "RapDoc", "Etat_"
'Si la feuille est dans ce groupe, rien se passe
Case Else
'Si les feuilles n'appartiennent pas au premier groupe
With Feuille
.Unprotect
If .[i10].Value = "" Then .[i10].Value = "0"
If .[L10].Value = "" Then .[L10].Value = "0"
End With
End Select
Next Feuille
End Sub
'-------------------------------------------------
Bonjour MichD D'accord, je comprends. C'est vrai que c'est beaucoup plus lisible que mon code initial. Merci @+ J@@
Le 29/03/2011 01:25, MichD a écrit :
Bonjour,
En reprenant l'exemple de Daniel, tu pourrais écrire la même chose en utilisant un select case
'------------------------------------------------- Sub MetZeroEnIetLdix() Dim Feuille As Worksheet
Application.ScreenUpdating = False On Error Resume Next For Each Feuille In ActiveWorkbook.Worksheets '5 feuilles Select Case Feuille.Name Case Is = "ListeFeuilles", "RapDoc", "Etat_" 'Si la feuille est dans ce groupe, rien se passe Case Else 'Si les feuilles n'appartiennent pas au premier groupe With Feuille .Unprotect If .[i10].Value = "" Then .[i10].Value = "0" If .[L10].Value = "" Then .[L10].Value = "0" End With End Select Next Feuille End Sub '-------------------------------------------------
;-) ... je viens de revenir, bin voilà MD t'a répondu...
mais l'approche select case m'int resse, pour la culture.
On Mar 29, 6:00 pm, "J@@" wrote:
Bonjour MichD D'accord, je comprends. C'est vrai que c'est beaucoup plus lisible que mon code initial. Merci @+ J@@
Le 29/03/2011 01:25, MichD a crit :
J
Bonjour Daniel Faut que je change de lunettes, je n'avais pas vu ces . Honte à moi. Merci encore J@@
Le 28/03/2011 22:19, DanielCo a écrit :
Nan, mais j'avais mis un "." avant [i10] et [L10]. Daniel
Bonjour Daniel J'ai besoin que, dans pleins de feuilles semblables, si I10 et L10 ne contiennent pas de donnée, il y ait un 0.
Mon code fonctionne, mais je le trouve très balourd.
Le tien est nettement mieux, et fonctionne :-) mais faut que je rajoute ".Select" pour que cela marche.
For Each Feuille In ActiveWorkbook.Worksheets If Feuille.Name <> "ListeFeuilles" _ And Feuille.Name <> "RapDoc" _ And Feuille.Name <> "Etat_" Then With Feuille .Unprotect .Select '<=*****ajout If [i10].Value = "" Then [i10].Value = "0" If [L10].Value = "" Then [L10].Value = "0" End With End If Next Feuille
Merci Daniel. @+ J@@
Bonjour Daniel
Faut que je change de lunettes, je n'avais pas vu ces .
Honte à moi.
Merci encore
J@@
Le 28/03/2011 22:19, DanielCo a écrit :
Nan, mais j'avais mis un "." avant [i10] et [L10].
Daniel
Bonjour Daniel
J'ai besoin que, dans pleins de feuilles semblables, si I10 et L10 ne
contiennent pas de donnée, il y ait un 0.
Mon code fonctionne, mais je le trouve très balourd.
Le tien est nettement mieux, et fonctionne :-) mais faut que je
rajoute ".Select" pour que cela marche.
For Each Feuille In ActiveWorkbook.Worksheets
If Feuille.Name <> "ListeFeuilles" _
And Feuille.Name <> "RapDoc" _
And Feuille.Name <> "Etat_" Then
With Feuille
.Unprotect
.Select '<=*****ajout
If [i10].Value = "" Then [i10].Value = "0"
If [L10].Value = "" Then [L10].Value = "0"
End With
End If
Next Feuille
Bonjour Daniel Faut que je change de lunettes, je n'avais pas vu ces . Honte à moi. Merci encore J@@
Le 28/03/2011 22:19, DanielCo a écrit :
Nan, mais j'avais mis un "." avant [i10] et [L10]. Daniel
Bonjour Daniel J'ai besoin que, dans pleins de feuilles semblables, si I10 et L10 ne contiennent pas de donnée, il y ait un 0.
Mon code fonctionne, mais je le trouve très balourd.
Le tien est nettement mieux, et fonctionne :-) mais faut que je rajoute ".Select" pour que cela marche.
For Each Feuille In ActiveWorkbook.Worksheets If Feuille.Name <> "ListeFeuilles" _ And Feuille.Name <> "RapDoc" _ And Feuille.Name <> "Etat_" Then With Feuille .Unprotect .Select '<=*****ajout If [i10].Value = "" Then [i10].Value = "0" If [L10].Value = "" Then [L10].Value = "0" End With End If Next Feuille