Makro Excel
Betrifft: Makro Excel
von: Christopher
Geschrieben am: 14.08.2014 12:21:36
Hi zusammen,
ich benötige ein Makro, das mir die Daten in meiner Datei täglich aktualisiert und speichert. Idealerweise ohne Excel dabei zu öffnen. Wenns nur mit öffnen geht, ist das auch nicht sooo dramatisch.
Gibt es da wohl irgendetwas?
Danke vorab!
Gruß
Chris
Betrifft: AW: Makro Excel
von: Klaus M.vdT.
Geschrieben am: 14.08.2014 12:39:40
Hallo Chris,
ohne Excel zu öffnen startest du auch kein Makro. Du fährst ja auch nicht mit dem Auto, ohne vorher einzusteigen :-)
Klar geht das. Im simpelsten Falle so (in "DieseArbeitsmappe")
Private Sub Workbook_Open()
ActiveWorkbook.SaveAs Filename:=ActiveWorkbook.Path & "\" & Format(Now, "YYYYMMDDHHMM") & _
ActiveWorkbook.Name, FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
End Sub
Das wird dir noch nicht reichen, aber da nur du deine Arbeitsmappe kennst und weisst wie die Aktualisierungen usw. vonstattengehen fällt mehr Hilfe sehr schwer.
Grüße,
Klaus M.vdT.
Betrifft: AW: Makro Excel
von: Christopher
Geschrieben am: 14.08.2014 13:22:57
Hallo Klaus,
okay, danke erst einmal :)
Die Aktualisierungen erfolgen automatisch mit Formeln, sobald man Excel öffnet.
Bräuchte halt ein Makro, das morgens Excel einmal öffnet, speichert & dann schließt.
Geht da was mit einer bestimmten Uhrzeit?
Vielen, vielen Dank!
Betrifft: AW: Makro Excel
von: Klaus M.vdT.
Geschrieben am: 14.08.2014 13:30:40
Hallo Chris,
Bräuchte halt ein Makro, das morgens Excel einmal öffnet
Inception: Excel muss offen sein, um per Makro Excel zu öffnen.
Grüße,
Klaus M.vdT.
Betrifft: AW: Makro Excel
von: Christopher
Geschrieben am: 14.08.2014 13:43:47
Hab ich gerafft, danke !!!!
Sorry, aber ich hab da noch ein weiteres Problem :(
Ich habe eine Liste, in der ich Schulungstermine überwache...Da gibt es eine Spalte "nächste Schulung in Wochen"...die Wochen werden automatisch mit der Formel "=(F3*(365/12)-(HEUTE()-E3))/7" errechnet.
& auch genau diese Spalte wird mit einem Makro überwacht, das mir immer wenn die Wochenanzahl unter 20 sinkt, mir eine Mail geschickt werden soll....funktioniert aber irgendwie nur wenn ich z.B. "19" manuell in die Zelle schreibe...kann das Makro nicht funktionieren, wenn die Zellen automatisch gefüllt werden?
Danke!
 |
Betrifft: AW: Makro Excel
von: Klaus M.vdT.
Geschrieben am: 14.08.2014 13:55:55
Hi,
eigentlich gilt ja: neues Problem, neuer Beitrag :-)
Ich sehe dein Makro nicht. Was ich dir schon so sagen kann: Das Makro wird bestimmt "onChange" ausgelöst? Das entnehme ich aus deinem "wenn ich 19 manuell schreibe". Löse das Makro anders aus als onChange, zB. onCalculate. Aber pass auf, dass es dir dann nicht 30000 Mail schickt.
Betrifft: AW: Makro Excel
von: Christopher
Geschrieben am: 14.08.2014 14:04:34
Das hier ist mein aktuelles Makro:
Private Sub Workbook_SheetChange(ByVal Sh As Object, _
ByVal Target As Range)
On Error GoTo fehler
Const Minimumwert As Double = 3
Const ÜberwachteZelle As String = "$N$3"
If Target.Address = ÜberwachteZelle Then
If CDbl(Target.Value) < Minimumwert Then
Call ZellÜberwachung
End If
End If
fehler:
If Err = 13 Then
MsgBox "Bitte geben Sie nur nummerische Werte ein!", _
vbExclamation + vbOKOnly, "Eingabefehler ..."
End If
End Sub
Sub ZellÜberwachung()
Dim oOL As Outlook.Application
Dim oOLMI As Outlook.MailItem
Set oOL = New Outlook.Application
Set oOLMI = oOL.CreateItem(olMailItem)
'Application.DisplayAlerts = True
With oOLMI
.To = "christopher.roth@do.panopa.com"
.Subject = "Nachschulung intern"
.Body = "Hallo Christopher," & vbNewLine & vbNewLine & _
"bitte um Nachschulung intern kümmern"
.Send
End With
Set oOL = Nothing
Set oOLMI = Nothing
End Sub