mail per button

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: mail per button

Re: mail per button

von Hiker » Sa, 04.05.2019 07:52

Hallo Stefan,

ob Rebecca nach 13 Jahren noch mitliest?

Also besser einen neuen Threads aufmachen und vorher in der Forensuche E-Mail eintippen - das Thema kommt häufiger vor.

Eine Lösung - mailto: in Hyperlink verpackt -findest Du hier
https://www.libreoffice-forum.de/viewto ... c44b4130c7

Schaltfläche nur bei Bedarf solltest Du in einem neuen Thread klären.

Mfg, Jörn

Re:

von teamdj » Fr, 03.05.2019 10:53

RS hat geschrieben: Di, 21.03.2006 11:56 Hallo,

ich habe dieses Problem ohne Makro gelöst, und zwar über eine Formularschaltfläche. Über die Eigenschaften der Schaltfläche, Reiter Kontrollfeld habe ich die Punkte Aktion und URL entsprechend angepasst, so dass sich bei Anklicken dieser Schaltfläche eine "fertige" E-Mail öffnet, mit Empfängeradresse, Betrefftext und sogar schon einem Standardtext.

Vielleicht hilft Dir mein Lösungsansatz ja weiter.

Gruß,

Rebecca
Hallo Rebecca,
Das würde ich auch gerne hinbekommen.
Ich habe eine Cal Tabelle in der ich gerne eine email senden Funktion einbauen möchte aber gerne ohne Markro.
am besten wäre folgendes:
Wenn in der Zelle E22 der wert kleiner als 75 ist dann soll ein Button erscheinen (email senden)
wenn auf diesen geklickt wird soll dann nur das aktive Arbeitsblatt an eine vorgegebene Adresse, am besten
schon mit ausgefüllter Betreffzeile sowie mit vordefiniertem Text versendet werden.
Im Anhang der email selbstverständlich das Tabellenblatt (am besten als PDF-Datei ist aber nicht zwingen notwendig)

wie kann ich das realisieren ?

Gruß
Stefan

von Karolus » Do, 23.11.2006 14:30

Hallo
Es können vermtl. nur Komplettdokumente als Mail-anhang versendet werden.

Vielleicht reichts dir ja das selektierte Tabellenblatt als pdf-Datei zu exportieren(unter gleichen Namen in den gleichen Ordner) und im Makro den Pfad entsprechend anzupassen.

Code: Alles auswählen

....
dim pdfurl
pdfurl = replace(ocalc.url,"ods","pdf")
attach(0) = pdfurl
...
Gruß Karo

Einzelne Sheets als Anhang versenden

von cldi » Do, 23.11.2006 11:38

Hallo,

ich schreibe es zu diesem Beitrag hinzu, da ich den attach-Teil von hier übernommen habe.

Es klappt wunderbar die gesamte Calc Mappe damit zu versenden, jedoch schaffe ich es nicht, dass er mir nur ein Sheet (das über den Index von dem Benutzer ausgewählt wird) zu versenden.

Mein bisheriger Code:

Code: Alles auswählen

Sub MailVersenden

' Variablen Deklaration
Dim oMailer as object
Dim MailProgramm as variant
Dim NeueNachricht as variant
Dim oCalc as Object 
Dim sBetreff as String
Dim sEmpfaenger As String

  ocalc=thiscomponent
 
 'Plattformunabhängigkeit
	If GetGuiType = 1 Then
        oMailer = createUnoService("com.sun.star.system.SimpleSystemMail")'für Windows-Systeme
    ElseIf GetGuiType = 4 Then
         oMailer = createUnoService("com.sun.star.system.SimpleCommandMail")'für Unix-Systeme
    Else
      MsgBox "Bitte die Mail-Einstellungen überprüfen", 16           
   End If
   
     
    'Message
   MailProgramm = oMailer.querySimpleMailClient()
   NeueNachricht = MailProgramm.createSimpleMailMessage()
   sEmpfaenger = "mail@xxx.de"
   NeueNachricht.setRecipient(sEmpfaenger)
    sBetreff = "test"
   NeueNachricht.setSubject(sBetreff)
   
   'Anhang
   Dim attachs(0)
	attachs(0)=ocalc.url
	Sheetsnumber=Inputbox("Welches Blatt soll versendet werden?", "Einzelnes Blatt versenden")
   rem  Bitte laufende Blattnummer eingeben (siehe Uebersichtssseite)
   myDoc = ThisComponent
   myView = myDoc.CurrentController
   mySheet = myDoc.Sheets(Sheetsnumber)
        rem myView.setActiveSheet(mySheet)
	rem NeueNachricht.setRecipient(sEmpfaenger)
   NeueNachricht.setAttachement(attachs())
   Mailprogramm.sendSimpleMailMessage(NeueNachricht, 0 )
End Sub 
Weiterhin habe ich noch eine Frage zu folgender Fehlermeldung:

com.sun.star.RuntimeExceptionScriptProtocolHandler::createScriptProvider()

createScriptProvider(): bedeuted dies, dass der Mail Client nicht gefunden wird?
Es wird ohne weitere Probleme Outlook geöffnet, die Meldung kommt mittlerweile auch nicht jedesmal, weiss aber nicht was ich gemacht habe, dass sie nicht mehr jedesmal kommt ;)

Kann mir jemand weiterhelfen?

Danke schon mal für die Hilfe

von queensix » Do, 23.03.2006 17:11

hi rebecca!
also ich habe es jetzt sogar noch an einem anderen rechner getestet (man weiß ja nie!) - selbe problem...
die mailfunktion über den button im menü von OO funktioniert, keine beanstandung...
da steh ich nun ich armer tor........

greez
queensix

von RS » Mi, 22.03.2006 11:36

Hallo,

Dein Makro Nr. 1 von heute funktioniert bei mir einwandfrei!

Ich habe die gesamte Syntax "einfach" kopiert, es öffnete sich eine neue Nachricht, und ich hätte das Ganze ohne Probleme senden können.

Daher scheint die Syntax zu stimmen. Ich gehe daher eher davon aus, dass irgendetwas an der E-Mail-Programm-Konfiguration nicht stimmt. Kannst Du denn aus OO per Button bzw. Menü direkt E-Mails versenden, oder kommen da auch Fehlermeldungen?

Mehr kann ich Dir dazu leider nicht sagen, dazu bin ich zuwenig "Fachfrau", sorry, viel Glück,

Gruß,

Rebecca

von queensix » Mi, 22.03.2006 11:33

noch ne möglichkeit, scheitert am selben problem..s.o. gleiche meldung

ocalc=thiscomponent
oMailer = createUnoService( "com.sun.star.system.SimpleSystemMail" )
MailProgramm = oMailer.querySimpleMailClient()
NeueNachricht = MailProgramm.createSimpleMailMessage()
NeueNachricht.setRecipient("versicherung@hoergeraete-isma.de")
NeueNachricht.setSubject("Versicherungsmeldung")
Dim attachs(0)
attachs(o)=ocalc.url
NeueNachricht.setAttachement(attachs())
MailProgramm.sendSimpleMailMessage(NeueNachricht,0)

Mailversand per button

von queensix » Mi, 22.03.2006 11:12

hallo rebecca!
vielen dank für die antwort, das habe ich noch nicht probiert...
jedoch gibts da ein problem: alle mitarbeiter aus 25 filialen anweisen, diese schaltfläöche zu erstellen...grrr - das geht 100%ig schief. ich wollte halt im dokument eine schaltfläche "mail" - anklicken und fertig, sozusagen dau-sicher, lach.
bin durch googeln dahin gekommen:

ocalc=thiscomponent
oMailer = createUnoService( "com.sun.star.system.SimpleSystemMail" )
MailProgramm = omailer.querySimpleMailClient()
NeueNachricht = MailProgramm.createSimpleMailMessage()
MailAdresse="empfängerxxxx"
thema="betreffxxxx"
NeueNachricht = MailProgramm.createSimpleMailMessage()
NeueNachricht.setRecipient(MailAdresse)
NeueNachricht.setSubject(thema)
Dim attachs(0)
attachs(0)=ocalc.url
NeueNachricht.setRecipient(MailAdresse)
NeueNachricht.setAttachement(attachs())
MailProgramm.sendSimpleMailMessage(NeueNachricht,0)

Problem:"Basic Laufzeitfehler, Es ist eine Exception aufgetreten.
Type:com.sun.star.uno.Exception. Message:Send email failed"
liegt an der letzten code-zeile

und ich hab keine ahnung warum.... :evil:
gruß queensix

von RS » Di, 21.03.2006 11:56

Hallo,

ich habe dieses Problem ohne Makro gelöst, und zwar über eine Formularschaltfläche. Über die Eigenschaften der Schaltfläche, Reiter Kontrollfeld habe ich die Punkte Aktion und URL entsprechend angepasst, so dass sich bei Anklicken dieser Schaltfläche eine "fertige" E-Mail öffnet, mit Empfängeradresse, Betrefftext und sogar schon einem Standardtext.

Vielleicht hilft Dir mein Lösungsansatz ja weiter.

Gruß,

Rebecca

mail per button

von queensix » Fr, 17.03.2006 17:15

so, hier ein anderes problem:
hab es bisher nur geschafft, eine mailprozedur aufzurufen. (Datei ist angehängt).
wie gibt man aber gleich eine adresse und betreff an, sodaß der user nur noch auf "senden" gehen muß? - haben viele kollegen, die immer vergessen, die datei anzuhängen...grrr.

dim document as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:SendMail", "", 0, Array())

kann mir jemand helfen?
gruß queensix

Nach oben