Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Envoi de SMS à partir d'un téléphone portable via ACCESS

18 réponses
Avatar
William Kameron
Bonjour à tous.

Je souhaite regulièrement envoyer des SMS par lot à partir d'une procédure
Access. Cette procédure devra extraire des informations de la liste des
membres de la table de ma Gestion des invitations que j'ai constitutué.

Où est--il possible de trouver une routine, un module ou un utilitaire
capable de me faire avancer dans mes recherche ?

J'ai bien téléchargé "Microsoft SMS Sender" mais je ne puis m'en servir car
je n'arrive pas à le piloter par automation. Est-ce possible de le piloter
par automation comme on ferait avec Word ou Excel à partir d'access ?

Il y a t-il des modules gratuits plus facile à utiliser ?

Merci pour vos contributions.

10 réponses

1 2
Avatar
Thierry (ze Titi)
Salut William Kameron !

En regardant dans le fichier d'aide fourni avec SMS Sender, j'ai vu
qu'il est possible d'utiliser le logiciel en ligne de commande. Tu peux
donc, en utilisant la commande Shell de VBA envoyer des SMS en ligne de
commande. C'est toujours mieux que rien... Je n'ai pas eu le temps de
regarder s'il existait une librairie utilisable.

Message du dimanche 15/07/2007

Bonjour à tous.

Je souhaite regulièrement envoyer des SMS par lot à partir d'une procédure
Access. Cette procédure devra extraire des informations de la liste des
membres de la table de ma Gestion des invitations que j'ai constitutué.

Où est--il possible de trouver une routine, un module ou un utilitaire
capable de me faire avancer dans mes recherche ?

J'ai bien téléchargé "Microsoft SMS Sender" mais je ne puis m'en servir car
je n'arrive pas à le piloter par automation. Est-ce possible de le piloter
par automation comme on ferait avec Word ou Excel à partir d'access ?

Il y a t-il des modules gratuits plus facile à utiliser ?

Merci pour vos contributions.


--
Cordialement,
Thierry

Tout pour réussir avec Access :
http://www.mpfa.info

Avatar
William Kameron
Ok Titi !

Je vais essayer.
Compte tenu du nombre de SMS à envoyer serait Super si la commande pouvait
alors s'exécuter sans prendre le temps pour afficher le module à chaque
lancement.

Je bricole cela et rends compte.

Merci pour ce coup de main.

A bientôt.




Salut William Kameron !

En regardant dans le fichier d'aide fourni avec SMS Sender, j'ai vu
qu'il est possible d'utiliser le logiciel en ligne de commande. Tu peux
donc, en utilisant la commande Shell de VBA envoyer des SMS en ligne de
commande. C'est toujours mieux que rien... Je n'ai pas eu le temps de
regarder s'il existait une librairie utilisable.

Message du dimanche 15/07/2007

Bonjour à tous.

Je souhaite regulièrement envoyer des SMS par lot à partir d'une procédure
Access. Cette procédure devra extraire des informations de la liste des
membres de la table de ma Gestion des invitations que j'ai constitutué.

Où est--il possible de trouver une routine, un module ou un utilitaire
capable de me faire avancer dans mes recherche ?

J'ai bien téléchargé "Microsoft SMS Sender" mais je ne puis m'en servir car
je n'arrive pas à le piloter par automation. Est-ce possible de le piloter
par automation comme on ferait avec Word ou Excel à partir d'access ?

Il y a t-il des modules gratuits plus facile à utiliser ?

Merci pour vos contributions.


--
Cordialement,
Thierry

Tout pour réussir avec Access :
http://www.mpfa.info






Avatar
William Kameron
Salut !
Mille fois merci...

Mais pour 200 SMS je reçois : "Votre message a été envoyé correctement" -
[OK] 200 fois !

Comment désactiver ce message ?


Ok Titi !

Je vais essayer.
Compte tenu du nombre de SMS à envoyer serait Super si la commande pouvait
alors s'exécuter sans prendre le temps pour afficher le module à chaque
lancement.

Je bricole cela et rends compte.

Merci pour ce coup de main.

A bientôt.




Salut William Kameron !

En regardant dans le fichier d'aide fourni avec SMS Sender, j'ai vu
qu'il est possible d'utiliser le logiciel en ligne de commande. Tu peux
donc, en utilisant la commande Shell de VBA envoyer des SMS en ligne de
commande. C'est toujours mieux que rien... Je n'ai pas eu le temps de
regarder s'il existait une librairie utilisable.

Message du dimanche 15/07/2007

Bonjour à tous.

Je souhaite regulièrement envoyer des SMS par lot à partir d'une procédure
Access. Cette procédure devra extraire des informations de la liste des
membres de la table de ma Gestion des invitations que j'ai constitutué.

Où est--il possible de trouver une routine, un module ou un utilitaire
capable de me faire avancer dans mes recherche ?

J'ai bien téléchargé "Microsoft SMS Sender" mais je ne puis m'en servir car
je n'arrive pas à le piloter par automation. Est-ce possible de le piloter
par automation comme on ferait avec Word ou Excel à partir d'access ?

Il y a t-il des modules gratuits plus facile à utiliser ?

Merci pour vos contributions.


--
Cordialement,
Thierry

Tout pour réussir avec Access :
http://www.mpfa.info








Avatar
Raymond [mvp]
Bonjour.

Si c'est possible, compte tenu que ta procédure fonctionne, il serait
souhaitable que l'ensemble de la communauté profite du système que tu as mis
en place et que le code soit mis à disposition.
Je pourrai également le placer sur mon site et voir si on peut proposer
l'automation access en plus.
merci de la part de tous.
--
@+
Raymond Access MVP http://www.OfficeSystemAccess.com/
http://officesystem.access.over-blog.com/
http://officesystem.access.free.fr/wiki/
Pour débuter sur le forum: http://www.mpfa.info/

Cet été, j'en ai rien à coder, je me forme : les devoirs de vacances
http://www.comscamp.com/Tracker/Redirect.ashx?linkidJd96883-a859-4212-b4a0-bce47c8e0d99


"William Kameron" a écrit dans le
message de news:
| Salut !
| Mille fois merci...
|
| Mais pour 200 SMS je reçois : "Votre message a été envoyé correctement" -
| [OK] 200 fois !
|
| Comment désactiver ce message ?
|
Avatar
Thierry (ze Titi)
Hello William !

Il ne semble pas que le passage par ligne de commande permette de
désactiver le message de confirmation. Mais si Raymond jette un coup
d'oeil pour passer par automation, peut-être y a t'il une chance.


En ce jour mémorable du jeudi 19/07/2007, tu as entrepris la lourde
tâche de taper sur ton clavier :
Salut !
Mille fois merci...

Mais pour 200 SMS je reçois : "Votre message a été envoyé correctement" -
[OK] 200 fois !

Comment désactiver ce message ?


Ok Titi !

Je vais essayer.
Compte tenu du nombre de SMS à envoyer serait Super si la commande pouvait
alors s'exécuter sans prendre le temps pour afficher le module à chaque
lancement.

Je bricole cela et rends compte.

Merci pour ce coup de main.

A bientôt.




Salut William Kameron !

En regardant dans le fichier d'aide fourni avec SMS Sender, j'ai vu
qu'il est possible d'utiliser le logiciel en ligne de commande. Tu peux
donc, en utilisant la commande Shell de VBA envoyer des SMS en ligne de
commande. C'est toujours mieux que rien... Je n'ai pas eu le temps de
regarder s'il existait une librairie utilisable.

Message du dimanche 15/07/2007

Bonjour à tous.

Je souhaite regulièrement envoyer des SMS par lot à partir d'une procédure
Access. Cette procédure devra extraire des informations de la liste des
membres de la table de ma Gestion des invitations que j'ai constitutué.

Où est--il possible de trouver une routine, un module ou un utilitaire
capable de me faire avancer dans mes recherche ?

J'ai bien téléchargé "Microsoft SMS Sender" mais je ne puis m'en servir
car je n'arrive pas à le piloter par automation. Est-ce possible de le
piloter par automation comme on ferait avec Word ou Excel à partir
d'access ?

Il y a t-il des modules gratuits plus facile à utiliser ?

Merci pour vos contributions.


--
Cordialement,
Thierry

Tout pour réussir avec Access :
http://www.mpfa.info" target="_blank" class="text-blue hover:opacity-90 " style="word-break: break-all;" rel="noopener nofollow">http://www.mpfa.info







--
Cordialement,
Thierry

Tout pour réussir avec Access :
http://www.mpfa.info" target="_blank" class="text-blue hover:opacity-90 " style="word-break: break-all;" rel="noopener nofollow">http://www.mpfa.info




Avatar
Raymond [mvp]
Bonjour Thierry.

on peut s'y atteler.
comment marche le système ? surtout le mobile? il faut le relier, l'appeler
? je ne m'en suis jamais soucié.

--
@+
Raymond Access MVP http://www.OfficeSystemAccess.com/
http://officesystem.access.over-blog.com/
http://officesystem.access.free.fr/wiki/
Pour débuter sur le forum: http://www.mpfa.info/

Cet été, j'en ai rien à coder, je me forme : les devoirs de vacances
http://www.comscamp.com/Tracker/Redirect.ashx?linkidJd96883-a859-4212-b4a0-bce47c8e0d99


"Thierry (ze Titi)" a écrit dans le
message de news:
| Hello William !
|
| Il ne semble pas que le passage par ligne de commande permette de
| désactiver le message de confirmation. Mais si Raymond jette un coup
| d'oeil pour passer par automation, peut-être y a t'il une chance.
|
|
Avatar
Thierry (ze Titi)
Bonjour Raymond,

du peu que j'ai lu de la documentation, il faut que le téléphone soit
connecté (peu importe le type de liaison) et qu'il soit reconnu par
Windows. Ensuite, il suffit (pour le passage par ligne de commande) de
passer en paramètre le numéro du destinataire et le message entre
guillemets. Ca doit suffire. Mais William doit être en mesure de nous
apporter des éclaircissements.

En ce jour mémorable du jeudi 19/07/2007, tu as entrepris la lourde
tâche de taper sur ton clavier :
Bonjour Thierry.

on peut s'y atteler.
comment marche le système ? surtout le mobile? il faut le relier, l'appeler
? je ne m'en suis jamais soucié.

--
@+
Raymond Access MVP http://www.OfficeSystemAccess.com/
http://officesystem.access.over-blog.com/
http://officesystem.access.free.fr/wiki/
Pour débuter sur le forum: http://www.mpfa.info/" target="_blank" class="text-blue hover:opacity-90 " style="word-break: break-all;" rel="noopener nofollow">http://www.mpfa.info/

Cet été, j'en ai rien à coder, je me forme : les devoirs de vacances
http://www.comscamp.com/Tracker/Redirect.ashx?linkidJd96883-a859-4212-b4a0-bce47c8e0d99


"Thierry (ze Titi)" a écrit dans le
message de news:
Hello William !

Il ne semble pas que le passage par ligne de commande permette de
désactiver le message de confirmation. Mais si Raymond jette un coup
d'oeil pour passer par automation, peut-être y a t'il une chance.



--
Cordialement,
Thierry

Tout pour réussir avec Access :
http://www.mpfa.info


Avatar
Raymond [mvp]
il n'y a pas d'automatisation d'après la doc ?

--
@+
Raymond Access MVP http://www.OfficeSystemAccess.com/
http://officesystem.access.over-blog.com/
http://officesystem.access.free.fr/wiki/
Pour débuter sur le forum: http://www.mpfa.info/

Cet été, j’en ai rien à coder, je me forme : les devoirs de vacances
http://www.comscamp.com/Tracker/Redirect.ashx?linkidJd96883-a859-4212-b4a0-bce47c8e0d99


"Raymond [mvp]" a écrit dans le message
de news:
Avatar
William Kameron
Bonsoir !

il n'y a pas d'automatisation d'après la doc ?



Non Raymond, il n'y en a pas.
Seule, la ligne de commande MSDOS nous est proposée.

Je repose le problème.

Je voudrais aligner plus de 200 SMS grâce à SMS Sender de Microsoft.
Ce module ne permet l'envoi des SMS ni Groupés, ni en masse. Il faut les
envoyer un à un.

Grâce à Ze Titi, j'ai pu en envoyer par la ligne de commande.

En bricolant j'ai pu en envoyer grâce au "SHELL".
Le message résultant de l'envoi je le désactive avec "AppActivate" et
"SendKeys"

SmsSender marche une série sur deux et me renvoie souvant une réponse
anormale.

Voici du reste l'ensemble du code :

/* DEBUT DU CODE ************************************

Sub SMS_en_Serie_Click()
On Error GoTo Err_SMS_en_Serie_Click
Dim stProgramName As String, ReturnValue As Variant
Dim maBds As Database
Dim maRst As Recordset
Dim SqlStr, ma_chsql, MessageSMS As String, varRetournée, Rep As Variant,
RegCount, NbreRelances As Long, Liste_Indicatifs_SMS As String

'<REQUETTE> est une requêtte qui contient les champs suivants:
' -[Relance effectuée]
' -[Date de la relance]
' -[A relancer]
' -[NuméroGSM]
' -[Membre]
' -[Titre de civilité]

' Liste_Indicatifs_SMS va contenir la liste des indicatifs des opérateurs de
GSM
' où des opérateur admettant les SMS. Dans mons cas, les deux premiers
' caractères suffisent pour les identifier.

'Initialisation de la liste des indicatifs des opérateurs SMS
'Dans la pratique cette liste est concatenée par le résultat d'une requête
Liste_Indicatifs_SMS = "- 20 - 30 - 70 - 71 - 72 - 73 - 74 - 75 - 76 -
77 -"

'Effacement de la liste des relances courantes
ma_chsql = "UPDATE [REQUETE] SET [Relance effectuée] = False, _
[Date de la relance] = NULL WHERE [Relance effectuée]=-1 AND [A relancer]=-1;"
DoCmd.SetWarnings False
DoCmd.RunSQL ma_chsql, False
DoCmd.SetWarnings True

'Traitement de la liste des contrats à relancer
Set maBds = CurrentDb()
SqlStr = "SELECT * FROM [REQUETE] WHERE [A relancer]=-1;"
Set maRst = maBds.OpenRecordset(SqlStr)
maRst.MoveLast
'Nombre des opérations à effectuer
NbreRelances = maRst.RecordCount

'Initialisation des variables de la boucle
Rep = 0
RegCount = 0
If Not maRst.EOF Then

'Initialisation de la barre de progression
varRetournée = SysCmd(acSysCmdInitMeter, _
"Gestion des relances par SMS...", NbreRelances)

'Recherche du premier cas
maRst.MoveFirst
While Not maRst.EOF
If Rep <> vbNo Then Rep = MsgBox("Message envoyé à :" _
& vbTab & maRst!Membre & vbCr & "Numéro GSM :" & vbTab & vbTab _
& maRst!NuméroGSM & String(4, vbCr) & _
"Un message vous sera envoyé avant chaque SMS jusqu'à la fin." & vbCr _
& vbTab & "- si vous ne voulez plus le recevoir, cliquez sur [NON] ," & vbCr _
& vbTab & "- si vous désirez arrêter le traitement et sur [ANNULER] "_
, vbYesNoCancel)
If Rep <> vbCancel Then

'Recherche si NuméroGSM commmence par l'indicatif d'opérateur
If InStr(1, Liste_Indicatifs_SMS, Left(maRst!NuméroGSM, 2))
1 Then
'Ecriture du message personalisé

MessageSMS = maRst![Titre de civilité] & " " &
maRst!Membre _
& ", Vous etes prie.... ce " & maRst![Terme]

'Création de la ligne de commande du Shell
stProgramName = "C:Program filesMicrosoft SMS _
SenderSMSSENDER /p:" & maRst!NuméroGSM & " /m:" & Chr(171) _
& MessageSMS & Chr(171) & " /l"

'Apparemment, pour que cela fonctionne,
'il faut obligatoirement que le message soit mis entre "
"
'(guillemets - quotes) dans la ligne de commande
stProgramName = Replace(stProgramName, Chr(171), Chr$(34))

'Exécution du SHELL
ReturnValue = Shell(stProgramName, 0)
If ReturnValue <> 0 Then
'Active l'application SMSSENDER.
AppActivate "SMS Sender"
'Envoie des frappes de touches
SendKeys "{ENTER}", True
maRst.Edit
maRst![Relance effectuée] = True
maRst![Date de la relance] = Now()
maRst.Update
End If
End If
Else
'Else [Rep <> vbCancel]
maRst.MoveLast
End If
'End If [Rep <> vbCancel]
maRst.MoveNext
RegCount = RegCount + 1

'Actualisation de la barre de progression
varRetournée = SysCmd(acSysCmdUpdateMeter, RegCount)
Wend
Else
'Else [Not maRst.EOF]
MsgBox "Liste de relance vide SVP", , "GESTION DES RELANCES PAR SMS"
End If
'End If [Not maRst.EOF]

Exit_SMS_en_Serie_Click:
'Restauration de la barre d'état
varRetournée = SysCmd(acSysCmdClearStatus)
Exit Sub

Err_SMS_en_Serie_Click:
MsgBox Err.Description
Resume Exit_SMS_en_Serie_Click

End Sub


*/ FIN DU CODE *****************************************


il n'y a pas d'automatisation d'après la doc ?

--
@+
Raymond Access MVP http://www.OfficeSystemAccess.com/
http://officesystem.access.over-blog.com/
http://officesystem.access.free.fr/wiki/
Pour débuter sur le forum: http://www.mpfa.info/

Cet été, j’en ai rien à coder, je me forme : les devoirs de vacances
http://www.comscamp.com/Tracker/Redirect.ashx?linkidJd96883-a859-4212-b4a0-bce47c8e0d99


"Raymond [mvp]" a écrit dans le message
de news:






Avatar
William Kameron
Rebonsoir !

J'ai l'impression que voici la ligne qui me créé tous ces problèmes...

'Active l'application SMSSENDER.
AppActivate "SMS Sender"

Car à ce niveau il me renvoie souvent "Argument ou appel de procédure
incorrect" !

C'est mon problème actuellement.
REMARQUE : La même procédure marche une fois sur deux ou trois !!!!




Bonsoir !

il n'y a pas d'automatisation d'après la doc ?



Non Raymond, il n'y en a pas.
Seule, la ligne de commande MSDOS nous est proposée.

Je repose le problème.

Je voudrais aligner plus de 200 SMS grâce à SMS Sender de Microsoft.
Ce module ne permet l'envoi des SMS ni Groupés, ni en masse. Il faut les
envoyer un à un.

Grâce à Ze Titi, j'ai pu en envoyer par la ligne de commande.

En bricolant j'ai pu en envoyer grâce au "SHELL".
Le message résultant de l'envoi je le désactive avec "AppActivate" et
"SendKeys"

SmsSender marche une série sur deux et me renvoie souvant une réponse
anormale.

Voici du reste l'ensemble du code :

/* DEBUT DU CODE ************************************

Sub SMS_en_Serie_Click()
On Error GoTo Err_SMS_en_Serie_Click
Dim stProgramName As String, ReturnValue As Variant
Dim maBds As Database
Dim maRst As Recordset
Dim SqlStr, ma_chsql, MessageSMS As String, varRetournée, Rep As Variant,
RegCount, NbreRelances As Long, Liste_Indicatifs_SMS As String

'<REQUETTE> est une requêtte qui contient les champs suivants:
' -[Relance effectuée]
' -[Date de la relance]
' -[A relancer]
' -[NuméroGSM]
' -[Membre]
' -[Titre de civilité]

' Liste_Indicatifs_SMS va contenir la liste des indicatifs des opérateurs de
GSM
' où des opérateur admettant les SMS. Dans mons cas, les deux premiers
' caractères suffisent pour les identifier.

'Initialisation de la liste des indicatifs des opérateurs SMS
'Dans la pratique cette liste est concatenée par le résultat d'une requête
Liste_Indicatifs_SMS = "- 20 - 30 - 70 - 71 - 72 - 73 - 74 - 75 - 76 -
77 -"

'Effacement de la liste des relances courantes
ma_chsql = "UPDATE [REQUETE] SET [Relance effectuée] = False, _
[Date de la relance] = NULL WHERE [Relance effectuée]=-1 AND [A relancer]=-1;"
DoCmd.SetWarnings False
DoCmd.RunSQL ma_chsql, False
DoCmd.SetWarnings True

'Traitement de la liste des contrats à relancer
Set maBds = CurrentDb()
SqlStr = "SELECT * FROM [REQUETE] WHERE [A relancer]=-1;"
Set maRst = maBds.OpenRecordset(SqlStr)
maRst.MoveLast
'Nombre des opérations à effectuer
NbreRelances = maRst.RecordCount

'Initialisation des variables de la boucle
Rep = 0
RegCount = 0
If Not maRst.EOF Then

'Initialisation de la barre de progression
varRetournée = SysCmd(acSysCmdInitMeter, _
"Gestion des relances par SMS...", NbreRelances)

'Recherche du premier cas
maRst.MoveFirst
While Not maRst.EOF
If Rep <> vbNo Then Rep = MsgBox("Message envoyé à :" _
& vbTab & maRst!Membre & vbCr & "Numéro GSM :" & vbTab & vbTab _
& maRst!NuméroGSM & String(4, vbCr) & _
"Un message vous sera envoyé avant chaque SMS jusqu'à la fin." & vbCr _
& vbTab & "- si vous ne voulez plus le recevoir, cliquez sur [NON] ," & vbCr _
& vbTab & "- si vous désirez arrêter le traitement et sur [ANNULER] "_
, vbYesNoCancel)
If Rep <> vbCancel Then

'Recherche si NuméroGSM commmence par l'indicatif d'opérateur
If InStr(1, Liste_Indicatifs_SMS, Left(maRst!NuméroGSM, 2))
1 Then
'Ecriture du message personalisé

MessageSMS = maRst![Titre de civilité] & " " &
maRst!Membre _
& ", Vous etes prie.... ce " & maRst![Terme]

'Création de la ligne de commande du Shell
stProgramName = "C:Program filesMicrosoft SMS _
SenderSMSSENDER /p:" & maRst!NuméroGSM & " /m:" & Chr(171) _
& MessageSMS & Chr(171) & " /l"

'Apparemment, pour que cela fonctionne,
'il faut obligatoirement que le message soit mis entre "
"
'(guillemets - quotes) dans la ligne de commande
stProgramName = Replace(stProgramName, Chr(171), Chr$(34))

'Exécution du SHELL
ReturnValue = Shell(stProgramName, 0)
If ReturnValue <> 0 Then
'Active l'application SMSSENDER.
AppActivate "SMS Sender"
'Envoie des frappes de touches
SendKeys "{ENTER}", True
maRst.Edit
maRst![Relance effectuée] = True
maRst![Date de la relance] = Now()
maRst.Update
End If
End If
Else
'Else [Rep <> vbCancel]
maRst.MoveLast
End If
'End If [Rep <> vbCancel]
maRst.MoveNext
RegCount = RegCount + 1

'Actualisation de la barre de progression
varRetournée = SysCmd(acSysCmdUpdateMeter, RegCount)
Wend
Else
'Else [Not maRst.EOF]
MsgBox "Liste de relance vide SVP", , "GESTION DES RELANCES PAR SMS"
End If
'End If [Not maRst.EOF]

Exit_SMS_en_Serie_Click:
'Restauration de la barre d'état
varRetournée = SysCmd(acSysCmdClearStatus)
Exit Sub

Err_SMS_en_Serie_Click:
MsgBox Err.Description
Resume Exit_SMS_en_Serie_Click

End Sub


*/ FIN DU CODE *****************************************


il n'y a pas d'automatisation d'après la doc ?

--
@+
Raymond Access MVP http://www.OfficeSystemAccess.com/
http://officesystem.access.over-blog.com/
http://officesystem.access.free.fr/wiki/
Pour débuter sur le forum: http://www.mpfa.info/

Cet été, j’en ai rien à coder, je me forme : les devoirs de vacances
http://www.comscamp.com/Tracker/Redirect.ashx?linkidJd96883-a859-4212-b4a0-bce47c8e0d99


"Raymond [mvp]" a écrit dans le message
de news:








1 2