OVH Cloud OVH Cloud

Tester un lien et une date

2 réponses
Avatar
Elder
Bonjour à tous,

Dans ce poste j'ai deux petites questions qui concerne finalement le même
sujet à savoir le test d'une cellule. J'ai fait de nombreux essais avant de
poster mais je n'arrive pas à trouver la solution.

Voilà j'ai une première macro qui doit tester une date enfin plus exactement
un jour pour être lancé. Si cette macro est lancé un jour de semaine autre
que celui défini, cela fausse tout les comptes. J'ai donc insérer dans une
cellule la commande maintenant() avec comme formatage de cellule jjjj . Cela
fonctionnent parfaitement dans la cellule j'ai le jour de la semaine qui
s'affiche. Au début de ma macro je mets le code suivant :

If Range("I2") <> "samedi" Then
If MsgBox("Vous ne pouvez pas reporter avant samedi, continuez quand
même ?", vbYesNo) = vbNo Then End
End If

Seulement ça ne fonctionne pas. Par contre si j'écrit samedi dans la cellule
i2 en toute lettre cela fonctionne.

Pourriez vous m'indiquer la marche à suivre ?

2) Question 2
J'ai une macro assez longue qui se termine en ouvrant un lien hypertexte et
en copiant collant le fichier suivi par le lien hypertexte. Le problème
c'est que si le lien n'a pas été fait au préalable, la macro plante.
Comment tester si un lien Hypertext est bien en place avant de lancer la
macro est éventuellement en créer un d'office s'il n'en existe pas ( avec un
fichier type à la place ) pour éviter le plantage.

Merci d'avance.

2 réponses

Avatar
Nicolas B.
Salut,

Première question :
Les calculs, que ce soit dans Excel ou VBA ne se font pas à partir du format
affiché dans la cellule, mais à partir de la valeur qu'elle contient. Il
faut tester le jour de la semaine avec la fonction weekday(). 7 représente
le samedi :

Sub Test()
If Weekday(Range("I2")) <> 7 Then MsgBox "Blabla"
End Sub


A+
--
Nicolas B.

Adresse @adresse.bidon.com invalide,
E-mail : www.cerbermail.com/?gAAILfkPsC


Bonjour à tous,

Dans ce poste j'ai deux petites questions qui concerne finalement le
même sujet à savoir le test d'une cellule. J'ai fait de nombreux
essais avant de poster mais je n'arrive pas à trouver la solution.

Voilà j'ai une première macro qui doit tester une date enfin plus
exactement un jour pour être lancé. Si cette macro est lancé un jour
de semaine autre que celui défini, cela fausse tout les comptes. J'ai
donc insérer dans une cellule la commande maintenant() avec comme
formatage de cellule jjjj . Cela fonctionnent parfaitement dans la
cellule j'ai le jour de la semaine qui s'affiche. Au début de ma
macro je mets le code suivant :

If Range("I2") <> "samedi" Then
If MsgBox("Vous ne pouvez pas reporter avant samedi, continuez
quand même ?", vbYesNo) = vbNo Then End
End If

Seulement ça ne fonctionne pas. Par contre si j'écrit samedi dans la
cellule i2 en toute lettre cela fonctionne.

Pourriez vous m'indiquer la marche à suivre ?

2) Question 2
J'ai une macro assez longue qui se termine en ouvrant un lien
hypertexte et en copiant collant le fichier suivi par le lien
hypertexte. Le problème c'est que si le lien n'a pas été fait au
préalable, la macro plante. Comment tester si un lien Hypertext est
bien en place avant de lancer la macro est éventuellement en créer un
d'office s'il n'en existe pas ( avec un fichier type à la place )
pour éviter le plantage.

Merci d'avance.


Avatar
Elder
Merci Nicolas, tu sort du pétrin encore une fois !!!

"Nicolas B." a écrit dans le message de
news:%
Salut,

Première question :
Les calculs, que ce soit dans Excel ou VBA ne se font pas à partir du
format

affiché dans la cellule, mais à partir de la valeur qu'elle contient. Il
faut tester le jour de la semaine avec la fonction weekday(). 7 représente
le samedi :

Sub Test()
If Weekday(Range("I2")) <> 7 Then MsgBox "Blabla"
End Sub


A+
--
Nicolas B.

Adresse @adresse.bidon.com invalide,
E-mail : www.cerbermail.com/?gAAILfkPsC


Bonjour à tous,

Dans ce poste j'ai deux petites questions qui concerne finalement le
même sujet à savoir le test d'une cellule. J'ai fait de nombreux
essais avant de poster mais je n'arrive pas à trouver la solution.

Voilà j'ai une première macro qui doit tester une date enfin plus
exactement un jour pour être lancé. Si cette macro est lancé un jour
de semaine autre que celui défini, cela fausse tout les comptes. J'ai
donc insérer dans une cellule la commande maintenant() avec comme
formatage de cellule jjjj . Cela fonctionnent parfaitement dans la
cellule j'ai le jour de la semaine qui s'affiche. Au début de ma
macro je mets le code suivant :

If Range("I2") <> "samedi" Then
If MsgBox("Vous ne pouvez pas reporter avant samedi, continuez
quand même ?", vbYesNo) = vbNo Then End
End If

Seulement ça ne fonctionne pas. Par contre si j'écrit samedi dans la
cellule i2 en toute lettre cela fonctionne.

Pourriez vous m'indiquer la marche à suivre ?

2) Question 2
J'ai une macro assez longue qui se termine en ouvrant un lien
hypertexte et en copiant collant le fichier suivi par le lien
hypertexte. Le problème c'est que si le lien n'a pas été fait au
préalable, la macro plante. Comment tester si un lien Hypertext est
bien en place avant de lancer la macro est éventuellement en créer un
d'office s'il n'en existe pas ( avec un fichier type à la place )
pour éviter le plantage.

Merci d'avance.