non ho trovato sul forum lo stesso problema pertanto sono qui a chiedervi aiuto. Premetto che la macro funziona alla perfezione con windows 10 e open office, mentre funziona parzialmente con mac os catalina e open office.
Ricapitolando: insieme a un amico abbiamo creato una macro che permette di salvare delle celle in pdf e allegarle poi a una mail in formato pdf.
Fino qui tutto bene, poi la macro apre automaticamente il client di posta, e dovrebbe compilare in automatico il mittente, l'oggetto e il corpo del testo, ma questo non succede.
Ho provato sia con thunderbird che con Mail (client predefinito di mac).
Vi allego il codice macro sperando che qualcuno possa darmi una mano
Codice: Seleziona tutto
Sub Main
Dim Doc as Object
Dim Sheet as Object
Dim message as String
Doc = ThisComponent.CurrentController.Frame
Sheet = ThisComponent.Sheets.getByName("FATTURA")
ExportPdf(Sheet)
End Sub
Sub ExportPdf (Sheet as Object)
Dim Cell as Object
Dim strFile As String
Dim msg as String
On Error GoTo errHandler
Cell = Sheet.getCellByPosition(1,20)
oRng = Sheet.getCellRangeByName("A1:K48")
Dim mFilterData(0) As New com.sun.star.beans.PropertyValue
mFilterData(0).Name = "Selection"
mFilterData(0).Value = oRng
Dim mStoreOpts(2) As New com.sun.star.beans.PropertyValue
mStoreOpts(0).Name = "Overwrite"
mStoreOpts(0).Value = True
mStoreOpts(1).Name = "FilterName"
mStoreOpts(1).Value = "calc_pdf_Export"
mStoreOpts(2).Name = "FilterData"
mStoreOpts(2).Value = mFilterData()
'imposto il nome del file col nome "Fattura_" cella b21
'inserisco il percorso per il salvataggio + nome file
strFile = "Fattura_" & Cell.String & ".pdf"
strFile = "file:///Volumes/HD%20EMILIO/FATTURE%202020/" & strFile
' strFile = "file:///C:/Users/Luca/Desktop/test/" & strFile
ThisComponent.storeToURL(strFile, mStoreOpts())
MsgBox "Il file PDF è stato salvato."
If MsgBox ("Vuoi allegare la fattura ad una mail?", 292) = 6 Then
sendMail(Cell.String, strFile)
End IF
exitHandler:
Exit Sub
errHandler:
MsgBox "Non ho potuto salvare il file PDF"
Resume exitHandler
End Sub
' REM recupero i dati dal foglio
Sub SendMail (nomeFile as String, percorsoAllegato as string)
Dim doc as Object
doc = ThisComponent.Sheets.getByName("DATI")
indirizzoMail = doc.getCellByPosition(6,1)
oggetto = "Invio Fattura Fisioterapica " & nomeFile
corpoMail = ""
corpoMail = "Gentile Cliente," & Chr(10) & _
"ecco in allegato la fattura." & Chr(10) & Chr(10) & _
"Cordiali Saluti"
allegato = percorsoAllegato
Mailer (indirizzoMail.String, oggetto, corpoMail, allegato)
End Sub
Sub Mailer (eMailAddress as String, eSubject as String, eBody as String, Attachement as String)
Dim nFlag as integer
On Error GoTo errHandler
nFlag = 0
MailAgent = CreateUnoService("com.sun.star.system.SystemMailProvider")
MailClient = MailAgent.queryMailClient()
MailMessage = MailClient.createMailMessage()
MailMessage.Recipient = eMailAddress
MailMessage.Subject = eSubject
MailMessage.Body = eBody
MailMessage.Attachement = Array(Attachement)
MailClient.sendMailMessage(MailMessage, 0)
exitHandler:
Exit Sub
errHandler:
MsgBox "Non ho potuto aprire la tua mail"
Resume exitHandler
End Sub
Editato: Post riscritto usando maiuscole e punteggiatura. Possiamo sperare di vedere così anche i prossimi? (Admin) |