Naja das mit der Erfahrung würde ich jetzt mal nicht so unterschreiben. Suche mir halt hier im Forum oder wo anders Codes und versuche diese zu verstehen und passe die an. Viele Sachen habe ich schon selber gemacht, weil es für mich dann auch Sinn macht und diese funktionieren dann auch.
Aber jetzt ist das echt zu viel und ich versteh nur noch Bahnhof.
Ich bin immer davon ausgegangen, dass ich nach dem Schema arbeiten muss, dass alles so wie im Ablauf programmiert werden muss.
Das mit dem
Visual Basic:
strBlatt = ActiveSheet.Name
und dem vorherigen Aktiven des Sheets bin ich davon ausgegangen, dass ich erst es aktvieren muss um dann des richtigen Namen in die Variable strBlatt zu speichern.
Sinn für mich macht natürlich, dass ich das mit z. B. ThisWorkbook.... machen soll, damit ich immer klare Anweisungen habe.
Jetzt nach dem 10 mal durchlesen des Threads stelle ich mir die Frage ob ich nicht komplett falsch die Sache aufbaue.
In meinem Script speichere ich doch eh alle Sheets, wenn sie gefüllt sind. Also sind diese schon bei mir auf dem Server gespeichert bzw. abgelegt.
Wenn ich diese Dateien doch schon habe, dann muss ich diese dann nicht noch mal extrahieren wenn ich die Mail erstelle.
Dann macht es doch Sinn diese vom Server zu holen, wenn diese vorhanden ist. Somit habe ich direkt auch die Abfrage (wenn vorhanden dann Mail sonst nicht)
Ich glaube ich schreibe das alles noch mal neu. und versuche es auch ohne ActiveSheet zu machen.
Und um die Frage zu beantworten "Actives Sheet in aktives Workbook kopieren. WOZU?" kann ich dir nicht beantworten.
Es hat funktioniert und ich bin dann auch davon ausgegangen das dies richtig ist.