Office: (Office 2019) Komplexes Makro ohne Ahnung :-/

Helfe beim Thema Komplexes Makro ohne Ahnung :-/ in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo Ihr Lieben, ich brauche ganz dringend Hilfe. Ich bin zwar mit Formeln in Excel ganz gut aufgestellt, aber mit Makros leider nicht. Ich muss für... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Felizia, 11. Juni 2023.

  1. Felizia
    Felizia User

    Komplexes Makro ohne Ahnung :-/


    Hallo Ihr Lieben, ich brauche ganz dringend Hilfe. Ich bin zwar mit Formeln in Excel ganz gut aufgestellt, aber mit Makros leider nicht. Ich muss für meine Eltern und mich viele Versicherungen und Behörden per Email anschreiben wegen Änderungen durch Todesfall in der Familie und stoße mit der Funktion HYPERLINK und mailto an die Grenze; die Länge des Textes macht es unmöglich und eine PDF-Datei mit einer Excelfunktion kann man ja m.W. auch nicht anhängen.

    Ich habe nicht den Hauch einer Ahnung, wie ich 4 Funktionen in ein so ein Script rein basteln soll - und so, dass es dann auch noch funktioniert:
    1. drei der fünf Blätter sollen als PDF mit Dateiname aus Zellen und einem Pfad erzeugt werden
    2. diese PDF soll per Email (Outlook) versendet werden - und da sollen bereits die Email-Adresse, Betreff und Body (länger als 255 Zeichen) ebenfalls aus Zellen mit Zeilenumbrüchen genommen werden.
    Ich hab mal eine Muster-Datei erstellt, vielleicht kann mir jemand hier so ein Script basteln? Ich weiß, das ist viel verlangt und ne eierlegende Wollmilchsau ... aber das würde mir mega viel Arbeit ersparen. Ich bräuchte dann nämlich nur die Liste ausfüllen, die beiden Sheets neu bestücken und ab die Post.

    Ich danke dem / der / denen, die mir helfen schon mal vorab tausend Mal !!!

    Nette Sonntagsgrüßle
    Felizia :-)
     
    Zuletzt bearbeitet: 11. Juni 2023
    Felizia, 11. Juni 2023
    #1
  2. OilMax hat Ahnung
    Hallo Felizia,
    soll die Liste Zeile für Zeile abgearbeitet/durchlaufen werden oder soll nur eine Nummer in Spalte "A" abgefragt werden um das E-Mail mit den 3 Anhängen zu versenden.

    Gruß Uwe
     
    OilMax, 11. Juni 2023
    #2
  3. Felizia
    Felizia User
    Guten Morgen Uwe :-)
    nicht Zeile für Zeile insgesamt sondern immer nur die Daten aus der letzten beschriebenen Zeile. So hab ich die Formeln im Blatt "Brief" geschrieben. Der Brief zieht sich per Formel die Daten der letzten beschriebenen Zeile raus; geht ja nicht anders. :-)
    Liebe Grüße
    Felizia
     
    Felizia, 12. Juni 2023
    #3
  4. OilMax hat Ahnung

    Komplexes Makro ohne Ahnung :-/

    Hallo Felizia,

    diesen Code in ein allgemeines Modul. Den Aufruf kannst du mit einem Button machen.
    Code:
    Option Explicit
    
    Private Sub MailSenden()
        Dim i&, OutApp As Object, OutMail As Object
        Dim PfadBrief$, PfadVertrag$, PfadBelege$, arrBody(), arr()
        arrBody = Tabelle5.Range("A2:A10").Value
        With Tabelle1
            arr = .Range(.Cells(.Cells(Rows.Count, 1).End(xlUp).Row, 1), .Cells(.Cells(Rows.Count, 1).End(xlUp).Row, 14)).Value
        End With
        Set OutApp = CreateObject("Outlook.Application")
        For i = 1 To UBound(arr)
            PfadBrief = ThisWorkbook.Path & "\" & Format(Date, "yyyy-mm-dd") & "_" & arr(i, 4) & "_" & arr(i, 12) & "_Brief.PDF"
            Sheets("Brief").ExportAsFixedFormat Type:=xlTypePDF, Filename:=PfadBrief, _
            IncludeDocProperties:=True, IgnorePrintAreas:=False
            
            PfadVertrag = ThisWorkbook.Path & "\" & Format(Date, "yyyy-mm-dd") & "_" & arr(i, 4) & "_" & arr(i, 12) & "_Vertrag.PDF"
            Sheets("Vertrag").ExportAsFixedFormat Type:=xlTypePDF, Filename:=PfadVertrag, _
            IncludeDocProperties:=True, IgnorePrintAreas:=False
            
            PfadBelege = ThisWorkbook.Path & "\" & Format(Date, "yyyy-mm-dd") & "_" & arr(i, 4) & "_" & arr(i, 12) & "_Belege.PDF"
            Sheets("Belege").ExportAsFixedFormat Type:=xlTypePDF, Filename:=PfadBelege, _
            IncludeDocProperties:=True, IgnorePrintAreas:=False
            
            Set OutMail = OutApp.Createitem(0)
            With OutMail
                .To = arr(i, 9)
                .CC = ""
                .BCC = ""
                .Subject = arr(i, 11)
                .Attachments.Add PfadBrief
                .Attachments.Add PfadVertrag
                 .Attachments.Add PfadBelege
                .HTMLBody = arr(i, 10) & "<html><br><br></html>" & arrBody(1, 1) & arr(i, 12) & " " & arrBody(2, 1) & _
                 "<html><br><br></html>" & arrBody(3, 1) & "<html><br><br></html>" & arrBody(4, 1) & _
                 "<html><br><br></html>" & arrBody(6, 1) & "<html><br></html>" & arrBody(7, 1) & _
                 "<html><br></html>" & arrBody(8, 1) & "<html><br></html>" & arrBody(9, 1)
                .Display    'senden erfolgt manuell
                '.sent      'sendet direkt
            End With
            Set OutMail = Nothing
        Next i
        Set OutApp = Nothing
    End Sub
    
    Gruß Uwe
     
    OilMax, 12. Juni 2023
    #4
  5. Felizia
    Felizia User
    Hi Uwe, mei das ging ja fix. :-)
    zwei Fragen:

    1. oben im ersten Teil steht:
    arrBody = Tabelle5.Range("A2:A10").Value

    Was geschieht mit den Daten ab Zeile 11? Funktioniert das dann trotzdem? Oder muss ich das ändern auf A:A für jede beliebige Zeile?

    2. Im Code sind alle 3 Sheets als separate PDF-Dateien angegeben. Ich bräuchte aber aus den 3 Sheets eine einzige PDF (Also Seite 1 ist der Brief (Anschreiben), Seite 2 ist der Vertrag und Seite 3 die Belege.

    Könntest Du mir das bitte noch anpassen? Dann probiere ich das Script mal aus. :-)

    Vielen lieben Dank im Voraus :-)
    Felizia
     
    Felizia, 12. Juni 2023
    #5
  6. OilMax hat Ahnung
    Hallo Felizia,
    Da sollte es eigentlich keinen Grund geben etwas dran zu ändern. Im Tabellenblatt "Email" Zelle "A6" schreibst du deinen Text komplett rein.
    Sollte unter deiner E-Mail noch was darunter erweiterst du das Array um eine weitere Zeile
    Code:
    arrBody = Tabelle5.Range("A2:A11").Value
    das musst du dann im Body des Mails entsprechend mit übergeben.
    Gruß Uwe
     
    OilMax, 12. Juni 2023
    #6
  7. Felizia
    Felizia User
    ah ja, stimmt; dann wäre das erledigt.
    Bleibt nur noch, aus den 3 Sheets eine einzige PDF-Datei (mit dem Pfad und Dateiname). Da bist Du vmtl. gerade dran, gel?

    ich hab Dir die Datei als xlsm noch mal angehängt. Vielleicht kannst Du das Modul dort gleich einfügen und ausprobieren?

    danke Uwe ... mei wenn das klappt mit dem Makro, dann geht das am Ende ruckizucki. :-)
     
    Felizia, 12. Juni 2023
    #7
  8. Felizia
    Felizia User

    Komplexes Makro ohne Ahnung :-/

    Komplexes Makro ohne Ahnung :-/ o_O Der Dateiname klemmt noch - da kommt statt dem Datum_Firmenname (siehe Foto).

    Und noch ein Herzensanliegen: Gibts eine Möglichkeit, dass ich den Pfad im Script anpassen und der Unterordner aus dem Blatt Beispiel Spalte D (verkürzter Firmenname) genommen wird? Ich würde gerne jedes PDF in den entsprechenden Ordner der Behörde legen.

    der Pfad wäre dann z.B.

    Z:\2_Dateien\2.1_Dateien-Privat\P.DAT_Behörden\"Zelleninhalt aus Blatt 1, Spalte D letzter befüllter Wert"
    Die Excel selbst liegt in einem lokalen Verzeichnis.

    Danke schon mal :-)
    Herzliche Grüße
    Felizia
     
    Felizia, 12. Juni 2023
    #8
  9. OilMax hat Ahnung
    Hallo Felizia,

    anbei die Pfadanpassung in der 1. Datei.
    Ein Problem besteht im Dateinamen deiner letzten Tabelle. Im Dateinamen sind sowohl Slash als auch Backslash unzulässig.
    Das musst du bei der automatischen Erzeugung von Dateinamen in den Formelausgaben in den betreffenden Zellen beachten.
    Das Bildschirmfoto zeigt nur eine Textverkürzung der PDF Dateien im Anhang an. Das liegt an der grafischen Darstellung deines E-Mail Fensters (sehr langer Dateiname). Der Dateiname der PDF-Datei ist physisch trotzdem korrekt (siehst du beim speichern des Anhangs).

    Gruß Uwe
     
    OilMax, 12. Juni 2023
    #9
  10. OilMax hat Ahnung
    Ich habe gerade gesehen, dass du bei Herber ebenfalls diese Frage eingestellt hast. Verlinke bitte unter den Foren entsprechend deine Beiträge damit sich niemand seine Freizeit umsonst um die Ohren schlägt und du dich wunderst warum die Helfer verärgert reagieren. Crossposting ist eben nicht gern gesehen.
    Gruß Uwe
     
    OilMax, 12. Juni 2023
    #10
  11. OilMax hat Ahnung
    OilMax, 12. Juni 2023
    #11
  12. Felizia
    Felizia User
    Hi Uwe,
    ich dachte nicht, dass noch eine Antwort kommt (mein letzte Nachricht: Heute um 12:14 Uhr; nächste Antwort kam 21:24 Uhr. Ich dachte wirklich, das wars hier - da kommt nichts mehr. Ich war/bin echt verzweifelt und hab deshalb noch woanders Hilfe gesucht - vergeblich. Dort kam ich auch nicht weiter.

    In der Zwischenzeit habe ich Lernvideos für Anfänger angeschaut und notiert ... aber ob ich damit so ein Makro hinbekomme ... ich weiß es nicht. Ich würde auch gerne was für Eure Hilfe geben, ich will nicht schnorren.

    Ich weiß echt nicht weiter. Ich habe mir Deine oben geschickte Datei noch einmal herunter geladen und schaue sie mir gleich noch an. Vielleicht bekomme ich es ja zum Laufen.

    Sorry wenn ich Dich oder einen anderen Helfer gekränkt habe, das ist wirklich nicht meine Absicht.

    Nette Grüßle
    Felizia
     
    Felizia, 12. Juni 2023
    #12
  13. Felizia
    Felizia User

    Komplexes Makro ohne Ahnung :-/

    ... so, ich habs ausprobiert, bekomme aber beim Versuch, das Marko in VBA abzuspielen, die Meldung (siehe Foto) angezeigt. Muss ich da jetzt einen Namen vergeben?
     
    Felizia, 12. Juni 2023
    #13
  14. OilMax hat Ahnung
    Die Prozedur funktioniert. Die Ursache ist eine seit einiger Zeit bestehende Hürde.
    Gehe an den Speicherort der Datei --> Klicke die Datei mit Rechtsklick an -->Sidemenü unten Eigenschaften anklicken --> Häkchen imKästchen Zulassen setzen --> Datei öffen --> gelbes Band (falls noch nicht gemacht) freigeben 2x erforderlich --> Alt/F11 drücken --> Gehe ins Modul setze Cursor irgenwo in die Prozedur --> Drücke F5.
    Die Prozedur MailSenden startet.
    Gekränkt oder beleidigt bin/fühle ich nicht.
    Gruß Uwe
     
    OilMax, 12. Juni 2023
    #14
  15. Felizia
    Felizia User
    OMG - mit F5 gehts - Du hast es geschafft!! Und die Dateinamen sind auch perfekt! Ich bin soooo happy ... ich hab schon nicht mehr dran geglaubt ...
    Danke danke danke danke danke n+1!

    Ich würde Dir gerne was dafür zukommen lassen; wie können wir das bewerkstelligen?
    Herzliche Grüße
    Felizia
     
    Felizia, 13. Juni 2023
    #15
Thema:

Komplexes Makro ohne Ahnung :-/

Die Seite wird geladen...
  1. Komplexes Makro ohne Ahnung :-/ - Similar Threads - Komplexes Makro Ahnung

  2. Excel Liniendiagramm erstellen

    in Microsoft Excel Hilfe
    Excel Liniendiagramm erstellen: Guten Tag, ich benötige Hilfe mit einer Excel Tabelle. Hierbei habe ich eine Tabelle in der ich in 4 Spalten die Verkäufe aufgelistet habe. Dabei zeigt Spalte 1 das Datums des verkaufs an, Spalte...
  3. Bitte um Hilfe bei einer Formel mit einer komplexen Formel

    in Microsoft Excel Hilfe
    Bitte um Hilfe bei einer Formel mit einer komplexen Formel: Hallo zusammen, ich bin neu hier und auch was Excel und komplexe Formel angeht ein "Greenhorn". Ich möchte für folgendes einmal um Hilfe bitten. Ich habe eine neuen Excelvordruck für eine...
  4. Hilfe bei Formel-Vereinfachung/-Kürzung

    in Microsoft Excel Hilfe
    Hilfe bei Formel-Vereinfachung/-Kürzung: Hallo zusammen, ich stehe gerade auf dem Schlauch bei der Vereinfachung/Kürzung einer Formel. Mein aktuelles Ziel ist es in Excel die Umsätze bei der Einstellung neuer Vertriebsmitarbeiter zu...
  5. Komplexe Tabelle analysieren

    in Microsoft Excel Hilfe
    Komplexe Tabelle analysieren: Hallo, ich habe hier einen recht komplexen Datenexport als CSV, den ich gerne mit Excel analysieren würde. Ich bin kein Excel-Anfänger mehr, habe mit Pivot-Tabellen aber bisher nur sehr...
  6. Lösungsansatz komplexer SVERWEIS (Suchkriterium in Zweispalten und Kommagetrennt)

    in Microsoft Excel Hilfe
    Lösungsansatz komplexer SVERWEIS (Suchkriterium in Zweispalten und Kommagetrennt): Hallo Zusammen. Ich stehe vor dem Problem dass ich einen SVERWEIS Abgleich durchführen muss, wobei das Suchkriterium in zwei Spalten (A & B). Zusätzlich ist das Problem dass in Spalte B mehrere...
  7. Makro zum Kopieren (Komplex?!)

    in Microsoft Excel Hilfe
    Makro zum Kopieren (Komplex?!): Hallo! Ich brauche auch mal eure Hilfe. Ich versuche seit 2 Tagen folgendes mit einem Makro zu realisieren. Und zwar habe ich 2 Tabellenblätter. Das eine Blatt enthält Werte, die sich...
  8. etwas komplexe Bedingung als Makro, geht das? leider ratlos

    in Microsoft Excel Hilfe
    etwas komplexe Bedingung als Makro, geht das? leider ratlos: Hallo, habe eine große datei mit ca. 6000 zeilen und 30 spalten eine zeile representiert einen vorgang jetzt muss jede zeile/vorgang gelöscht werden der in spalte K NICHT die zahlen 240000...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden