Vous utilisez un navigateur obsolète. Il se peut que ce site ou d'autres sites Web ne s'affichent pas correctement. Vous devez le mettre à jour ou utiliser un navigateur alternatif.
Bonjour à toutes et à tous
Novice sur Excel, est ce que l'un d'entre vous pourrait m'expliquer la formule que je dois appliquer à une cellule excel qui a une heure précise car je voudrais faire sonner mon PC lorsque l'horloge interne de celui-ci arrive à l'heure inscrite dans cette cellule avec l'apparition d'un message.
Grands Merci à toutes et tous
Bonne journée
Il faut 2 macros, la 1ère dans le code de la feuille (clic droit sur l'onglet et Visualiser le code) :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address <> "$A$1" Then Exit Sub
Dim ref As Range
Set ref = ActiveCell
Application.EnableEvents = False
On Error Resume Next
Application.Undo
Application.OnTime Target, "Message", Schedule:=False 'annule la procédure pour le moment précédent si elle n'a pas encore été exécutée
Application.Undo
Application.EnableEvents = True
Application.OnTime Target, "Message"
ref.Select
End Sub
La 2ème dans un module (dans la feuille VBA, menu Insertion-Module) :
Code:
Sub Message()
MsgBox "C'est l'heure !"
End Sub
Vous entrez la date et l'heure dans la cellule A1 par exemple 15/1 17:35
Le contenu de cette cellule peut toujours être modifié, seul le dernier contenu sera pris en compte pour le message.
A+
Edition : on peut ne pas mettre la date, mais entrer seulement l'heure 17:35. Dans ce cas le message apparaîtra tous les jours à cette heure là.
Mais il faut alors lancer la procédure à l'ouverture du fichier par cette macro à placer dans le code de ThisWorkbook (regarder en haut à gauche dans la feuille VBA) :
Code:
Private Sub Workbook_Open()
Sheets("Feuil1").Range("A1").Value = Sheets("Feuil1").Range("A1").Value
End Sub
(Légère modif du code de la 1ère macro : On Error Resume Next avant Application.Undo)
Excusez moi mais comme je suis novice j'ai oublié de vous dire que dans ma feuille Excel j'ai plusieurs cellules avec une heures précise mais différente. Il faut que le PC sonne et me prévienne pour chaque heure.
Dans votre 1ere Macro l'ordinateur emettera-t-il un son?
"On Error Resume Next"se met-il devant le deuxième "Application.Undo" ?
1) Pas de problème s'il y a plusieurs cellules avec des heures, par exemple A1, B2, C3 (vous adaptez bien sûr) :
- dans la 1ère macro 2ème ligne, vous devez alors écrire :
Code:
If Intersect(Target, Range("A1,B2,C3")) Is Nothing Then Exit Sub
- si vous devez utiliser la 3ème macro (Open), modifiez ainsi :
Code:
Private Sub Workbook_Open()
With Sheets("Feuil1")
.Range("A1").Value = .Range("A1").Value
.Range("B2").Value = .Range("B2").Value
.Range("C3").Value = .Range("C3").Value
End With
End Sub
2) Les messages d'alerte émettent des sons, dans la 2ème macro, si vous utilisez :
Code:
Msgbox "C'est l'heure"
vous obtenez le son par défaut de l'ordinateur, mais vous pouvez aussi utiliser :
Bonjour Job 75
Encore merci de bien vouloir m'aider
J'ai rentre vos 3 Macros dans ma feuille en les adaptant
Le debogueur d'Excel trouve un problème sur la deuxième ligne de la troisième macro
"Erreur d'exécution 9 L'Indice n'appartient pas à la sélection"
Bonne Soiree
Bonjour Job 75
Encore merci pour votre aide
J'ai rentre dans ma feuille les trois macros en les adaptant
Et pourtant le debogueur d'Excel me dit qu'il y a une erreur sur la ligne 2 de la troisième macro
"Erreur d'exécution 9 L'indice n'appartient pas à la sélection"
Excuser moi pour la répétition du message je ne sais pas ce qui c'est passe
Ça Fonctionne
J'ai simplement changer de tactique
J'ai fais une copie, de la feuille dans laquelle je voulais faire sonner le PC, dans un nouveau classeur à une feuille
MERCI pour le coup de main
Je voudrais une petite précision
Es ce dans Excel ou Windows que l'on trouve les allocation chiffre que l'on peut mettre dans la ligne 2 du Code du Module; Si je rajoute un son dans Windows comment lui allouer une adresse chiffrée
Peut on allouer a chaque cellule d'Excel un Message différent d'avertissement
je pense que l'on doit rajouter des lignes de code dans la première macro et rajouter des modules
Merci pour cette macro vraiment bien utile pour ne pas oublier une tâche à effectuer.
Est-il possible de mettre la date dans une colonne (ex : A) et l'heure dans une seconde colonne (B) ?
Ils m'ont installé un module qui lance un calendrier dans excel quand je clique sur le colonne date, du coup ça fait sonner l'alerte de la macro si j'ai une tache dans la même journée
Ce site utilise des cookies pour personnaliser le contenu, adapter votre expérience et vous garder connecté si vous vous enregistrez.
En continuant à utiliser ce site, vous consentez à notre utilisation de cookies.