Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
588to592
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
588to592
588to592
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Makro aktivieren über Add In!?

Makro aktivieren über Add In!?
24.03.2005 08:35:07
Andre
Hallo alle zusammen,
Ich habe folgendes Makro, dass eine Kopie auf Tabellenblatt "Kopie" erstellt.

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Sheets("Kopie").Select
Rows("4:5").Select
ActiveSheet.Unprotect
Selection.Insert Shift:=xlDown
Range("A4").Select
Sheets("Schichtbericht").Select
Range("A19:D20").Select
Selection.Copy
Sheets("Kopie").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
If Range("A60000") <> "" Then
Range("A10000:D60000").Delete Shift:=xlUp
End If
Range("A1").Select
Application.CutCopyMode = False
ActiveSheet.Protect
Sheets("Schichtbericht").Select
Range("P19:S19").Select
End Sub

Nun ist es sehr oft vorgekommen, dass die Makros nicht aktiviert wurden. Ist es möglich, ein Add In zuerstellen, wo die Abfrage kommt: Beginnt die zu offnende Exel Datei mit Schichtbericht o.ä., dann aktiviere die Makros ohne zu bestätigen. Beginn Abfrage deshalb, weil die Datei immer mit laufendem Datum versehen und gespeichert wird.

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro aktivieren über Add In!?
24.03.2005 09:49:37
Harald
Hallo Andre
das Add-In muss ja auf jedem PC aktiviert werden. Die Abfrage, ob es sich um die Datei Schichtbericht xy handelt würde ich folgendermaßen in die PrivateSub einbinden.

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim n As String
n = ActiveWorkbook.Name
On Error GoTo ende
If n Like "Schichtbericht*.xls" Then
Sheets("Kopie").Select
Rows("4:5").Select
ActiveSheet.Unprotect
etc.
'ggf. noch ein else: exit sub
End If
ende:
End Sub

Gruß
Harald
AW: funktioniert nicht
24.03.2005 10:33:18
Andre
Hallo Harald,
ich habe den Code in "DieseArbeitsmappe" und in Exel Start als Add In gespeichert. Leider funktioniert es nicht. Vielleicht liegt es an der else: exit sub, aber wie müste es geschrieben werden. Kannst du mir bitte weiter helfen.
Danke im vorraus!
Anzeige
AW: funktioniert nicht
24.03.2005 11:03:31
Harald
Andre,
zuerst mal. Welche Fehlermeldung kommt denn ?
Für die else exit sub end if - Geschichte auszuschliessen. Lösch diesen Teil aus dem Code und schreib in händisch (als Dreizeiler ohne Doppelpunkt) wieder hinein.
else
exit sub
end if
oder lass ihn ganz weg ;-))
Gruß
Harald
AW: keine Fehlermeldung Mokro wird nicht gestartet
24.03.2005 11:36:18
Andre
Hallo Harald,
eine Fehlermeldung wird nicht angezeigt, so habe ich den Code unter Add In gespeichert.
Schreibe mir doch bitte wie du es anders machen würdest.
Danke!

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim n As String
n = ActiveWorkbook.Name
On Error GoTo ende
If n Like "Schichtbericht.xls" Then
Sheets("Kopie").Select
Rows("4:5").Select
ActiveSheet.Unprotect
Selection.Insert Shift:=xlDown
Range("A4").Select
Sheets("Schichtbericht").Select
Range("A19:D20").Select
Selection.Copy
Sheets("Kopie").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
If Range("A60000") <> "" Then
Range("A10000:D60000").Delete Shift:=xlUp
End If
Range("A1").Select
Application.CutCopyMode = False
ActiveSheet.Protect
Sheets("Schichtbericht").Select
Range("P19:S19").Select
'ggf. noch ein else: exit sub
'End If
'ende:
End Sub

Anzeige
AW: keine Fehlermeldung Mokro wird nicht gestartet
24.03.2005 12:31:11
Harald
OK...ich glaub es hing am Sternchen und am auskommentierten End If
Habs mal korrigiert. Das Sternchen hinter Schichtbericht besagt, dass hinter Schichtbericht noch irgendwas stehen kann. Ohne Sternchen sucht er streng nach Schichtbericht.xls. Klar das er da direkt aufgehört hat.
Hochkomma vor End If kommentiert die Zeile aus. Das wäre die nächste Fehlermeldung geworden (If-Block ohne End If)

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim n As String
n = ActiveWorkbook.Name
On Error GoTo ende
If n Like "Schichtbericht*.xls" Then
Sheets("Kopie").Select
Rows("4:5").Select
ActiveSheet.Unprotect
Selection.Insert Shift:=xlDown
Range("A4").Select
Sheets("Schichtbericht").Select
Range("A19:D20").Select
Selection.Copy
Sheets("Kopie").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
If Range("A60000") <> "" Then
Range("A10000:D60000").Delete Shift:=xlUp
End If
Range("A1").Select
Application.CutCopyMode = False
ActiveSheet.Protect
Sheets("Schichtbericht").Select
Range("P19:S19").Select
'ggf. noch ein else: exit sub
End If
ende:
End Sub

Das kriegen wir schon hin ;-))
Harald
Anzeige
AW: geht nicht
24.03.2005 13:47:04
Andre
Hallo Harald, genau wie du hatte ich es in Exel Start unter Add In gespeichert. Funktioniert leider nicht. Ich vermute, dass noch ein Befehl kommen muss, damit die Prozetur läuft, blos welcher!?
AW: geht nicht
24.03.2005 14:02:20
Harald
Momentmal....ich versteh nur XLstart und AddIn.
Solltest Du das Ding als Addin speichern (leere Mappe mit Modul unter *.xla),steckt Excel die sofern Du nichts änderst in diesen Ordner
Anwendungsdaten/Office/AddIns
XLStart, ist lediglich eine zusätzliche Startdatei, die beim Excelstart mit geöffnet wird. Das ist nicht das Gleiche wie ein Add-In.
Add-Ins bindest Du über den Addins-Manager ein und nicht über zusätzliche Startordner.

Sub test()
Dim n As String
n = ActiveWorkbook.Name
On Error GoTo ende
If n Like "Schichtbericht*.xls" Then
msgbox "Treffer"
else
msgbox "Das wars noch nicht"
end if
End Sub

Das da ist mal kurz aus dem Handgelenk, damit Du testen kannst, ob er überhaupt den Dateinamen akzeptiert.
Also entweder du speicherst das Modul im zusätzlichen Startordner als xls, oder als AddIn (*.xla) und bindest per Manager ein.
Mach hin...ich hab um 14.30 Feierabend ;-)))
Harald
Anzeige
AW: evtl. bis Dienstag
24.03.2005 14:28:52
Andre
Hallo Harald, werde es probieren, falls es nicht klappt werde ich Dienstag ab 9:00 nochmals ins Forum gehen.
Tausend Dank für deine Mühe!!!

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige