message

  • Initiateur de la discussion rico
  • Date de début
R

rico

Guest
Je partage un classeur excel sur un serveur avec 2 personnes

quand je click sur un bouton une commande passe en validation.
Je voudrais lorsque je click sur ce bouton qu'un message d'alerte soit envoyer a une personne pour lui signifier que cette commande a été valider.(pas d'email).

merci.
 
P

papyjo

Guest
Bonjour Rico
Essaie la commande :
net send toto message

toto est l'identifiant, le hostname ou l'adresse IP de la personne
message est .. le message à passer.

Je ne connais pas l'interface depuis Excel pour lancer la commande, mais un expert pourra compléter .
J'utilise cette commande directement dans des batchs ou depuis demarrer executer (de Windobe) pour prévenir les collégues que le café est prêt.

Bonne journée à toi et à tous
Papyjo

NB : je suis nouveau en Excel et surtout sur ce forum, où j'apprécie beaucoup la politesse et la cordialité. un conseil va faire un tour sur la charte
 
@

@+Thierry

Guest
Bonjour PapyJoe, Rico, le Forum

Et oui, un petit mot de 7 lettres en début de post n'est pas si fatiguant à taper et ça a de suite de la gueule !! Donc on reprend

Bonjour,

Je partage un classeur excel sur un serveur avec 2 personnes....


Sinon la réponse de PapyJoe est très bien, mise en VBA directement je ne vois pas comment faire sans passer par une command DOS :

Private Const CommandCmd As String = "C:\Documents and Settings\Thierry\My Documents\My Commands\NetSend.cmd" '<<<<<<<<< Can Be Modified
Private Const CommandDos As String = "net send Computer_Name Test depuis VBA !!! " '<<<<<<<<<<<<<<<<<<< Can Be Modified

Sub MessageRun()
On Error GoTo ErrorHandler
Shell CommandCmd, vbNormalFocus
Exit Sub

ErrorHandler:
If Err = 53 Then
Call CreateCmd
Else
MsgBox "A non expected error has been generated " & Err.Number & " " & Err.Description
End If
End Sub

Private Sub CreateCmd()
Dim CmdString As String, CmdFile As String

With ThisWorkbook
CmdFile = CommandCmd
CmdString = RTrim(CommandDos)
End With

Open CmdFile For Output As #1
Print #1, CmdString
Close
Shell CommandCmd, vbNormalFocus
End Sub

Cette procédure en la lançant depuis "MessageRun" va générer un ".cmd" au premier lancement, dans le répertoire que l'on aura pris soin d'indiquer dans la constante "CommandCmd"... Si ce ".cmd" existe alors il ne sera plus re-générer...

La Constante "CommandDos" contient les mêmes informations que PapyJoe a indiqué...

Voilà ptet il y a plus simple mais ça fonctionne je viens de tester sous réseau Windows 2000

Bon Appétit
@+Thierry
 

Discussions similaires

Statistiques des forums

Discussions
312 664
Messages
2 090 676
Membres
104 633
dernier inscrit
benabidwajih