Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1784to1788
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Befehlsschaltflächen erstellen sich selb

Befehlsschaltflächen erstellen sich selb
27.09.2020 15:00:48
Hartmut
Moin,
mein VBA Problem ist schon sehr alt. Die Datei ist schon 2012 mit Excel 2010 erstellt. Aber das Problem gab es schon immer. Nun habe ich einiges an der gesamt Datei geändert und das Problem nervt mich so richtig. Immer, wenn das Slript durchläuft entstehen irgendwie zwei weitere Schaltflächen, die ich nicht Programmiert habe. Solange es keine Fehlermeldung gibt, stört es nur wenig. Ich muss halt das Untermakro, dass die Schaltflächen löscht, manchmal anpassen. Hat jemand eine Idee, wie ich diesen Fehler beheben kann?
Im Anhang ein Bild zur Erklärung. Die Datei kann ich auf Grund der vielen senisblen Daten nicht mitliefern, aber hier das Skript:
Userbild
Sub Wochenmeldung_Buero()
' Wochenmeldung erstellen
' Call Wochenmeldung_drucken
Dim Mailadresse  As String, Betreff As String
ActiveWorkbook.Save
Call Aenderung_als_pdf
Sheets("TeilnMo8Uhr").Select
Range("G1") = CDate(InputBox("Datum!"))
Dim olApp As Object
Set olApp = CreateObject("Outlook.Application")
Mailadresse = "rathauskantine-nms@t-online.de ; nchristophersen-kita@kirche-boostedt.de"
Betreff = "Wochenmeldung und Menüplan die Woche vom " & Date + 5 & "bis zum " & Date + 9
Sheets("Wochenmeldung").Range("A1").ClearContents
Text = "Moin," & vbCrLf & "in der Anlage übersenden wir die Wochenmeldung und " _
& "den Menüplan für den Zeitraum vom " & Date + 5 & " bis " & Date + 9 _
& vbCrLf & vbCrLf & "Mit freundlichen Grüßen" _
& vbCrLf & vbCrLf & "Hartmut David" _
& vbCrLf & "Kita-Leitung" _
& vbCrLf _
& vbCrLf & "Diese Email ist vertraulich und kann darueber hinaus persoenliche Inhalte haben. _
" _
& vbCrLf & "Beachten Sie bitte, dass jede Form der unautorisierten Nutzung, Verö _
ffentlichung," _
& vbCrLf & "Vervielfältigung oder Weitergabe des Inhaltes dieser Email nicht gestattet ist." _
_
& vbCrLf & "Diese nachricht ist ausschließlich für den bezeichneten Adressaten oder dessen  _
Vertreter" _
& vbCrLf & "bestimmt." _
& vbCrLf & "Sollten Sie nicht der vorgesehene Adressat dieser Email oder dessen Vertreter  _
sein, so" _
& vbCrLf & "bitten wir Sie, sich mit dem Absender der Email in Verbindung zu setzen." _
& vbCrLf & "Wir haben diese Email vor dem Versenden auf Virenfreiheit geprüft." _
& vbCrLf & "Eine Haftung für Schäden durch Virenbefall schließen wir aus."
Sheets("Wochenmeldung").ExportAsFixedFormat Type:=xlTypePDF, Filename:="N:\Kita\ _
Scanablage-Team\Wochenmeldung.pdf", _
Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False,  _
OpenAfterPublish:=False
With olApp.CreateItem(0)
.to = Mailadresse
.Subject = Betreff
.Body = Text
' .Attachments.Add "C:\Tagesmeldung\Wochenmeldung.pdf"
.Attachments.Add "N:\Kita\Scanablage-Team\Wochenmeldung.pdf"
' .Attachments.Add "C:\Tagesmeldung\Menueplan.pdf"
If Len(Dir("N:\Kita\Scanablage-Team\Menueplan.pdf")) > 0 Then
'weiter im Makro
Else
MsgBox "Der Menüplan muss erst eingescannt werden."
Command_Knopf_weg
Exit Sub
End If
.Attachments.Add "N:\Kita\Scanablage-Team\Menueplan.pdf"
' .Attachments.Add "C:\Tagesmeldung\Tagesmeldung.pdf"
.Attachments.Add "N:\Kita\Scanablage-Team\Tagesmeldung.pdf"
.Display
' .Send
End With
Set olApp = Nothing
Sheets("TeilnMo8Uhr").Select
Range("G1").Value = Date - 2
Sheets("Änderungsmeldung").Select
Call Schaltfläche_weg
Call Wochenmeldung_drucken
Name "N:\Kita\Scanablage-Team\Menueplan.pdf" As "N:\Kita\Scanablage-Team\Menueplan.pdf.sik"
Kill "N:\Kita\Scanablage-Team\Menueplan.pdf.sik"
Application.Dialogs(xlDialogSaveAs).Show
End Sub

Sub Wochenmeldung_Pinguine()
' Wochenmeldung erstellen
' Call Wochenmeldung_drucken
Dim Mailadresse  As String, Betreff As String
ActiveWorkbook.Save
Call Aenderung_als_pdf_Pinguine
Sheets("TeilnMo8Uhr").Select
Range("G1") = CDate(InputBox("Datum!"))
Dim olApp As Object
Set olApp = CreateObject("Outlook.Application")
Mailadresse = "Caterer@email-adresse.de"
Betreff = "Pinguine Wochenmeldung und Menüplan die Woche vom " & Date + 5 & "bis zum " &  _
Date + 9
Sheets("Wochenmeldung").Range("A1").ClearContents
Text = "Moin," & vbCrLf & "in der Anlage übersenden wir die Wochenmeldung und " _
& "den Menüplan für den Zeitraum vom " & Date + 5 & " bis " & Date + 9 _
& vbCrLf & vbCrLf & "Mit freundlichen Grüßen" _
& vbCrLf & vbCrLf & "Hartmut David" _
& vbCrLf & "Kita-Leitung" _
& vbCrLf _
& vbCrLf & "Diese Email ist vertraulich und kann darueber hinaus persoenliche Inhalte haben. _
" _
& vbCrLf & "Beachten Sie bitte, dass jede Form der unautorisierten Nutzung, Verö _
ffentlichung," _
& vbCrLf & "Vervielfältigung oder Weitergabe des Inhaltes dieser Email nicht gestattet ist." _
_
& vbCrLf & "Diese nachricht ist ausschließlich für den bezeichneten Adressaten oder dessen  _
Vertreter" _
& vbCrLf & "bestimmt." _
& vbCrLf & "Sollten Sie nicht der vorgesehene Adressat dieser Email oder dessen Vertreter  _
sein, so" _
& vbCrLf & "bitten wir Sie, sich mit dem Absender der Email in Verbindung zu setzen." _
& vbCrLf & "Wir haben diese Email vor dem Versenden auf Virenfreiheit geprüft." _
& vbCrLf & "Eine Haftung für Schäden durch Virenbefall schließen wir aus."
Sheets("Wochenmeldung").ExportAsFixedFormat Type:=xlTypePDF, Filename:="N:\Pfad\ _
Wochenmeldung.pdf", _
Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False,  _
OpenAfterPublish:=False
With olApp.CreateItem(0)
.to = Mailadresse
.Subject = Betreff
.Body = Text
.Attachments.Add "N:\Pfad\Wochenmeldung.pdf"
If Len(Dir("N:\Pfad\Menueplan.pdf")) > 0 Then
'weiter im Makro
Else
MsgBox "Der Menüplan muss erst eingescannt werden."
Command_Knopf_weg
Exit Sub
End If
.Attachments.Add "N:\Pfad\Menueplan.pdf"
.Attachments.Add "N:\Pfad\Tagesmeldung.pdf"
.Display
' .Send
End With
Set olApp = Nothing
Sheets("TeilnMo8Uhr").Select
Range("G1").Value = Date - 2
Sheets("Änderungsmeldung").Select
Call Schaltfläche_weg
Call Wochenmeldung_drucken
Name "N:\Pfad\Menueplan.pdf" As "N:\Scanablage-Team\Menueplan.pdf.sik"
Kill "N:\Pfad\Menueplan.pdf.sik"
Application.Dialogs(xlDialogSaveAs).Show
End Sub

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Befehlsschaltflächen erstellen sich selb
27.09.2020 15:48:22
Daniel
Hi
Naja, die Schaltflächen entstehen ja nicht von alleine.
Dazu braucht es ein .Add oder ein Copy-Paste.
Hast du deinen Code dahingehend schon durchsucht?
Ansonsten musst du den Code mal im Einzelstep durchsickern, dabei parallel schauen, was auf dem Blatt passiert und dann siehst du ja, wo die Schaltflächen dupliziert werden.
Denn Code in dem Bereich musst du dir genauer anschauen.
Da du uns nur einen Teil des Codes gezeigt hast, können wir dir so auch nicht viel weiterhelfen.
Wenn du die Stelle selbst nicht findest, solltest du die Datei mit vollständigem Code und anonymisierten Daten hochladen, sowie eine Beschreibung geben, was man tun muss damit sich die Schaltflächen verdoppeln.
Gruß Daniel
Anzeige
AW: Befehlsschaltflächen erstellen sich selb
27.09.2020 16:23:15
Hartmut
Na, wenn das keine schnelle Hilfe war.
Auf den Einzelschritt bin ich einfach nicht gekommen.
Das hat schon geholfen und das Leben kann so einfach sein.. Ich hab den Fehler gefunden.
Warum ich das so gemacht hatte, weiß ich nicht, dass ist einfach zu lange her.
Wahrscheinlich hab ich ein vorhandenes Skript ohne genaue Prüfung übernommen.
Egal, ich freu mich - Der Fehler ist weg.
Danke!
AW: Befehlsschaltflächen erstellen sich selb
27.09.2020 17:00:26
Herbert_Grom
Hallo Hartmut,
und welche diese Code-Zeilen war jetzt die Verursacherin?
Servus
AW: Befehlsschaltflächen erstellen sich selb
27.09.2020 22:36:51
Hartmut
Moin,
der Befehl befand sich in einem Untermakro (Änderungsmeldung). Das hatte ich nicht ordentlich geprüft, eigentlich wohl eher gar nicht. Stattdessen hatte ich mir einen Workaround gebaut, indem ich am Ende ein Untermakro aufgerufen habe, dass die Schaltflächen löscht. Funktionierte aber nur, wenn keine weiteren Fehler auftraten. Damit konnte ich um, aber meine Mitarbeirinnen nicht. Nun denn,
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige