bonjour, je me heurte a un prb que je n'arrive pas a resoudre, j'utilise
dans un tableau la fonction nb.si pour comptabilise des heures de travail
de
differante categorie
mon prob : a l'heure actuel j'utilise par exemple E = 30 min et EE = 1h de
travail en entretien materiel, pour que je voudrai faire e ( en
minuscule )
= 30 min et E ( en maj ) = 1h
est ce possible
merci
bonjour, je me heurte a un prb que je n'arrive pas a resoudre, j'utilise
dans un tableau la fonction nb.si pour comptabilise des heures de travail
de
differante categorie
mon prob : a l'heure actuel j'utilise par exemple E = 30 min et EE = 1h de
travail en entretien materiel, pour que je voudrai faire e ( en
minuscule )
= 30 min et E ( en maj ) = 1h
est ce possible
merci
bonjour, je me heurte a un prb que je n'arrive pas a resoudre, j'utilise
dans un tableau la fonction nb.si pour comptabilise des heures de travail
de
differante categorie
mon prob : a l'heure actuel j'utilise par exemple E = 30 min et EE = 1h de
travail en entretien materiel, pour que je voudrai faire e ( en
minuscule )
= 30 min et E ( en maj ) = 1h
est ce possible
merci
Salut Voilà un code qui pourra te servir
Attribute VB_Name = "MajusculesMinuscules"
Sub Majuscule2() 'Benoît Marchand
'évite de mettre en majuscule les cellules qui contiennent une formule
'(elle serait perdue dans ce cas)
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value = UCase(cell.Value)
Next
Fin:
End Sub
Sub Minuscule2() 'Benoît Marchand
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value = LCase(cell.Value)
Next
Fin:
End Sub
'Personnellement , j 'utilise une petite variante lorsque je mets une plage
'en minuscule, je mets en majuscule le premier caractère. Cela donne cela :
Sub MiseEnMiniscule() 'Benoît Marchand + fs
For Each cell In Selection
If (Not cell.HasFormula) Then
cell.Value = UCase(Left(cell.Value, 1)) & _
LCase(Right(cell.Value, Len(cell.Value) - 1))
End If
Next
End Sub
Salut
Pascal
"Lucho" a écrit dans le message de
news:3fd1af43$0$6976$bonjour, je me heurte a un prb que je n'arrive pas a resoudre, j'utilise
dans un tableau la fonction nb.si pour comptabilise des heures de travail
dedifferante categorie
mon prob : a l'heure actuel j'utilise par exemple E = 30 min et EE = 1h de
travail en entretien materiel, pour que je voudrai faire e ( en
minuscule )= 30 min et E ( en maj ) = 1h
est ce possible
merci
Salut Voilà un code qui pourra te servir
Attribute VB_Name = "MajusculesMinuscules"
Sub Majuscule2() 'Benoît Marchand
'évite de mettre en majuscule les cellules qui contiennent une formule
'(elle serait perdue dans ce cas)
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value = UCase(cell.Value)
Next
Fin:
End Sub
Sub Minuscule2() 'Benoît Marchand
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value = LCase(cell.Value)
Next
Fin:
End Sub
'Personnellement , j 'utilise une petite variante lorsque je mets une plage
'en minuscule, je mets en majuscule le premier caractère. Cela donne cela :
Sub MiseEnMiniscule() 'Benoît Marchand + fs
For Each cell In Selection
If (Not cell.HasFormula) Then
cell.Value = UCase(Left(cell.Value, 1)) & _
LCase(Right(cell.Value, Len(cell.Value) - 1))
End If
Next
End Sub
Salut
Pascal
"Lucho" <arnera@club-internet.fr> a écrit dans le message de
news:3fd1af43$0$6976$7a628cd7@news.club-internet.fr...
bonjour, je me heurte a un prb que je n'arrive pas a resoudre, j'utilise
dans un tableau la fonction nb.si pour comptabilise des heures de travail
de
differante categorie
mon prob : a l'heure actuel j'utilise par exemple E = 30 min et EE = 1h de
travail en entretien materiel, pour que je voudrai faire e ( en
minuscule )
= 30 min et E ( en maj ) = 1h
est ce possible
merci
Salut Voilà un code qui pourra te servir
Attribute VB_Name = "MajusculesMinuscules"
Sub Majuscule2() 'Benoît Marchand
'évite de mettre en majuscule les cellules qui contiennent une formule
'(elle serait perdue dans ce cas)
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value = UCase(cell.Value)
Next
Fin:
End Sub
Sub Minuscule2() 'Benoît Marchand
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value = LCase(cell.Value)
Next
Fin:
End Sub
'Personnellement , j 'utilise une petite variante lorsque je mets une plage
'en minuscule, je mets en majuscule le premier caractère. Cela donne cela :
Sub MiseEnMiniscule() 'Benoît Marchand + fs
For Each cell In Selection
If (Not cell.HasFormula) Then
cell.Value = UCase(Left(cell.Value, 1)) & _
LCase(Right(cell.Value, Len(cell.Value) - 1))
End If
Next
End Sub
Salut
Pascal
"Lucho" a écrit dans le message de
news:3fd1af43$0$6976$bonjour, je me heurte a un prb que je n'arrive pas a resoudre, j'utilise
dans un tableau la fonction nb.si pour comptabilise des heures de travail
dedifferante categorie
mon prob : a l'heure actuel j'utilise par exemple E = 30 min et EE = 1h de
travail en entretien materiel, pour que je voudrai faire e ( en
minuscule )= 30 min et E ( en maj ) = 1h
est ce possible
merci
Bonjour Pascal,
Je n'ai pas compris la même chose que toi ;-(((
Selon moi, Lucho voudrait que "e" soit équivalent à un demi-heure
et "E" à 1 heure et pouvoir les différencier avec NB.SI()
=NB.SI(Plage;"e") pour le total des 1/2 heures, et
=NB.SI(Plage;"E") pour le total des heures entières.
Son problème est lié au fait que NB.SI() ne fait pas de distinction
entre "e" et "E".
Lucho, si tu lis ce message, précise si c'est bien de cela qu'il s'agit.Salut Voilà un code qui pourra te servir
Attribute VB_Name = "MajusculesMinuscules"
Sub Majuscule2() 'Benoît Marchand
'évite de mettre en majuscule les cellules qui contiennent une formule
'(elle serait perdue dans ce cas)
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value = UCase(cell.Value)
Next
Fin:
End Sub
Sub Minuscule2() 'Benoît Marchand
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value = LCase(cell.Value)
Next
Fin:
End Sub
'Personnellement , j 'utilise une petite variante lorsque je mets une plage
'en minuscule, je mets en majuscule le premier caractère. Cela donne cela :
Sub MiseEnMiniscule() 'Benoît Marchand + fs
For Each cell In Selection
If (Not cell.HasFormula) Then
cell.Value = UCase(Left(cell.Value, 1)) & _
LCase(Right(cell.Value, Len(cell.Value) - 1))
End If
Next
End Sub
Salut
Pascal
"Lucho" a écrit dans le message de
news:3fd1af43$0$6976$bonjour, je me heurte a un prb que je n'arrive pas a resoudre, j'utilise
dans un tableau la fonction nb.si pour comptabilise des heures de travail
dedifferante categorie
mon prob : a l'heure actuel j'utilise par exemple E = 30 min et EE = 1h de
travail en entretien materiel, pour que je voudrai faire e ( en
minuscule )= 30 min et E ( en maj ) = 1h
est ce possible
merci
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
Bonjour Pascal,
Je n'ai pas compris la même chose que toi ;-(((
Selon moi, Lucho voudrait que "e" soit équivalent à un demi-heure
et "E" à 1 heure et pouvoir les différencier avec NB.SI()
=NB.SI(Plage;"e") pour le total des 1/2 heures, et
=NB.SI(Plage;"E") pour le total des heures entières.
Son problème est lié au fait que NB.SI() ne fait pas de distinction
entre "e" et "E".
Lucho, si tu lis ce message, précise si c'est bien de cela qu'il s'agit.
Salut Voilà un code qui pourra te servir
Attribute VB_Name = "MajusculesMinuscules"
Sub Majuscule2() 'Benoît Marchand
'évite de mettre en majuscule les cellules qui contiennent une formule
'(elle serait perdue dans ce cas)
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value = UCase(cell.Value)
Next
Fin:
End Sub
Sub Minuscule2() 'Benoît Marchand
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value = LCase(cell.Value)
Next
Fin:
End Sub
'Personnellement , j 'utilise une petite variante lorsque je mets une plage
'en minuscule, je mets en majuscule le premier caractère. Cela donne cela :
Sub MiseEnMiniscule() 'Benoît Marchand + fs
For Each cell In Selection
If (Not cell.HasFormula) Then
cell.Value = UCase(Left(cell.Value, 1)) & _
LCase(Right(cell.Value, Len(cell.Value) - 1))
End If
Next
End Sub
Salut
Pascal
"Lucho" <arnera@club-internet.fr> a écrit dans le message de
news:3fd1af43$0$6976$7a628cd7@news.club-internet.fr...
bonjour, je me heurte a un prb que je n'arrive pas a resoudre, j'utilise
dans un tableau la fonction nb.si pour comptabilise des heures de travail
de
differante categorie
mon prob : a l'heure actuel j'utilise par exemple E = 30 min et EE = 1h de
travail en entretien materiel, pour que je voudrai faire e ( en
minuscule )
= 30 min et E ( en maj ) = 1h
est ce possible
merci
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
Bonjour Pascal,
Je n'ai pas compris la même chose que toi ;-(((
Selon moi, Lucho voudrait que "e" soit équivalent à un demi-heure
et "E" à 1 heure et pouvoir les différencier avec NB.SI()
=NB.SI(Plage;"e") pour le total des 1/2 heures, et
=NB.SI(Plage;"E") pour le total des heures entières.
Son problème est lié au fait que NB.SI() ne fait pas de distinction
entre "e" et "E".
Lucho, si tu lis ce message, précise si c'est bien de cela qu'il s'agit.Salut Voilà un code qui pourra te servir
Attribute VB_Name = "MajusculesMinuscules"
Sub Majuscule2() 'Benoît Marchand
'évite de mettre en majuscule les cellules qui contiennent une formule
'(elle serait perdue dans ce cas)
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value = UCase(cell.Value)
Next
Fin:
End Sub
Sub Minuscule2() 'Benoît Marchand
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value = LCase(cell.Value)
Next
Fin:
End Sub
'Personnellement , j 'utilise une petite variante lorsque je mets une plage
'en minuscule, je mets en majuscule le premier caractère. Cela donne cela :
Sub MiseEnMiniscule() 'Benoît Marchand + fs
For Each cell In Selection
If (Not cell.HasFormula) Then
cell.Value = UCase(Left(cell.Value, 1)) & _
LCase(Right(cell.Value, Len(cell.Value) - 1))
End If
Next
End Sub
Salut
Pascal
"Lucho" a écrit dans le message de
news:3fd1af43$0$6976$bonjour, je me heurte a un prb que je n'arrive pas a resoudre, j'utilise
dans un tableau la fonction nb.si pour comptabilise des heures de travail
dedifferante categorie
mon prob : a l'heure actuel j'utilise par exemple E = 30 min et EE = 1h de
travail en entretien materiel, pour que je voudrai faire e ( en
minuscule )= 30 min et E ( en maj ) = 1h
est ce possible
merci
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
Re,
Si mon hypothèse est la bonne, on peut s'en sortir en rempla-
çant NBSI() par SOMMEPROD().
Toutes les caractères ont un code ASCII, qui va de 65 (pour le
"A") à 90 ("Z") pour les majuscules et de 97 ("a") à 122
("z") pour les minuscules.
=SOMMEPROD((CODE(A1:A10) = 69) * 1)
permet de renvoyer le nombre de "E" dans la plage "A1:A10"
et
=SOMMEPROD((CODE(A1:A10) = 101) * 1)
renvoie le nombre de "e"
On peut remplacer 69 et 101 par CODE("E") et CODE("e").
Les contraintes sont les suivantes :
C'est la première lettre de la cellule qui est testée, et cela ne
fonctionne que s'il n'y a pas de cellule vide, car CODE() ren-
voie
alors une erreur.
Si ce n'est pas le cas, des adaptations sont nécessaires :
=SOMMEPROD((SI(ESTVIDE(A1:A10);0;CODE(A1:A10) = 69)) * 1)
à valider cette fois en matricielle*, à cause du test
"SI(ESTVIDE(A1:A10)" résoud le problème des
éventuelles cellules vides pour le "E".
* Pour valider en matricielle, il faut appuyer à la fois sur 3
touches, Commande + Maj + Retour sur Mac ou Ctrl + Maj +
Retour sur PCBonjour Pascal,
Je n'ai pas compris la même chose que toi ;-(((
Selon moi, Lucho voudrait que "e" soit équivalent à un demi-heure
et "E" à 1 heure et pouvoir les différencier avec NB.SI()
=NB.SI(Plage;"e") pour le total des 1/2 heures, et
=NB.SI(Plage;"E") pour le total des heures entières.
Son problème est lié au fait que NB.SI() ne fait pas de distinction
entre "e" et "E".
Lucho, si tu lis ce message, précise si c'est bien de cela qu'il
s'agit.Salut Voilà un code qui pourra te servir
Attribute VB_Name = "MajusculesMinuscules"
Sub Majuscule2() 'Benoît Marchand
'évite de mettre en majuscule les cellules qui contiennent une
formule '(elle serait perdue dans ce cas)
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value >>> UCase(cell.Value) Next
Fin:
End Sub
Sub Minuscule2() 'Benoît Marchand
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value >>> LCase(cell.Value) Next
Fin:
End Sub
'Personnellement , j 'utilise une petite variante lorsque je mets
une plage 'en minuscule, je mets en majuscule le premier caractère.
Cela donne cela :
Sub MiseEnMiniscule() 'Benoît Marchand + fs
For Each cell In Selection
If (Not cell.HasFormula) Then
cell.Value = UCase(Left(cell.Value, 1)) & _
LCase(Right(cell.Value, Len(cell.Value) - 1))
End If
Next
End Sub
Salut
Pascal
"Lucho" a écrit dans le message de
news:3fd1af43$0$6976$bonjour, je me heurte a un prb que je n'arrive pas a resoudre,
j'utilise dans un tableau la fonction nb.si pour comptabilise des
heures de travail de differante categorie
mon prob : a l'heure actuel j'utilise par exemple E = 30 min et EE
= 1h de travail en entretien materiel, pour que je voudrai faire e
( en
minuscule )= 30 min et E ( en maj ) = 1h
est ce possible
merci
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
Re,
Si mon hypothèse est la bonne, on peut s'en sortir en rempla-
çant NBSI() par SOMMEPROD().
Toutes les caractères ont un code ASCII, qui va de 65 (pour le
"A") à 90 ("Z") pour les majuscules et de 97 ("a") à 122
("z") pour les minuscules.
=SOMMEPROD((CODE(A1:A10) = 69) * 1)
permet de renvoyer le nombre de "E" dans la plage "A1:A10"
et
=SOMMEPROD((CODE(A1:A10) = 101) * 1)
renvoie le nombre de "e"
On peut remplacer 69 et 101 par CODE("E") et CODE("e").
Les contraintes sont les suivantes :
C'est la première lettre de la cellule qui est testée, et cela ne
fonctionne que s'il n'y a pas de cellule vide, car CODE() ren-
voie
alors une erreur.
Si ce n'est pas le cas, des adaptations sont nécessaires :
=SOMMEPROD((SI(ESTVIDE(A1:A10);0;CODE(A1:A10) = 69)) * 1)
à valider cette fois en matricielle*, à cause du test
"SI(ESTVIDE(A1:A10)" résoud le problème des
éventuelles cellules vides pour le "E".
* Pour valider en matricielle, il faut appuyer à la fois sur 3
touches, Commande + Maj + Retour sur Mac ou Ctrl + Maj +
Retour sur PC
Bonjour Pascal,
Je n'ai pas compris la même chose que toi ;-(((
Selon moi, Lucho voudrait que "e" soit équivalent à un demi-heure
et "E" à 1 heure et pouvoir les différencier avec NB.SI()
=NB.SI(Plage;"e") pour le total des 1/2 heures, et
=NB.SI(Plage;"E") pour le total des heures entières.
Son problème est lié au fait que NB.SI() ne fait pas de distinction
entre "e" et "E".
Lucho, si tu lis ce message, précise si c'est bien de cela qu'il
s'agit.
Salut Voilà un code qui pourra te servir
Attribute VB_Name = "MajusculesMinuscules"
Sub Majuscule2() 'Benoît Marchand
'évite de mettre en majuscule les cellules qui contiennent une
formule '(elle serait perdue dans ce cas)
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value >>> UCase(cell.Value) Next
Fin:
End Sub
Sub Minuscule2() 'Benoît Marchand
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value >>> LCase(cell.Value) Next
Fin:
End Sub
'Personnellement , j 'utilise une petite variante lorsque je mets
une plage 'en minuscule, je mets en majuscule le premier caractère.
Cela donne cela :
Sub MiseEnMiniscule() 'Benoît Marchand + fs
For Each cell In Selection
If (Not cell.HasFormula) Then
cell.Value = UCase(Left(cell.Value, 1)) & _
LCase(Right(cell.Value, Len(cell.Value) - 1))
End If
Next
End Sub
Salut
Pascal
"Lucho" <arnera@club-internet.fr> a écrit dans le message de
news:3fd1af43$0$6976$7a628cd7@news.club-internet.fr...
bonjour, je me heurte a un prb que je n'arrive pas a resoudre,
j'utilise dans un tableau la fonction nb.si pour comptabilise des
heures de travail de differante categorie
mon prob : a l'heure actuel j'utilise par exemple E = 30 min et EE
= 1h de travail en entretien materiel, pour que je voudrai faire e
( en
minuscule )
= 30 min et E ( en maj ) = 1h
est ce possible
merci
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
Re,
Si mon hypothèse est la bonne, on peut s'en sortir en rempla-
çant NBSI() par SOMMEPROD().
Toutes les caractères ont un code ASCII, qui va de 65 (pour le
"A") à 90 ("Z") pour les majuscules et de 97 ("a") à 122
("z") pour les minuscules.
=SOMMEPROD((CODE(A1:A10) = 69) * 1)
permet de renvoyer le nombre de "E" dans la plage "A1:A10"
et
=SOMMEPROD((CODE(A1:A10) = 101) * 1)
renvoie le nombre de "e"
On peut remplacer 69 et 101 par CODE("E") et CODE("e").
Les contraintes sont les suivantes :
C'est la première lettre de la cellule qui est testée, et cela ne
fonctionne que s'il n'y a pas de cellule vide, car CODE() ren-
voie
alors une erreur.
Si ce n'est pas le cas, des adaptations sont nécessaires :
=SOMMEPROD((SI(ESTVIDE(A1:A10);0;CODE(A1:A10) = 69)) * 1)
à valider cette fois en matricielle*, à cause du test
"SI(ESTVIDE(A1:A10)" résoud le problème des
éventuelles cellules vides pour le "E".
* Pour valider en matricielle, il faut appuyer à la fois sur 3
touches, Commande + Maj + Retour sur Mac ou Ctrl + Maj +
Retour sur PCBonjour Pascal,
Je n'ai pas compris la même chose que toi ;-(((
Selon moi, Lucho voudrait que "e" soit équivalent à un demi-heure
et "E" à 1 heure et pouvoir les différencier avec NB.SI()
=NB.SI(Plage;"e") pour le total des 1/2 heures, et
=NB.SI(Plage;"E") pour le total des heures entières.
Son problème est lié au fait que NB.SI() ne fait pas de distinction
entre "e" et "E".
Lucho, si tu lis ce message, précise si c'est bien de cela qu'il
s'agit.Salut Voilà un code qui pourra te servir
Attribute VB_Name = "MajusculesMinuscules"
Sub Majuscule2() 'Benoît Marchand
'évite de mettre en majuscule les cellules qui contiennent une
formule '(elle serait perdue dans ce cas)
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value >>> UCase(cell.Value) Next
Fin:
End Sub
Sub Minuscule2() 'Benoît Marchand
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value >>> LCase(cell.Value) Next
Fin:
End Sub
'Personnellement , j 'utilise une petite variante lorsque je mets
une plage 'en minuscule, je mets en majuscule le premier caractère.
Cela donne cela :
Sub MiseEnMiniscule() 'Benoît Marchand + fs
For Each cell In Selection
If (Not cell.HasFormula) Then
cell.Value = UCase(Left(cell.Value, 1)) & _
LCase(Right(cell.Value, Len(cell.Value) - 1))
End If
Next
End Sub
Salut
Pascal
"Lucho" a écrit dans le message de
news:3fd1af43$0$6976$bonjour, je me heurte a un prb que je n'arrive pas a resoudre,
j'utilise dans un tableau la fonction nb.si pour comptabilise des
heures de travail de differante categorie
mon prob : a l'heure actuel j'utilise par exemple E = 30 min et EE
= 1h de travail en entretien materiel, pour que je voudrai faire e
( en
minuscule )= 30 min et E ( en maj ) = 1h
est ce possible
merci
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
Bonjour à tous,
Autre solution avec la fonction EXACT :
=SOMMEPROD((EXACT(A1:A9;"e"))*0,5)+SOMMEPROD((EXACT(A1:A9;"E"))*1)
A+Re,
Si mon hypothèse est la bonne, on peut s'en sortir en rempla-
çant NBSI() par SOMMEPROD().
Toutes les caractères ont un code ASCII, qui va de 65 (pour le
"A") à 90 ("Z") pour les majuscules et de 97 ("a") à 122
("z") pour les minuscules.
=SOMMEPROD((CODE(A1:A10) = 69) * 1)
permet de renvoyer le nombre de "E" dans la plage "A1:A10"
et
=SOMMEPROD((CODE(A1:A10) = 101) * 1)
renvoie le nombre de "e"
On peut remplacer 69 et 101 par CODE("E") et CODE("e").
Les contraintes sont les suivantes :
C'est la première lettre de la cellule qui est testée, et cela ne
fonctionne que s'il n'y a pas de cellule vide, car CODE() ren-
voie
alors une erreur.
Si ce n'est pas le cas, des adaptations sont nécessaires :
=SOMMEPROD((SI(ESTVIDE(A1:A10);0;CODE(A1:A10) = 69)) * 1)
à valider cette fois en matricielle*, à cause du test
"SI(ESTVIDE(A1:A10)" résoud le problème des
éventuelles cellules vides pour le "E".
* Pour valider en matricielle, il faut appuyer à la fois sur 3
touches, Commande + Maj + Retour sur Mac ou Ctrl + Maj +
Retour sur PCBonjour Pascal,
Je n'ai pas compris la même chose que toi ;-(((
Selon moi, Lucho voudrait que "e" soit équivalent à un demi-heure
et "E" à 1 heure et pouvoir les différencier avec NB.SI()
=NB.SI(Plage;"e") pour le total des 1/2 heures, et
=NB.SI(Plage;"E") pour le total des heures entières.
Son problème est lié au fait que NB.SI() ne fait pas de distinction
entre "e" et "E".
Lucho, si tu lis ce message, précise si c'est bien de cela qu'il
s'agit.Salut Voilà un code qui pourra te servir
Attribute VB_Name = "MajusculesMinuscules"
Sub Majuscule2() 'Benoît Marchand
'évite de mettre en majuscule les cellules qui contiennent une
formule '(elle serait perdue dans ce cas)
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value >>>> UCase(cell.Value) Next
Fin:
End Sub
Sub Minuscule2() 'Benoît Marchand
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value >>>> LCase(cell.Value) Next
Fin:
End Sub
'Personnellement , j 'utilise une petite variante lorsque je mets
une plage 'en minuscule, je mets en majuscule le premier caractère.
Cela donne cela :
Sub MiseEnMiniscule() 'Benoît Marchand + fs
For Each cell In Selection
If (Not cell.HasFormula) Then
cell.Value = UCase(Left(cell.Value, 1)) & _
LCase(Right(cell.Value, Len(cell.Value) - 1))
End If
Next
End Sub
Salut
Pascal
"Lucho" a écrit dans le message de
news:3fd1af43$0$6976$bonjour, je me heurte a un prb que je n'arrive pas a resoudre,
j'utilise dans un tableau la fonction nb.si pour comptabilise des
heures de travail de differante categorie
mon prob : a l'heure actuel j'utilise par exemple E = 30 min et EE
= 1h de travail en entretien materiel, pour que je voudrai faire e
( en
minuscule )= 30 min et E ( en maj ) = 1h
est ce possible
merci
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
Bonjour à tous,
Autre solution avec la fonction EXACT :
=SOMMEPROD((EXACT(A1:A9;"e"))*0,5)+SOMMEPROD((EXACT(A1:A9;"E"))*1)
A+
Re,
Si mon hypothèse est la bonne, on peut s'en sortir en rempla-
çant NBSI() par SOMMEPROD().
Toutes les caractères ont un code ASCII, qui va de 65 (pour le
"A") à 90 ("Z") pour les majuscules et de 97 ("a") à 122
("z") pour les minuscules.
=SOMMEPROD((CODE(A1:A10) = 69) * 1)
permet de renvoyer le nombre de "E" dans la plage "A1:A10"
et
=SOMMEPROD((CODE(A1:A10) = 101) * 1)
renvoie le nombre de "e"
On peut remplacer 69 et 101 par CODE("E") et CODE("e").
Les contraintes sont les suivantes :
C'est la première lettre de la cellule qui est testée, et cela ne
fonctionne que s'il n'y a pas de cellule vide, car CODE() ren-
voie
alors une erreur.
Si ce n'est pas le cas, des adaptations sont nécessaires :
=SOMMEPROD((SI(ESTVIDE(A1:A10);0;CODE(A1:A10) = 69)) * 1)
à valider cette fois en matricielle*, à cause du test
"SI(ESTVIDE(A1:A10)" résoud le problème des
éventuelles cellules vides pour le "E".
* Pour valider en matricielle, il faut appuyer à la fois sur 3
touches, Commande + Maj + Retour sur Mac ou Ctrl + Maj +
Retour sur PC
Bonjour Pascal,
Je n'ai pas compris la même chose que toi ;-(((
Selon moi, Lucho voudrait que "e" soit équivalent à un demi-heure
et "E" à 1 heure et pouvoir les différencier avec NB.SI()
=NB.SI(Plage;"e") pour le total des 1/2 heures, et
=NB.SI(Plage;"E") pour le total des heures entières.
Son problème est lié au fait que NB.SI() ne fait pas de distinction
entre "e" et "E".
Lucho, si tu lis ce message, précise si c'est bien de cela qu'il
s'agit.
Salut Voilà un code qui pourra te servir
Attribute VB_Name = "MajusculesMinuscules"
Sub Majuscule2() 'Benoît Marchand
'évite de mettre en majuscule les cellules qui contiennent une
formule '(elle serait perdue dans ce cas)
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value >>>> UCase(cell.Value) Next
Fin:
End Sub
Sub Minuscule2() 'Benoît Marchand
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value >>>> LCase(cell.Value) Next
Fin:
End Sub
'Personnellement , j 'utilise une petite variante lorsque je mets
une plage 'en minuscule, je mets en majuscule le premier caractère.
Cela donne cela :
Sub MiseEnMiniscule() 'Benoît Marchand + fs
For Each cell In Selection
If (Not cell.HasFormula) Then
cell.Value = UCase(Left(cell.Value, 1)) & _
LCase(Right(cell.Value, Len(cell.Value) - 1))
End If
Next
End Sub
Salut
Pascal
"Lucho" <arnera@club-internet.fr> a écrit dans le message de
news:3fd1af43$0$6976$7a628cd7@news.club-internet.fr...
bonjour, je me heurte a un prb que je n'arrive pas a resoudre,
j'utilise dans un tableau la fonction nb.si pour comptabilise des
heures de travail de differante categorie
mon prob : a l'heure actuel j'utilise par exemple E = 30 min et EE
= 1h de travail en entretien materiel, pour que je voudrai faire e
( en
minuscule )
= 30 min et E ( en maj ) = 1h
est ce possible
merci
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
Bonjour à tous,
Autre solution avec la fonction EXACT :
=SOMMEPROD((EXACT(A1:A9;"e"))*0,5)+SOMMEPROD((EXACT(A1:A9;"E"))*1)
A+Re,
Si mon hypothèse est la bonne, on peut s'en sortir en rempla-
çant NBSI() par SOMMEPROD().
Toutes les caractères ont un code ASCII, qui va de 65 (pour le
"A") à 90 ("Z") pour les majuscules et de 97 ("a") à 122
("z") pour les minuscules.
=SOMMEPROD((CODE(A1:A10) = 69) * 1)
permet de renvoyer le nombre de "E" dans la plage "A1:A10"
et
=SOMMEPROD((CODE(A1:A10) = 101) * 1)
renvoie le nombre de "e"
On peut remplacer 69 et 101 par CODE("E") et CODE("e").
Les contraintes sont les suivantes :
C'est la première lettre de la cellule qui est testée, et cela ne
fonctionne que s'il n'y a pas de cellule vide, car CODE() ren-
voie
alors une erreur.
Si ce n'est pas le cas, des adaptations sont nécessaires :
=SOMMEPROD((SI(ESTVIDE(A1:A10);0;CODE(A1:A10) = 69)) * 1)
à valider cette fois en matricielle*, à cause du test
"SI(ESTVIDE(A1:A10)" résoud le problème des
éventuelles cellules vides pour le "E".
* Pour valider en matricielle, il faut appuyer à la fois sur 3
touches, Commande + Maj + Retour sur Mac ou Ctrl + Maj +
Retour sur PCBonjour Pascal,
Je n'ai pas compris la même chose que toi ;-(((
Selon moi, Lucho voudrait que "e" soit équivalent à un demi-heure
et "E" à 1 heure et pouvoir les différencier avec NB.SI()
=NB.SI(Plage;"e") pour le total des 1/2 heures, et
=NB.SI(Plage;"E") pour le total des heures entières.
Son problème est lié au fait que NB.SI() ne fait pas de distinction
entre "e" et "E".
Lucho, si tu lis ce message, précise si c'est bien de cela qu'il
s'agit.Salut Voilà un code qui pourra te servir
Attribute VB_Name = "MajusculesMinuscules"
Sub Majuscule2() 'Benoît Marchand
'évite de mettre en majuscule les cellules qui contiennent une
formule '(elle serait perdue dans ce cas)
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value >>>> UCase(cell.Value) Next
Fin:
End Sub
Sub Minuscule2() 'Benoît Marchand
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value >>>> LCase(cell.Value) Next
Fin:
End Sub
'Personnellement , j 'utilise une petite variante lorsque je mets
une plage 'en minuscule, je mets en majuscule le premier caractère.
Cela donne cela :
Sub MiseEnMiniscule() 'Benoît Marchand + fs
For Each cell In Selection
If (Not cell.HasFormula) Then
cell.Value = UCase(Left(cell.Value, 1)) & _
LCase(Right(cell.Value, Len(cell.Value) - 1))
End If
Next
End Sub
Salut
Pascal
"Lucho" a écrit dans le message de
news:3fd1af43$0$6976$bonjour, je me heurte a un prb que je n'arrive pas a resoudre,
j'utilise dans un tableau la fonction nb.si pour comptabilise des
heures de travail de differante categorie
mon prob : a l'heure actuel j'utilise par exemple E = 30 min et EE
= 1h de travail en entretien materiel, pour que je voudrai faire e
( en
minuscule )= 30 min et E ( en maj ) = 1h
est ce possible
merci
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
Bonjour Pascal,
Je n'ai pas compris la même chose que toi ;-(((
Selon moi, Lucho voudrait que "e" soit équivalent à un demi-heure
et "E" à 1 heure et pouvoir les différencier avec NB.SI()
=NB.SI(Plage;"e") pour le total des 1/2 heures, et
=NB.SI(Plage;"E") pour le total des heures entières.
Son problème est lié au fait que NB.SI() ne fait pas de distinction
entre "e" et "E".
Lucho, si tu lis ce message, précise si c'est bien de cela qu'il s'agit.Salut Voilà un code qui pourra te servir
Attribute VB_Name = "MajusculesMinuscules"
Sub Majuscule2() 'Benoît Marchand
'évite de mettre en majuscule les cellules qui contiennent une formule
'(elle serait perdue dans ce cas)
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value = UCase(cell.Value)
Next
Fin:
End Sub
Sub Minuscule2() 'Benoît Marchand
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value = LCase(cell.Value)
Next
Fin:
End Sub
'Personnellement , j 'utilise une petite variante lorsque je mets une
plage
'en minuscule, je mets en majuscule le premier caractère. Cela donne
cela :
Sub MiseEnMiniscule() 'Benoît Marchand + fs
For Each cell In Selection
If (Not cell.HasFormula) Then
cell.Value = UCase(Left(cell.Value, 1)) & _
LCase(Right(cell.Value, Len(cell.Value) - 1))
End If
Next
End Sub
Salut
Pascal
"Lucho" a écrit dans le message de
news:3fd1af43$0$6976$bonjour, je me heurte a un prb que je n'arrive pas a resoudre,
j'utilise
dans un tableau la fonction nb.si pour comptabilise des heures de
travail
dedifferante categorie
mon prob : a l'heure actuel j'utilise par exemple E = 30 min et EE 1h de
travail en entretien materiel, pour que je voudrai faire e ( en
minuscule )= 30 min et E ( en maj ) = 1h
est ce possible
merci
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
Bonjour Pascal,
Je n'ai pas compris la même chose que toi ;-(((
Selon moi, Lucho voudrait que "e" soit équivalent à un demi-heure
et "E" à 1 heure et pouvoir les différencier avec NB.SI()
=NB.SI(Plage;"e") pour le total des 1/2 heures, et
=NB.SI(Plage;"E") pour le total des heures entières.
Son problème est lié au fait que NB.SI() ne fait pas de distinction
entre "e" et "E".
Lucho, si tu lis ce message, précise si c'est bien de cela qu'il s'agit.
Salut Voilà un code qui pourra te servir
Attribute VB_Name = "MajusculesMinuscules"
Sub Majuscule2() 'Benoît Marchand
'évite de mettre en majuscule les cellules qui contiennent une formule
'(elle serait perdue dans ce cas)
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value = UCase(cell.Value)
Next
Fin:
End Sub
Sub Minuscule2() 'Benoît Marchand
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value = LCase(cell.Value)
Next
Fin:
End Sub
'Personnellement , j 'utilise une petite variante lorsque je mets une
plage
'en minuscule, je mets en majuscule le premier caractère. Cela donne
cela :
Sub MiseEnMiniscule() 'Benoît Marchand + fs
For Each cell In Selection
If (Not cell.HasFormula) Then
cell.Value = UCase(Left(cell.Value, 1)) & _
LCase(Right(cell.Value, Len(cell.Value) - 1))
End If
Next
End Sub
Salut
Pascal
"Lucho" <arnera@club-internet.fr> a écrit dans le message de
news:3fd1af43$0$6976$7a628cd7@news.club-internet.fr...
bonjour, je me heurte a un prb que je n'arrive pas a resoudre,
j'utilise
dans un tableau la fonction nb.si pour comptabilise des heures de
travail
de
differante categorie
mon prob : a l'heure actuel j'utilise par exemple E = 30 min et EE 1h de
travail en entretien materiel, pour que je voudrai faire e ( en
minuscule )
= 30 min et E ( en maj ) = 1h
est ce possible
merci
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
Bonjour Pascal,
Je n'ai pas compris la même chose que toi ;-(((
Selon moi, Lucho voudrait que "e" soit équivalent à un demi-heure
et "E" à 1 heure et pouvoir les différencier avec NB.SI()
=NB.SI(Plage;"e") pour le total des 1/2 heures, et
=NB.SI(Plage;"E") pour le total des heures entières.
Son problème est lié au fait que NB.SI() ne fait pas de distinction
entre "e" et "E".
Lucho, si tu lis ce message, précise si c'est bien de cela qu'il s'agit.Salut Voilà un code qui pourra te servir
Attribute VB_Name = "MajusculesMinuscules"
Sub Majuscule2() 'Benoît Marchand
'évite de mettre en majuscule les cellules qui contiennent une formule
'(elle serait perdue dans ce cas)
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value = UCase(cell.Value)
Next
Fin:
End Sub
Sub Minuscule2() 'Benoît Marchand
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value = LCase(cell.Value)
Next
Fin:
End Sub
'Personnellement , j 'utilise une petite variante lorsque je mets une
plage
'en minuscule, je mets en majuscule le premier caractère. Cela donne
cela :
Sub MiseEnMiniscule() 'Benoît Marchand + fs
For Each cell In Selection
If (Not cell.HasFormula) Then
cell.Value = UCase(Left(cell.Value, 1)) & _
LCase(Right(cell.Value, Len(cell.Value) - 1))
End If
Next
End Sub
Salut
Pascal
"Lucho" a écrit dans le message de
news:3fd1af43$0$6976$bonjour, je me heurte a un prb que je n'arrive pas a resoudre,
j'utilise
dans un tableau la fonction nb.si pour comptabilise des heures de
travail
dedifferante categorie
mon prob : a l'heure actuel j'utilise par exemple E = 30 min et EE 1h de
travail en entretien materiel, pour que je voudrai faire e ( en
minuscule )= 30 min et E ( en maj ) = 1h
est ce possible
merci
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
C'est bien ce que j'avais compris aussi.
Donc je pensais que ce code lui servirait.
Maintenant c'est vrai que j'ai lu un peu vite aussi
"Michel Gaboly" a écrit dans le message de
news:Bonjour Pascal,
Je n'ai pas compris la même chose que toi ;-(((
Selon moi, Lucho voudrait que "e" soit équivalent à un demi-heure
et "E" à 1 heure et pouvoir les différencier avec NB.SI()
=NB.SI(Plage;"e") pour le total des 1/2 heures, et
=NB.SI(Plage;"E") pour le total des heures entières.
Son problème est lié au fait que NB.SI() ne fait pas de distinction
entre "e" et "E".
Lucho, si tu lis ce message, précise si c'est bien de cela qu'il s'agit.Salut Voilà un code qui pourra te servir
Attribute VB_Name = "MajusculesMinuscules"
Sub Majuscule2() 'Benoît Marchand
'évite de mettre en majuscule les cellules qui contiennent une formule
'(elle serait perdue dans ce cas)
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value = UCase(cell.Value)
Next
Fin:
End Sub
Sub Minuscule2() 'Benoît Marchand
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value = LCase(cell.Value)
Next
Fin:
End Sub
'Personnellement , j 'utilise une petite variante lorsque je mets une
plage'en minuscule, je mets en majuscule le premier caractère. Cela donne
cela :
Sub MiseEnMiniscule() 'Benoît Marchand + fs
For Each cell In Selection
If (Not cell.HasFormula) Then
cell.Value = UCase(Left(cell.Value, 1)) & _
LCase(Right(cell.Value, Len(cell.Value) - 1))
End If
Next
End Sub
Salut
Pascal
"Lucho" a écrit dans le message de
news:3fd1af43$0$6976$bonjour, je me heurte a un prb que je n'arrive pas a resoudre,
j'utilisedans un tableau la fonction nb.si pour comptabilise des heures de
travaildedifferante categorie
mon prob : a l'heure actuel j'utilise par exemple E = 30 min et EE > 1h de
travail en entretien materiel, pour que je voudrai faire e ( en
minuscule )= 30 min et E ( en maj ) = 1h
est ce possible
merci
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
C'est bien ce que j'avais compris aussi.
Donc je pensais que ce code lui servirait.
Maintenant c'est vrai que j'ai lu un peu vite aussi
"Michel Gaboly" <michel@Suppgaboly.com> a écrit dans le message de
news:3FD1CDCD.FED783BB@Suppgaboly.com...
Bonjour Pascal,
Je n'ai pas compris la même chose que toi ;-(((
Selon moi, Lucho voudrait que "e" soit équivalent à un demi-heure
et "E" à 1 heure et pouvoir les différencier avec NB.SI()
=NB.SI(Plage;"e") pour le total des 1/2 heures, et
=NB.SI(Plage;"E") pour le total des heures entières.
Son problème est lié au fait que NB.SI() ne fait pas de distinction
entre "e" et "E".
Lucho, si tu lis ce message, précise si c'est bien de cela qu'il s'agit.
Salut Voilà un code qui pourra te servir
Attribute VB_Name = "MajusculesMinuscules"
Sub Majuscule2() 'Benoît Marchand
'évite de mettre en majuscule les cellules qui contiennent une formule
'(elle serait perdue dans ce cas)
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value = UCase(cell.Value)
Next
Fin:
End Sub
Sub Minuscule2() 'Benoît Marchand
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value = LCase(cell.Value)
Next
Fin:
End Sub
'Personnellement , j 'utilise une petite variante lorsque je mets une
plage
'en minuscule, je mets en majuscule le premier caractère. Cela donne
cela :
Sub MiseEnMiniscule() 'Benoît Marchand + fs
For Each cell In Selection
If (Not cell.HasFormula) Then
cell.Value = UCase(Left(cell.Value, 1)) & _
LCase(Right(cell.Value, Len(cell.Value) - 1))
End If
Next
End Sub
Salut
Pascal
"Lucho" <arnera@club-internet.fr> a écrit dans le message de
news:3fd1af43$0$6976$7a628cd7@news.club-internet.fr...
bonjour, je me heurte a un prb que je n'arrive pas a resoudre,
j'utilise
dans un tableau la fonction nb.si pour comptabilise des heures de
travail
de
differante categorie
mon prob : a l'heure actuel j'utilise par exemple E = 30 min et EE > 1h de
travail en entretien materiel, pour que je voudrai faire e ( en
minuscule )
= 30 min et E ( en maj ) = 1h
est ce possible
merci
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
C'est bien ce que j'avais compris aussi.
Donc je pensais que ce code lui servirait.
Maintenant c'est vrai que j'ai lu un peu vite aussi
"Michel Gaboly" a écrit dans le message de
news:Bonjour Pascal,
Je n'ai pas compris la même chose que toi ;-(((
Selon moi, Lucho voudrait que "e" soit équivalent à un demi-heure
et "E" à 1 heure et pouvoir les différencier avec NB.SI()
=NB.SI(Plage;"e") pour le total des 1/2 heures, et
=NB.SI(Plage;"E") pour le total des heures entières.
Son problème est lié au fait que NB.SI() ne fait pas de distinction
entre "e" et "E".
Lucho, si tu lis ce message, précise si c'est bien de cela qu'il s'agit.Salut Voilà un code qui pourra te servir
Attribute VB_Name = "MajusculesMinuscules"
Sub Majuscule2() 'Benoît Marchand
'évite de mettre en majuscule les cellules qui contiennent une formule
'(elle serait perdue dans ce cas)
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value = UCase(cell.Value)
Next
Fin:
End Sub
Sub Minuscule2() 'Benoît Marchand
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value = LCase(cell.Value)
Next
Fin:
End Sub
'Personnellement , j 'utilise une petite variante lorsque je mets une
plage'en minuscule, je mets en majuscule le premier caractère. Cela donne
cela :
Sub MiseEnMiniscule() 'Benoît Marchand + fs
For Each cell In Selection
If (Not cell.HasFormula) Then
cell.Value = UCase(Left(cell.Value, 1)) & _
LCase(Right(cell.Value, Len(cell.Value) - 1))
End If
Next
End Sub
Salut
Pascal
"Lucho" a écrit dans le message de
news:3fd1af43$0$6976$bonjour, je me heurte a un prb que je n'arrive pas a resoudre,
j'utilisedans un tableau la fonction nb.si pour comptabilise des heures de
travaildedifferante categorie
mon prob : a l'heure actuel j'utilise par exemple E = 30 min et EE > 1h de
travail en entretien materiel, pour que je voudrai faire e ( en
minuscule )= 30 min et E ( en maj ) = 1h
est ce possible
merci
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
Ou encore (un peu plus court) :
=SOMME((EXACT(A1:A9;"e"))*0,5;(EXACT(A1:A9;"E"))*1)
(matricielle)
--
Nicolas B.
Adresse @adresse.bidon.com invalide,
E-mail : www.cerbermail.com/?gAAILfkPsCBonjour à tous,
Autre solution avec la fonction EXACT :
=SOMMEPROD((EXACT(A1:A9;"e"))*0,5)+SOMMEPROD((EXACT(A1:A9;"E"))*1)
A+Re,
Si mon hypothèse est la bonne, on peut s'en sortir en rempla-
çant NBSI() par SOMMEPROD().
Toutes les caractères ont un code ASCII, qui va de 65 (pour le
"A") à 90 ("Z") pour les majuscules et de 97 ("a") à 122
("z") pour les minuscules.
=SOMMEPROD((CODE(A1:A10) = 69) * 1)
permet de renvoyer le nombre de "E" dans la plage "A1:A10"
et
=SOMMEPROD((CODE(A1:A10) = 101) * 1)
renvoie le nombre de "e"
On peut remplacer 69 et 101 par CODE("E") et CODE("e").
Les contraintes sont les suivantes :
C'est la première lettre de la cellule qui est testée, et cela ne
fonctionne que s'il n'y a pas de cellule vide, car CODE() ren-
voie
alors une erreur.
Si ce n'est pas le cas, des adaptations sont nécessaires :
=SOMMEPROD((SI(ESTVIDE(A1:A10);0;CODE(A1:A10) = 69)) * 1)
à valider cette fois en matricielle*, à cause du test
"SI(ESTVIDE(A1:A10)" résoud le problème des
éventuelles cellules vides pour le "E".
* Pour valider en matricielle, il faut appuyer à la fois sur 3
touches, Commande + Maj + Retour sur Mac ou Ctrl + Maj +
Retour sur PCBonjour Pascal,
Je n'ai pas compris la même chose que toi ;-(((
Selon moi, Lucho voudrait que "e" soit équivalent à un demi-heure
et "E" à 1 heure et pouvoir les différencier avec NB.SI()
=NB.SI(Plage;"e") pour le total des 1/2 heures, et
=NB.SI(Plage;"E") pour le total des heures entières.
Son problème est lié au fait que NB.SI() ne fait pas de distinction
entre "e" et "E".
Lucho, si tu lis ce message, précise si c'est bien de cela qu'il
s'agit.Salut Voilà un code qui pourra te servir
Attribute VB_Name = "MajusculesMinuscules"
Sub Majuscule2() 'Benoît Marchand
'évite de mettre en majuscule les cellules qui contiennent une
formule '(elle serait perdue dans ce cas)
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value > >>>> UCase(cell.Value) Next
Fin:
End Sub
Sub Minuscule2() 'Benoît Marchand
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value > >>>> LCase(cell.Value) Next
Fin:
End Sub
'Personnellement , j 'utilise une petite variante lorsque je mets
une plage 'en minuscule, je mets en majuscule le premier caractère.
Cela donne cela :
Sub MiseEnMiniscule() 'Benoît Marchand + fs
For Each cell In Selection
If (Not cell.HasFormula) Then
cell.Value = UCase(Left(cell.Value, 1)) & _
LCase(Right(cell.Value, Len(cell.Value) - 1))
End If
Next
End Sub
Salut
Pascal
"Lucho" a écrit dans le message de
news:3fd1af43$0$6976$bonjour, je me heurte a un prb que je n'arrive pas a resoudre,
j'utilise dans un tableau la fonction nb.si pour comptabilise des
heures de travail de differante categorie
mon prob : a l'heure actuel j'utilise par exemple E = 30 min et EE
= 1h de travail en entretien materiel, pour que je voudrai faire e
( en
minuscule )= 30 min et E ( en maj ) = 1h
est ce possible
merci
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
Ou encore (un peu plus court) :
=SOMME((EXACT(A1:A9;"e"))*0,5;(EXACT(A1:A9;"E"))*1)
(matricielle)
--
Nicolas B.
Adresse @adresse.bidon.com invalide,
E-mail : www.cerbermail.com/?gAAILfkPsC
Bonjour à tous,
Autre solution avec la fonction EXACT :
=SOMMEPROD((EXACT(A1:A9;"e"))*0,5)+SOMMEPROD((EXACT(A1:A9;"E"))*1)
A+
Re,
Si mon hypothèse est la bonne, on peut s'en sortir en rempla-
çant NBSI() par SOMMEPROD().
Toutes les caractères ont un code ASCII, qui va de 65 (pour le
"A") à 90 ("Z") pour les majuscules et de 97 ("a") à 122
("z") pour les minuscules.
=SOMMEPROD((CODE(A1:A10) = 69) * 1)
permet de renvoyer le nombre de "E" dans la plage "A1:A10"
et
=SOMMEPROD((CODE(A1:A10) = 101) * 1)
renvoie le nombre de "e"
On peut remplacer 69 et 101 par CODE("E") et CODE("e").
Les contraintes sont les suivantes :
C'est la première lettre de la cellule qui est testée, et cela ne
fonctionne que s'il n'y a pas de cellule vide, car CODE() ren-
voie
alors une erreur.
Si ce n'est pas le cas, des adaptations sont nécessaires :
=SOMMEPROD((SI(ESTVIDE(A1:A10);0;CODE(A1:A10) = 69)) * 1)
à valider cette fois en matricielle*, à cause du test
"SI(ESTVIDE(A1:A10)" résoud le problème des
éventuelles cellules vides pour le "E".
* Pour valider en matricielle, il faut appuyer à la fois sur 3
touches, Commande + Maj + Retour sur Mac ou Ctrl + Maj +
Retour sur PC
Bonjour Pascal,
Je n'ai pas compris la même chose que toi ;-(((
Selon moi, Lucho voudrait que "e" soit équivalent à un demi-heure
et "E" à 1 heure et pouvoir les différencier avec NB.SI()
=NB.SI(Plage;"e") pour le total des 1/2 heures, et
=NB.SI(Plage;"E") pour le total des heures entières.
Son problème est lié au fait que NB.SI() ne fait pas de distinction
entre "e" et "E".
Lucho, si tu lis ce message, précise si c'est bien de cela qu'il
s'agit.
Salut Voilà un code qui pourra te servir
Attribute VB_Name = "MajusculesMinuscules"
Sub Majuscule2() 'Benoît Marchand
'évite de mettre en majuscule les cellules qui contiennent une
formule '(elle serait perdue dans ce cas)
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value > >>>> UCase(cell.Value) Next
Fin:
End Sub
Sub Minuscule2() 'Benoît Marchand
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value > >>>> LCase(cell.Value) Next
Fin:
End Sub
'Personnellement , j 'utilise une petite variante lorsque je mets
une plage 'en minuscule, je mets en majuscule le premier caractère.
Cela donne cela :
Sub MiseEnMiniscule() 'Benoît Marchand + fs
For Each cell In Selection
If (Not cell.HasFormula) Then
cell.Value = UCase(Left(cell.Value, 1)) & _
LCase(Right(cell.Value, Len(cell.Value) - 1))
End If
Next
End Sub
Salut
Pascal
"Lucho" <arnera@club-internet.fr> a écrit dans le message de
news:3fd1af43$0$6976$7a628cd7@news.club-internet.fr...
bonjour, je me heurte a un prb que je n'arrive pas a resoudre,
j'utilise dans un tableau la fonction nb.si pour comptabilise des
heures de travail de differante categorie
mon prob : a l'heure actuel j'utilise par exemple E = 30 min et EE
= 1h de travail en entretien materiel, pour que je voudrai faire e
( en
minuscule )
= 30 min et E ( en maj ) = 1h
est ce possible
merci
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
Ou encore (un peu plus court) :
=SOMME((EXACT(A1:A9;"e"))*0,5;(EXACT(A1:A9;"E"))*1)
(matricielle)
--
Nicolas B.
Adresse @adresse.bidon.com invalide,
E-mail : www.cerbermail.com/?gAAILfkPsCBonjour à tous,
Autre solution avec la fonction EXACT :
=SOMMEPROD((EXACT(A1:A9;"e"))*0,5)+SOMMEPROD((EXACT(A1:A9;"E"))*1)
A+Re,
Si mon hypothèse est la bonne, on peut s'en sortir en rempla-
çant NBSI() par SOMMEPROD().
Toutes les caractères ont un code ASCII, qui va de 65 (pour le
"A") à 90 ("Z") pour les majuscules et de 97 ("a") à 122
("z") pour les minuscules.
=SOMMEPROD((CODE(A1:A10) = 69) * 1)
permet de renvoyer le nombre de "E" dans la plage "A1:A10"
et
=SOMMEPROD((CODE(A1:A10) = 101) * 1)
renvoie le nombre de "e"
On peut remplacer 69 et 101 par CODE("E") et CODE("e").
Les contraintes sont les suivantes :
C'est la première lettre de la cellule qui est testée, et cela ne
fonctionne que s'il n'y a pas de cellule vide, car CODE() ren-
voie
alors une erreur.
Si ce n'est pas le cas, des adaptations sont nécessaires :
=SOMMEPROD((SI(ESTVIDE(A1:A10);0;CODE(A1:A10) = 69)) * 1)
à valider cette fois en matricielle*, à cause du test
"SI(ESTVIDE(A1:A10)" résoud le problème des
éventuelles cellules vides pour le "E".
* Pour valider en matricielle, il faut appuyer à la fois sur 3
touches, Commande + Maj + Retour sur Mac ou Ctrl + Maj +
Retour sur PCBonjour Pascal,
Je n'ai pas compris la même chose que toi ;-(((
Selon moi, Lucho voudrait que "e" soit équivalent à un demi-heure
et "E" à 1 heure et pouvoir les différencier avec NB.SI()
=NB.SI(Plage;"e") pour le total des 1/2 heures, et
=NB.SI(Plage;"E") pour le total des heures entières.
Son problème est lié au fait que NB.SI() ne fait pas de distinction
entre "e" et "E".
Lucho, si tu lis ce message, précise si c'est bien de cela qu'il
s'agit.Salut Voilà un code qui pourra te servir
Attribute VB_Name = "MajusculesMinuscules"
Sub Majuscule2() 'Benoît Marchand
'évite de mettre en majuscule les cellules qui contiennent une
formule '(elle serait perdue dans ce cas)
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value > >>>> UCase(cell.Value) Next
Fin:
End Sub
Sub Minuscule2() 'Benoît Marchand
On Error GoTo Fin
For Each cell In Selection
If cell.HasFormula = False Then cell.Value > >>>> LCase(cell.Value) Next
Fin:
End Sub
'Personnellement , j 'utilise une petite variante lorsque je mets
une plage 'en minuscule, je mets en majuscule le premier caractère.
Cela donne cela :
Sub MiseEnMiniscule() 'Benoît Marchand + fs
For Each cell In Selection
If (Not cell.HasFormula) Then
cell.Value = UCase(Left(cell.Value, 1)) & _
LCase(Right(cell.Value, Len(cell.Value) - 1))
End If
Next
End Sub
Salut
Pascal
"Lucho" a écrit dans le message de
news:3fd1af43$0$6976$bonjour, je me heurte a un prb que je n'arrive pas a resoudre,
j'utilise dans un tableau la fonction nb.si pour comptabilise des
heures de travail de differante categorie
mon prob : a l'heure actuel j'utilise par exemple E = 30 min et EE
= 1h de travail en entretien materiel, pour que je voudrai faire e
( en
minuscule )= 30 min et E ( en maj ) = 1h
est ce possible
merci
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
=SOMME((EXACT(A1:A9;"e"))*0,5;(EXACT(A1:A9;"E"))*1)
(matricielle)
=SOMME((EXACT(A1:A9;"e"))*0,5;(EXACT(A1:A9;"E"))*1)
(matricielle)
=SOMME((EXACT(A1:A9;"e"))*0,5;(EXACT(A1:A9;"E"))*1)
(matricielle)