Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Geöfnette Ecxel 2003 Datei per Makro versenden

Frage Microsoft Microsoft Office

Mitglied: simon-ni

simon-ni (Level 1) - Jetzt verbinden

28.03.2011 um 08:33 Uhr, 4673 Aufrufe, 5 Kommentare

Hallo Forum,

ich muss einen absenden button in Excel 2003 so programieren das sich die gesamte gerade geöfnete datei(mit allen sheets), an mehrere empfänger sendet (ca.8).

Dieses makro funktioniert in word sehr gut, ich bekomme es aber in excel nicht zum laufen, entweder sendet er nur das aktive sheet, oder er macht garnichts.



Private Sub CommandButton2_Click()
'das gesamte dokument per mail verschicken
'Options.SendMailAttach = True
With ActiveDocument _
.MailEnvelope.Item
.To = "ich@ich.com;ich2@ich2.com"
.Subject = "Test"
.Send
End With
End Sub




Ich habe auch einige andere möglichkeiten gefunden, bei welchen sich aber ein outlook fenster öffnet, oder sich dieses lästige fenster, bei welchem man das senden bestätigen muss, für jede eingetragene Adresse öffnet. Dies soll aber nicht der fall sein.

Ich hoffe ihr könnt mir helfen, und ja ich weiß das es dazu schon beiträge gibt, ich aber nichts passendes gefunden hab, da ich eigentlich nicht viel ahnung von vba/vbs? hab.

Vielen Dank

Nico
Mitglied: 76109
28.03.2011 um 09:50 Uhr
Hallo simon-ni!

Mit diesem Code wird das Standard-Mail-Programm verwendet. In meinem Fall ist das Thunderbird, bei dem 1 mal mit OK für alle bestätigt werden muss. Der Versuch die Arbeitsmappe auf andere Weise zu versenden ist leider daran gescheitert, weil die Arbeitsmappe geöffnet ist.

01.
Private Sub CommandButton2_Click() 
02.
    Dim An(1 To 8) As String 
03.
     
04.
    An(1) = "a@xy.de" 
05.
    An(2) = "b@xy.de" 
06.
    '... 
07.
    An(8) = "h@xy.de" 
08.
 
09.
    ActiveWorkbook.SendMail Recipients:=An, Subject:="Test" 
10.
End Sub
Gruß Dieter
Bitte warten ..
Mitglied: 83928
28.03.2011 um 10:29 Uhr
Hi,
hier noch ein paar Möglichkeiten.

Eine Möglichkeit die geöffnete Excel-Datei zu versenden funktioniert so:
01.
  
02.
    sAddr = "mail1@domain.de;mail1@domain.de" 
03.
    sBetreff = "betraff" 
04.
    Application.Dialogs(xlDialogSendMail).Show sAddr, sBetreff


Hier musst Du noch 1 Klick zum versandt machen (egal wie viele Empfänger)


Ein wenig aufwändiger, aber weitaus flexibler ist diese Methode (ich geh mal davon aus, dass Du Outlook hast).
Unter ->Extras->Verweise musst Du dazu noch den Verweis auf die "Microsoft Outlook XX Object Library" aktivieren.

Hiermit kannst Du noch einen Text in die Mail einfügen (.Body) und auch mehrere Dateien anhängen.
Die Zeile "SendKeys %s" sorgt dafür, das Du im Outlook nicht mehr auf "Senden" klicken musst

01.
  
02.
    Dim olApp As Outlook.Application 
03.
    Dim olNamespace As Namespace 
04.
    Dim objMailItem As MailItem 
05.
    Dim objFolder As mapiFolder 
06.
     
07.
    Set olApp = CreateObject("Outlook.Application") 
08.
    Set olNamespace = olApp.GetNamespace("MAPI") 
09.
    Set objFolder = olNamespace.GetDefaultFolder(olFolderInbox) 
10.
    Set objMailItem = objFolder.Items.Add(olMailItem) 
11.
     
12.
    With objMailItem 
13.
        .To = "mail1@domain.de;mail1@domain.de" 
14.
        .Subject = "" 
15.
        .Body = "" 
16.
        .Attachments.Add "c:\tmp\test.xls" 
17.
        .Display 
18.
    End With 
19.
    olApp.ActiveWindow 
20.
    SendKeys "%s"
Bitte warten ..
Mitglied: simon-ni
28.03.2011 um 10:44 Uhr
Funktioniert einwandfrei, danke
Bitte warten ..
Mitglied: simon-ni
28.03.2011 um 10:46 Uhr
Bei der ersten möglichkeit öffnet sich ein outlook fenster, was nicht passieren soll.

Für die zweite möglichkeit müsste ich die policy ändern, was ich leider nicht einfach so machen kann.

Trotzdem danke für die Mühe.
Bitte warten ..
Mitglied: 101993
17.08.2011 um 12:23 Uhr
Hallo,

ich steh vor einer etwas spezielleren Herausforderung:

ich habe eine Ausgangsdatei, welche ich mittels nachfolgendem makro, nach einem Kriterium in 18 einzelne Dateien aufsplitte

01.
Option Explicit 
02.
Sub Pivotrefresh() 
03.
 
04.
    Worksheets("Pivot").Activate 
05.
    ActiveSheet.PivotTables("PivotTable8").PivotCache.Refresh 
06.
     
07.
End Sub 
08.
 
09.
Sub Start() 
10.
 
11.
Dim I As Byte, K As Integer, X As Integer, Y As Integer 
12.
Dim Kriterium As String, Pfad As String 
13.
Dim AW As String 
14.
 
15.
'Dies bitte anpassen => Pfad, wo gespeichert werden soll 
16.
Pfad = "C:\" 
17.
 
18.
'Bildschirmaktualisierung abschalten 
19.
Application.ScreenUpdating = False 
20.
 
21.
'Datenbasis neu aufstellen 
22.
Pivotrefresh 
23.
 
24.
'Zum richtigen Tabellenblatt springen 
25.
Worksheets("Quelle").Activate 
26.
 
27.
'Ende der Quelle finden 
28.
Worksheets("Quelle").Cells(Rows.Count, 2).End(xlUp).Activate 
29.
K = Replace(ActiveCell.Address(False, False), "B", "") 
30.
 
31.
'Beginn in Zeile => Pivottabelle 
32.
I = 5 
33.
 
34.
'Loslaufen 
35.
Do 
36.
 
37.
    'Ersten Eintrag der zu filternden Kriterien 
38.
    Kriterium = Worksheets("Pivot").Cells(I, 1) 
39.
       
40.
    'Für jedes Kriterium ein Tabellenblatt 
41.
    Worksheets.Add 
42.
    ActiveSheet.Name = Kriterium 
43.
     
44.
    'Zunächst die Überschriften setzen 
45.
    Worksheets(Kriterium).Cells(1, 1) = Worksheets("Quelle").Cells(1, 1) 
46.
    Worksheets(Kriterium).Cells(1, 2) = Worksheets("Quelle").Cells(1, 2) 
47.
    Worksheets(Kriterium).Cells(1, 3) = Worksheets("Quelle").Cells(1, 3) 
48.
    Worksheets(Kriterium).Cells(1, 4) = Worksheets("Quelle").Cells(1, 4) 
49.
    Worksheets(Kriterium).Cells(1, 5) = Worksheets("Quelle").Cells(1, 5) 
50.
    Worksheets(Kriterium).Cells(1, 6) = Worksheets("Quelle").Cells(1, 6) 
51.
    Worksheets(Kriterium).Cells(1, 7) = Worksheets("Quelle").Cells(1, 7) 
52.
    Worksheets(Kriterium).Cells(1, 8) = Worksheets("Quelle").Cells(1, 8) 
53.
    Worksheets(Kriterium).Cells(1, 9) = Worksheets("Quelle").Cells(1, 9) 
54.
    Worksheets(Kriterium).Cells(1, 10) = Worksheets("Quelle").Cells(1, 10) 
55.
    Worksheets(Kriterium).Cells(1, 11) = Worksheets("Quelle").Cells(1, 11) 
56.
    Worksheets(Kriterium).Cells(1, 12) = Worksheets("Quelle").Cells(1, 12) 
57.
    Worksheets(Kriterium).Cells(1, 13) = Worksheets("Quelle").Cells(1, 13) 
58.
    Worksheets(Kriterium).Cells(1, 14) = Worksheets("Quelle").Cells(1, 14) 
59.
    Worksheets(Kriterium).Cells(1, 15) = Worksheets("Quelle").Cells(1, 15) 
60.
    Worksheets(Kriterium).Cells(1, 16) = Worksheets("Quelle").Cells(1, 16) 
61.
    Worksheets(Kriterium).Cells(1, 17) = Worksheets("Quelle").Cells(1, 17) 
62.
         
63.
    'Zeile in jedem Tabellenblatt wieder auf zwei setzen 
64.
    Y = 2 
65.
     
66.
    'Die Quelle vom Anfang bis Ende durchlaufen 
67.
    For X = 2 To K 
68.
       
69.
        'Sofern Kriterium entspricht, kopieren 
70.
        If Worksheets("Quelle").Cells(X, 2) = Kriterium Then 
71.
             
72.
            Worksheets(Kriterium).Cells(Y, 1) = Worksheets("Quelle").Cells(X, 1) 
73.
            Worksheets(Kriterium).Cells(Y, 2) = Worksheets("Quelle").Cells(X, 2) 
74.
            Worksheets(Kriterium).Cells(Y, 3) = Worksheets("Quelle").Cells(X, 3) 
75.
            Worksheets(Kriterium).Cells(Y, 4) = Worksheets("Quelle").Cells(X, 4) 
76.
            Worksheets(Kriterium).Cells(Y, 5) = Worksheets("Quelle").Cells(X, 5) 
77.
            Worksheets(Kriterium).Cells(Y, 6) = Worksheets("Quelle").Cells(X, 6) 
78.
            Worksheets(Kriterium).Cells(Y, 7) = Worksheets("Quelle").Cells(X, 7) 
79.
            Worksheets(Kriterium).Cells(Y, 8) = Worksheets("Quelle").Cells(X, 8) 
80.
            Worksheets(Kriterium).Cells(Y, 9) = Worksheets("Quelle").Cells(X, 9) 
81.
            Worksheets(Kriterium).Cells(Y, 10) = Worksheets("Quelle").Cells(X, 10) 
82.
            Worksheets(Kriterium).Cells(Y, 11) = Worksheets("Quelle").Cells(X, 11) 
83.
            Worksheets(Kriterium).Cells(Y, 12) = Worksheets("Quelle").Cells(X, 12) 
84.
            Worksheets(Kriterium).Cells(Y, 13) = Worksheets("Quelle").Cells(X, 13) 
85.
            Worksheets(Kriterium).Cells(Y, 14) = Worksheets("Quelle").Cells(X, 14) 
86.
            Worksheets(Kriterium).Cells(Y, 15) = Worksheets("Quelle").Cells(X, 15) 
87.
            Worksheets(Kriterium).Cells(Y, 16) = Worksheets("Quelle").Cells(X, 16) 
88.
            Worksheets(Kriterium).Cells(Y, 17) = Worksheets("Quelle").Cells(X, 17) 
89.
            Y = Y + 1 
90.
             
91.
        End If 
92.
         
93.
    Next X 
94.
     
95.
    'Neue Mappe aufmachen und Tabellenblatt verschieben 
96.
    Sheets(Kriterium).Move 
97.
    ActiveWorkbook.SaveAs Filename:=Pfad & "\" & Kriterium & ".xls", FileFormat:= _ 
98.
        xlNormal, CreateBackup:=False 
99.
     
100.
    'Aktives Tabellenblatt schließen. Änderungen wurden bereits gespeichert! 
101.
    ActiveWorkbook.Close 
102.
     
103.
    'Nächste Runde 
104.
    I = I + 1 
105.
     
106.
Loop Until Worksheets("Pivot").Cells(I, 1) = "Gesamtergebnis" 
107.
 
108.
AW = MsgBox("Der Vorgang wurde abgeschlossen!", vbOKOnly + vbInformation + vbSystemModal, "Hinweis") 
109.
 
110.
Application.ScreenUpdating = True 
111.
 
112.
End Sub



ich möchte jetzt jede Datei an eine spezielle e-mail-adresse verschicken z.B. Datei mit Kriterium A an email-adresse Y, Datei mit Kriterium B an email-adresse Z, usw.

ist das möglich, bzw. ist das mit einem makro möglich?
Bitte warten ..
Ähnliche Inhalte
Microsoft Office
VBA Makro Mails aus Excel versenden
gelöst Frage von ExxiStMicrosoft Office7 Kommentare

Guten Tag zusammen, folgendes Problem treibt mich schon seit Tagen zur Verzweiflung: Aus einer Excel Datei werden durch folgendes ...

Microsoft Office
Mails via VBA Makro aus Excel mit Anhang versenden
gelöst Frage von ExxiStMicrosoft Office2 Kommentare

Hallo zusammen, hoffe es kann mir jemand bei folgendem Problem helfen. Ich hänge hier nun schon seit Tagen fest ...

VB for Applications
Makro auf alle Dateien im Ordner
gelöst Frage von mcandyyyyyVB for Applications1 Kommentar

Hallo liebe Community, Ich schreibe momentan meine Bachelorarbeit über die Preisanalyse von Regelenergie. Hierzu habe ich mir für die ...

Outlook & Mail
Outlook Iphone Dateien versenden
Frage von Matze1508Outlook & Mail1 Kommentar

Guten Tag, folgendes Problem trat heute auf. Jemand wollte ein Bild von seinem Iphone über Outlook senden, aber anstatt, ...

Neue Wissensbeiträge
Viren und Trojaner

Deaktivierter Keylogger in HP Notebooks entdeckt

Information von bitcoin vor 4 StundenViren und Trojaner

Ein Grund mehr warum man Vorinstallationen der Hersteller immer blank bügeln sollte Der deaktivierte Keylogger findet sich im vorinstallierten ...

Router & Routing

Lets Encrypt kommt auf die FritzBox

Information von bitcoin vor 8 StundenRouter & Routing

In der neuesten Labor-Version der FB7490 integriert AVM unter anderem einen Let's Encrypt Client für Zugriffe auf das Webinterface ...

Internet

Was nützt HTTPS, wenn es auch von Phishing Web-Seiten genutzt wird

Information von Penny.Cilin vor 3 TagenInternet17 Kommentare

HTTPS richtig einschätzen Ob man eine Webseite via HTTPS aufruft, zeigt ein Schloss neben der Adresse im Webbrowser an. ...

Webbrowser

Bugfix für Firefox Quantum released - Installation erfolgt teilweise nicht automatisch!

Erfahrungsbericht von Volchy vor 4 TagenWebbrowser8 Kommentare

Hallo zusammen, gem. dem Artike von heise online wurde mit VersionFirefox 57.0.1 sicherheitsrelevante Bugs behoben. Entgegen der aktuellen Veröffentlichung ...

Heiß diskutierte Inhalte
Batch & Shell
Trusted Sites für alle User auf dem PC einpflegen
Frage von xXTaKuZaXxBatch & Shell12 Kommentare

Aufgabestellung: Es sollen auf 1 PC (bzw. mehreren PCs) vertrauenswürdige Sites per Powershell eingetragen werden, die für alle User ...

Voice over IP
Telefonstörung - Ortsrufnummern kein Verbindungsaufbau
Frage von Windows10GegnerVoice over IP10 Kommentare

Hallo, sowohl bei uns als auch beim Opa ist es über VoIP nicht möglich Ortsrufnummern anzurufen. Es kommt nach ...

Cloud-Dienste
PIM als SaaS Nutzungsgebühr
Frage von vanTastCloud-Dienste8 Kommentare

Moin, wir haben uns ein PIM (Product Information Management) nach unseren Ansprüchen für viel Geld als SaaS-Lösung bauen lassen. ...

Vmware
DOS 6.22 in VMWare mit CD-ROM
gelöst Frage von hesperVmware7 Kommentare

Hallo zusammen! Ich hab ein saublödes Problem. Es ist eine VMWare mit DOS 6.22 zu erstellen auf dem ein ...