je cherche depuis pas mal de temps à finaliser un code vba qui envoie
automatiquement une feuille excel par fax...
Exemple, en feuille1, en A1:A10 des noms de correspondants, en B1:B10 leur
numéro de fax, plus 1 feuille pour chaque correspondant.
Mon rêve est donc d'appuyer sur un CommandButton, et voili-voilà, 1 feuille
personnalisée est envoyée par fax à chaque correspondant...
Mon environnement et celui supposé du futur utilisateur : windows XP, Excel
2002 et le Microsoft Shared Fax Driver inclus dans windows XP. (et un modem
analogique bien sûr).
J'ai cherché un bout de code sur vb codes-sources sans succès, surfé sur
Msdn microsoft qui m'incite à créer un composant COM (j'en suis incapable).
De retour dans le VBE, j'ai trouvé une référence à un composant (ou une
bibliothèque ?) nommé "faxcomLib" avec des class, propiétés et méthodes que
je ne sais pas trop utiliser.
exemple : "Function Send() As Long
Membre de FAXCOMLib.FaxDoc
Send a single fax"
Quelqu'un sait-il utiliser ce composant ?
Pensez-vous qu'il existe un moyen plus simple (en gardant l'automatisation,
svp, les correspondants seront en réalité plutot 200 que 10) ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Christian Herbé
J'ai cherché un bout de code sur vb codes-sources sans succès, surfé sur Msdn microsoft qui m'incite à créer un composant COM (j'en suis incapable). De retour dans le VBE, j'ai trouvé une référence à un composant (ou une bibliothèque ?) nommé "faxcomLib" avec des class, propiétés et méthodes que je ne sais pas trop utiliser.
Confronté à ce Pb il y a quelques années, je l'ai résolu en pilotant winphone (comme une imprimante). Au préalable, j'avais constitué une liste de n° de Fax et fait en sorte qu'il envoie chaque exemplaire à la liste.
C'est la methode "bucheron" mais elle fonctionne !
J'ai cherché un bout de code sur vb codes-sources sans succès, surfé sur
Msdn microsoft qui m'incite à créer un composant COM (j'en suis incapable).
De retour dans le VBE, j'ai trouvé une référence à un composant (ou une
bibliothèque ?) nommé "faxcomLib" avec des class, propiétés et méthodes que
je ne sais pas trop utiliser.
Confronté à ce Pb il y a quelques années, je l'ai résolu en pilotant
winphone (comme une imprimante).
Au préalable, j'avais constitué une liste de n° de Fax et fait en sorte
qu'il envoie chaque exemplaire à la liste.
C'est la methode "bucheron" mais elle fonctionne !
J'ai cherché un bout de code sur vb codes-sources sans succès, surfé sur Msdn microsoft qui m'incite à créer un composant COM (j'en suis incapable). De retour dans le VBE, j'ai trouvé une référence à un composant (ou une bibliothèque ?) nommé "faxcomLib" avec des class, propiétés et méthodes que je ne sais pas trop utiliser.
Confronté à ce Pb il y a quelques années, je l'ai résolu en pilotant winphone (comme une imprimante). Au préalable, j'avais constitué une liste de n° de Fax et fait en sorte qu'il envoie chaque exemplaire à la liste.
C'est la methode "bucheron" mais elle fonctionne !
zappy
"Christian Herbé" a écrit
Confronté à ce Pb il y a quelques années, je l'ai résolu en pilotant winphone (comme une imprimante). Au préalable, j'avais constitué une liste de n° de Fax et fait en sorte qu'il envoie chaque exemplaire à la liste.
C'est la methode "bucheron" mais elle fonctionne !
Merci Christian de m'avoir répondu.
Ce n'est pas très clair pour moi : ta liste de numéros était dans excel ou le carnet de Winphone ? (si tu t'en souviens). Enfin, je vais essayer cette piste... A bientôt, Zappy.
"Christian Herbé" <herbe@nancy.inra.fr> a écrit
Confronté à ce Pb il y a quelques années, je l'ai résolu en pilotant
winphone (comme une imprimante).
Au préalable, j'avais constitué une liste de n° de Fax et fait en sorte
qu'il envoie chaque exemplaire à la liste.
C'est la methode "bucheron" mais elle fonctionne !
Merci Christian de m'avoir répondu.
Ce n'est pas très clair pour moi : ta liste de numéros était dans excel ou
le carnet de Winphone ?
(si tu t'en souviens). Enfin, je vais essayer cette piste...
A bientôt,
Zappy.
Confronté à ce Pb il y a quelques années, je l'ai résolu en pilotant winphone (comme une imprimante). Au préalable, j'avais constitué une liste de n° de Fax et fait en sorte qu'il envoie chaque exemplaire à la liste.
C'est la methode "bucheron" mais elle fonctionne !
Merci Christian de m'avoir répondu.
Ce n'est pas très clair pour moi : ta liste de numéros était dans excel ou le carnet de Winphone ? (si tu t'en souviens). Enfin, je vais essayer cette piste... A bientôt, Zappy.
Papyty
Bonjour zappy (et @ tous)
Quelqu'un sait-il utiliser ce composant ? Pensez-vous qu'il existe un moyen plus simple (en gardant l'automatisation,
svp, les correspondants seront en réalité plutot 200 que 10) ?
Peut être cette soluce de *eshwar g* trouvée sur le net mais pas eu le temps de tester. Ne pas oublié de cocher la reference:
_____________________________________________________ 'Faxcom 1.0 Type Library
'ServName name of your computer 'DocName document which you want to send, in your case it’s Report 'FaxNo Fax number where you want the fax to be delivered
Public Function SendFax(ServName As String, DocName As String, _ FaxNo As String, RecName As String) As String
'varable for FAX Server Dim FaxServer As FAXCOMLib.FaxServer Dim FaxDoc As FAXCOMLib.FaxDoc
'on error execution jumps to lable ErrSendFax On Error GoTo ErrSendFax
'Create FaxServer object... Set FaxServer = CreateObject("FaxServer.FaxServer") '...and connect to it - no empty name allowed FaxServer.Connect (ServName) 'Attaches document for sending FAX Set FaxDoc = FaxServer.CreateDocument(DocName)
'Recepent FAX Number FaxDoc.FaxNumber = FaxNo 'Recepent Name FaxDoc.RecipientName = RecName 'Sends FAX using telephone which must be connected to FAX MODEM FaxDoc.Send 'Kills FaxDoc Object Set FaxDoc = Nothing 'Connection is Terminated FaxServer.Disconnect 'Kills FaxServer object Set FaxServer = Nothing 'Message is sent Back to calling function SendFax = "" Exit Function 'on error execution jumps here ErrSendFax: 'Message is sent back to calling function SendFax = "n" End Function ____________________________________________________________________
Tiens nous au courant. -- @+ Thierry 20/01/2004 21:20:10
Bonjour zappy (et @ tous)
Quelqu'un sait-il utiliser ce composant ?
Pensez-vous qu'il existe un moyen plus simple (en gardant
l'automatisation,
svp, les correspondants seront en réalité plutot 200 que 10) ?
Peut être cette soluce de *eshwar g* trouvée sur le net mais pas eu le
temps de tester.
Ne pas oublié de cocher la reference:
_____________________________________________________
'Faxcom 1.0 Type Library
'ServName name of your computer
'DocName document which you want to send, in your case it’s Report
'FaxNo Fax number where you want the fax to be delivered
Public Function SendFax(ServName As String, DocName As String, _
FaxNo As String, RecName As String) As String
'varable for FAX Server
Dim FaxServer As FAXCOMLib.FaxServer
Dim FaxDoc As FAXCOMLib.FaxDoc
'on error execution jumps to lable ErrSendFax
On Error GoTo ErrSendFax
'Create FaxServer object...
Set FaxServer = CreateObject("FaxServer.FaxServer")
'...and connect to it - no empty name allowed
FaxServer.Connect (ServName)
'Attaches document for sending FAX
Set FaxDoc = FaxServer.CreateDocument(DocName)
'Recepent FAX Number
FaxDoc.FaxNumber = FaxNo
'Recepent Name
FaxDoc.RecipientName = RecName
'Sends FAX using telephone which must be connected to FAX MODEM
FaxDoc.Send
'Kills FaxDoc Object
Set FaxDoc = Nothing
'Connection is Terminated
FaxServer.Disconnect
'Kills FaxServer object
Set FaxServer = Nothing
'Message is sent Back to calling function
SendFax = ""
Exit Function
'on error execution jumps here
ErrSendFax:
'Message is sent back to calling function
SendFax = "n"
End Function
____________________________________________________________________
Tiens nous au courant.
--
@+
Thierry
20/01/2004 21:20:10
Quelqu'un sait-il utiliser ce composant ? Pensez-vous qu'il existe un moyen plus simple (en gardant l'automatisation,
svp, les correspondants seront en réalité plutot 200 que 10) ?
Peut être cette soluce de *eshwar g* trouvée sur le net mais pas eu le temps de tester. Ne pas oublié de cocher la reference:
_____________________________________________________ 'Faxcom 1.0 Type Library
'ServName name of your computer 'DocName document which you want to send, in your case it’s Report 'FaxNo Fax number where you want the fax to be delivered
Public Function SendFax(ServName As String, DocName As String, _ FaxNo As String, RecName As String) As String
'varable for FAX Server Dim FaxServer As FAXCOMLib.FaxServer Dim FaxDoc As FAXCOMLib.FaxDoc
'on error execution jumps to lable ErrSendFax On Error GoTo ErrSendFax
'Create FaxServer object... Set FaxServer = CreateObject("FaxServer.FaxServer") '...and connect to it - no empty name allowed FaxServer.Connect (ServName) 'Attaches document for sending FAX Set FaxDoc = FaxServer.CreateDocument(DocName)
'Recepent FAX Number FaxDoc.FaxNumber = FaxNo 'Recepent Name FaxDoc.RecipientName = RecName 'Sends FAX using telephone which must be connected to FAX MODEM FaxDoc.Send 'Kills FaxDoc Object Set FaxDoc = Nothing 'Connection is Terminated FaxServer.Disconnect 'Kills FaxServer object Set FaxServer = Nothing 'Message is sent Back to calling function SendFax = "" Exit Function 'on error execution jumps here ErrSendFax: 'Message is sent back to calling function SendFax = "n" End Function ____________________________________________________________________
Tiens nous au courant. -- @+ Thierry 20/01/2004 21:20:10
zappy
"Papyty" a écrit
Bonjour zappy (et @ tous)
Peut être cette soluce de *eshwar g* trouvée sur le net mais pas eu le temps de tester. Ne pas oublié de cocher la reference:
Merci Thierry pour cette réponse! Je me penche sur cette fonction très bientôt
Tiens nous au courant. --
Sûr ! Prévoir qq jours avant la réponse ;)
Merci encore à tous. Zappy
@+
"Papyty" <papyty@yahoo.fr> a écrit
Bonjour zappy (et @ tous)
Peut être cette soluce de *eshwar g* trouvée sur le net mais pas eu le
temps de tester.
Ne pas oublié de cocher la reference:
Merci Thierry pour cette réponse!
Je me penche sur cette fonction très bientôt
Ce n'est pas très clair pour moi : ta liste de numéros était dans excel ou le carnet de Winphone ?
J'ai essayé les 2 et finalement la liste dans winphone s'avère la meilleure solution (1 seul accès depuis XL).
zappy
"Papyty" a écrit
Bonjour zappy (et @ tous) Peut être cette soluce de *eshwar g* trouvée sur le net mais pas eu le temps de tester. Ne pas oublié de cocher la reference:
Tiens nous au courant.
Bon voilà... D'abord un grand merci, ta réponse m'a permis une grande avancée... Je n'ai pas encore essayé sur un vrai num. de fax, mais la fonction déclenche bien le service de fax de windows Xp, et la fonction se termine sans erreur. D'ailleurs c'est là un nouveau pb et un nouveau travail de recherche pour moi, car je dois trouver comment gérer les éventuelles lignes occupées, abonné absent , etc...
Sub essailafoncfax() Call SendeFax("", "c:test.txt", "0102030405", "coco") End Sub
'Faxcom 1.0 Type Library
'ServName name of your computer 'DocName document which you want to send, in your case it's Report 'FaxNo Fax number where you want the fax to be delivered
Public Function SendeFax(ServName As String, DocName As String, _ FaxNo As String, RecName As String) As String
'varable for FAX Server Dim FaxServer As FAXCOMLib.FaxServer Dim FaxDoc As FAXCOMLib.FaxDoc
'on error execution jumps to lable ErrSendFax On Error GoTo ErrSendFax
'Create FaxServer object... Set FaxServer = CreateObject("FaxServer.FaxServer") '...and connect to it - no empty name allowed FaxServer.Connect (ServName)
'Attaches document for sending FAX Set FaxDoc = FaxServer.CreateDocument(DocName)
'Recepent FAX Number FaxDoc.FaxNumber = FaxNo
'Recepent Name FaxDoc.RecipientName = RecName
'Sends FAX using telephone which must be connected to FAX MODEM FaxDoc.Send 'Kills FaxDoc Object Set FaxDoc = Nothing 'Connection is Terminated FaxServer.Disconnect 'Kills FaxServer object Set FaxServer = Nothing 'Message is sent Back to calling function SendeFax = "" Exit Function 'on error execution jumps here ErrSendFax: 'Message is sent back to calling function SendeFax = "n" End Function
-- @+
Zappy.
"Papyty" <papyty@yahoo.fr> a écrit
Bonjour zappy (et @ tous)
Peut être cette soluce de *eshwar g* trouvée sur le net mais pas eu le
temps de tester.
Ne pas oublié de cocher la reference:
Tiens nous au courant.
Bon voilà...
D'abord un grand merci, ta réponse m'a permis une grande avancée...
Je n'ai pas encore essayé sur un vrai num. de fax, mais la fonction
déclenche bien le service de fax de windows Xp, et la fonction se termine
sans erreur. D'ailleurs c'est là un nouveau pb et un nouveau travail de
recherche pour moi, car je dois trouver comment gérer les éventuelles lignes
occupées, abonné absent , etc...
Sub essailafoncfax()
Call SendeFax("", "c:test.txt", "0102030405", "coco")
End Sub
'Faxcom 1.0 Type Library
'ServName name of your computer
'DocName document which you want to send, in your case it's Report
'FaxNo Fax number where you want the fax to be delivered
Public Function SendeFax(ServName As String, DocName As String, _
FaxNo As String, RecName As String) As String
'varable for FAX Server
Dim FaxServer As FAXCOMLib.FaxServer
Dim FaxDoc As FAXCOMLib.FaxDoc
'on error execution jumps to lable ErrSendFax
On Error GoTo ErrSendFax
'Create FaxServer object...
Set FaxServer = CreateObject("FaxServer.FaxServer")
'...and connect to it - no empty name allowed
FaxServer.Connect (ServName)
'Attaches document for sending FAX
Set FaxDoc = FaxServer.CreateDocument(DocName)
'Recepent FAX Number
FaxDoc.FaxNumber = FaxNo
'Recepent Name
FaxDoc.RecipientName = RecName
'Sends FAX using telephone which must be connected to FAX MODEM
FaxDoc.Send
'Kills FaxDoc Object
Set FaxDoc = Nothing
'Connection is Terminated
FaxServer.Disconnect
'Kills FaxServer object
Set FaxServer = Nothing
'Message is sent Back to calling function
SendeFax = ""
Exit Function
'on error execution jumps here
ErrSendFax:
'Message is sent back to calling function
SendeFax = "n"
End Function
Bonjour zappy (et @ tous) Peut être cette soluce de *eshwar g* trouvée sur le net mais pas eu le temps de tester. Ne pas oublié de cocher la reference:
Tiens nous au courant.
Bon voilà... D'abord un grand merci, ta réponse m'a permis une grande avancée... Je n'ai pas encore essayé sur un vrai num. de fax, mais la fonction déclenche bien le service de fax de windows Xp, et la fonction se termine sans erreur. D'ailleurs c'est là un nouveau pb et un nouveau travail de recherche pour moi, car je dois trouver comment gérer les éventuelles lignes occupées, abonné absent , etc...
Sub essailafoncfax() Call SendeFax("", "c:test.txt", "0102030405", "coco") End Sub
'Faxcom 1.0 Type Library
'ServName name of your computer 'DocName document which you want to send, in your case it's Report 'FaxNo Fax number where you want the fax to be delivered
Public Function SendeFax(ServName As String, DocName As String, _ FaxNo As String, RecName As String) As String
'varable for FAX Server Dim FaxServer As FAXCOMLib.FaxServer Dim FaxDoc As FAXCOMLib.FaxDoc
'on error execution jumps to lable ErrSendFax On Error GoTo ErrSendFax
'Create FaxServer object... Set FaxServer = CreateObject("FaxServer.FaxServer") '...and connect to it - no empty name allowed FaxServer.Connect (ServName)
'Attaches document for sending FAX Set FaxDoc = FaxServer.CreateDocument(DocName)
'Recepent FAX Number FaxDoc.FaxNumber = FaxNo
'Recepent Name FaxDoc.RecipientName = RecName
'Sends FAX using telephone which must be connected to FAX MODEM FaxDoc.Send 'Kills FaxDoc Object Set FaxDoc = Nothing 'Connection is Terminated FaxServer.Disconnect 'Kills FaxServer object Set FaxServer = Nothing 'Message is sent Back to calling function SendeFax = "" Exit Function 'on error execution jumps here ErrSendFax: 'Message is sent back to calling function SendeFax = "n" End Function