Send a fax from VBA

J

Jérémie Gent

Hi!

I've got a worksheet containing an invoice with client information including
fax number.
I would like this invoice to be faxed when the user clicks on a button.
This works fine with the 'Printout' method of the Workbook (I can select the
fax as printer and the assistant shows up, which I'm ok with).
However, I would like the fax number to be automatically set in the
assistant window, so that the user doesnt have to type it in manually.
Is there a way to do this without buying a third party component?

I'm using Excel 2000.

Thanks in advance!
Jérémie
 
V

Vic Eldridge

Hi Jérémie ,

Typically, you would use the AppActivate statement to activate the fax
assistant program. (This would not be needed if the assistant is already
active.)
Then you would use the Sendkeys statement to TAB to the required textbox and
fill in the fax number. Use Sendkeys again to press the Enter key.

Sendkeys is not without it's problems. Most proffesional programmers won't
use it as it can be fouled up if the user presses keys while it is running.
More robust techniques involve using a number of Win32 API functions.


Regards,
Vic Eldridge
 
J

Jérémie Gent

OK Thank you Vic
I also think this solution is maybe a bit dangerous, but I may use it
though, I don't know.
So thank you anyway for the idea.
By now, I'm looking deeper into another solution using the
Faxcomlib.Faxserver object (which I didn't know) and which works fine on
Windows XP / Excel 2K (no need to buy / install anything else)

br
Jérémie
 
J

Jérémie Gent

Well Vic, after a lot of time involved in searching for other solutions, I
finally took yours.
So thank you again for this Tip, the other solutions were unfortunately
unsuccessfull!

Here is my function:

Public Sub FaxeFeuille(FeuilleAFaxer As String, destinataire As String,
numero As String)
Dim keys As String
Worksheets(FeuilleAFaxer).Select
keys = "^p%nfax~~~" & destinataire & "{TAB}{TAB}" & numero
SendKeys keys
End Sub

You must have a fax printer called 'Fax'.
Works on Excel 2K / Windows Xp german.

BR
Jérémie
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top