XL 2016 VBA - Envoyer SMS

Dudu2

XLDnaute Barbatruc
Bonjour,

J'ai vu quelques sujets à ce propos ici ou là. A ceux qui en ont l'expérience:
- Quel est le meilleur (en terme de prix) fournisseur Internet ?
- Quel est le code adapté à ce fournisseur ?

Merci par avance.
 

Dudu2

XLDnaute Barbatruc
Merci par avance pour le travail que tu envisages d'entreprendre.
Je ne suis pas pressé. C'est pour un utilisateur commerçant pour lequel j'ai fait un système de gestion de réception, identification, numérotation code barre et distribution de colis de plusieurs transporteurs.
Le système actuel est basé sur l'envoi de mails via Outlook qui fonctionne mais qu'il veut remplacer par de l'envoi SMS. Le système par mail se bloque parfois me dit-il, nécessitant des reboot, dans sa config complexe de plusieurs PC utilisant Google Drive.
 
Dernière édition:

fanch55

XLDnaute Barbatruc
Bonsoir,
Comme promis une version de test qui fonctionne .
J'ai nettoyé toute adhérence avec le projet initial ( j'en ai chi..... ) 😩

Il faut créer un compte sur Allmysms et demander un essai gratuit pour développement ( ils sont commerciaux pour cela ) . Ils vont fournir une clé qu'il faudra indiquer dans la feuille param , ainsi que le compte .

On peut également ( pas dans le classeur fourni ) récupérer une réponse éventuelle du destinataire .
 

Pièces jointes

  • SmsTest.xlsm
    90 KB · Affichages: 24

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Bonjour le Fil,

Tu peux voir aussi ce fil :
Auquel fanch55 a beaucoup participé (une grand merci encore :))
J'utilise SMS factor qui est très bon,
lionel :)
 

Dudu2

XLDnaute Barbatruc
@fanch55,
Dans ce code, comment se comportent les majuscules STP ?
VB:
Public Function HtmlCars(ByVal Message As String) As String
    Message = Replace(Message, "ë", "ë")
    Message = Replace(Message, "ê", "ê")
    Message = Replace(Message, "é", "é")
    Message = Replace(Message, "è", "è")
    Message = Replace(Message, "ä", "ä")
    Message = Replace(Message, "â", "â")
    Message = Replace(Message, "à", "à")
    Message = Replace(Message, "û", "û")
    Message = Replace(Message, "ù", "ù")
    Message = Replace(Message, "ç", "ç")
    HtmlCars = Message
End Function
 

fanch55

XLDnaute Barbatruc
@fanch55,
Dans ce code, comment se comportent les majuscules STP ?
C'est vrai, cela n'a pas été prévu .
Mais ce sont des caractères "interdits" dans un SMS standard à moins de l'envoyer en Unicode ce qui limite la longueur du Sms à 70 caractères.
Il faudrait enrichir les constantes NonCar et RepCar dans la sub ci-dessous,
la sub HtmlCars ne servant pas à grand chose en ce cas.
( ou mieux, les mettre sur la feuille Param )
VB:
Private Sub Sms_Tbx_Change()
Dim Nbc As Integer
Const DblCar = "\[]{}~^|€"          'caractères comptant double
Const NonCar = "µâêûîôÂÊÛÎÔç¨ëï°"   'caractères interdits
Const RepCar = "uaeuioAEUIOc-eio"   'caractères de substitution
 
    If Sms_Tbx <> vbNullString Then
        Nbc = Len(Sms_Tbx)
        For I = 1 To Len(Sms_Tbx)
            If InStr(DblCar, Mid(Sms_Tbx, I, 1)) Then Nbc = Nbc + 1
        Next
        For I = 1 To Len(NonCar)
            Sms_Tbx = Replace(Sms_Tbx, Mid(NonCar, I, 1), Mid(RepCar, I, 1))
        Next
    End If
    Me.Sms_Lbl = Nbc & " / 160 caractères max" & vbLf & "( sinon compte pour 2 sms )"
    Me.Sms_Lbl.BackColor = IIf(Nbc < 161, 3506772, vbRed)

End Sub
Tu peux vérifier ce qui est autorisé ou interdit sur la console de AllMysms :
1651742110969.png
 
Dernière édition:

Statistiques des forums

Discussions
312 084
Messages
2 085 194
Membres
102 813
dernier inscrit
kaiyi