OVH Cloud OVH Cloud

Le temps

2 réponses
Avatar
Denys
Rebonjour,

cette fois-ci, j'ai un probl=E8me avec le temps. Je veux=20
qu'Excel multiplie la valeur de la cellule en colonne G=20
par 7 heures et 1/2. Voici le code:

Dim Ligne As Long

With ActiveSheet()
Ligne =3D .[a65536].End(xlUp)(2).Row

With ActiveSheet()
=20
.Range("G" & Ligne).Formula =3D "=3DNetworkdays(E" &=20
Ligne & ",F" & Ligne & ",Feries)"
.Range("H" & Ligne).Formula =3D "=3D (G" & Ligne & ") *=20
("7:30")"

Excel me dit Expected end of statement sur le chiffre 7...
Comprends pas pourquoi.... =C7a fonctionne bien quand ce=20
n'est pas en VBA...

Sauriez pourquoi ???

Merci

Denys

2 réponses

Avatar
Denys
Allo,

J'ai trouvé....

.Range("H" & Ligne) = "= (G" & Ligne & ") * (1/24)*7.5"

Cellule formatée [h]mm:

Et voilà....

À bientôt...

Denys

-----Original Message-----
Rebonjour,

cette fois-ci, j'ai un problème avec le temps. Je veux
qu'Excel multiplie la valeur de la cellule en colonne G
par 7 heures et 1/2. Voici le code:

Dim Ligne As Long

With ActiveSheet()
Ligne = .[a65536].End(xlUp)(2).Row

With ActiveSheet()

.Range("G" & Ligne).Formula = "=Networkdays(E" &
Ligne & ",F" & Ligne & ",Feries)"
.Range("H" & Ligne).Formula = "= (G" & Ligne & ") *
("7:30")"

Excel me dit Expected end of statement sur le chiffre 7...
Comprends pas pourquoi.... Ça fonctionne bien quand ce
n'est pas en VBA...

Sauriez pourquoi ???

Merci

Denys
.



Avatar
Frédéric Sigonneau
Bonjour,

Même si tu as trouvé une alternative, il peut t'intéresser de savoir que
l'erreur de la première version de ton code est seulement une petite erreur de
syntaxe. Lorsqu'on veut mettre une expression entre guillemets en VBA, il faut
les doubler :

.Range("H" & Ligne).Formula = "=(G" & Ligne & ")*(""7:30"")"

devrait faire ce que tu attends.

FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !


Rebonjour,

cette fois-ci, j'ai un problème avec le temps. Je veux
qu'Excel multiplie la valeur de la cellule en colonne G
par 7 heures et 1/2. Voici le code:

Dim Ligne As Long

With ActiveSheet()
Ligne = .[a65536].End(xlUp)(2).Row

With ActiveSheet()

.Range("G" & Ligne).Formula = "=Networkdays(E" &
Ligne & ",F" & Ligne & ",Feries)"
.Range("H" & Ligne).Formula = "= (G" & Ligne & ") *
("7:30")"

Excel me dit Expected end of statement sur le chiffre 7...
Comprends pas pourquoi.... Ça fonctionne bien quand ce
n'est pas en VBA...

Sauriez pourquoi ???

Merci

Denys