Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1948to1952
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

Per VBA Text einfügen, Makro ausführen und Tabelle speichern

Per VBA Text einfügen, Makro ausführen und Tabelle speichern
09.10.2023 12:47:03
Timo
Hallo zusammen,

es wäre super, wenn ihr mir helfen könntet.
Da ich folgendes wirklich sehr oft am Tag machen muss, würde ich mir sehr gerne die Arbeit etwas erleichtern.

Aus einem externen Programm kopiere ich mir Umsatzdaten und füge diese per STRG-V in eine leere Excel Datei ein, in der nur ein Makro hinterlegt ist und praktisch als Vorlage dient. Durch das Makro wird die eingefügte Tabelle dann etwas geordnet, ungewollte Spalten gelöscht und die Umsätze am Ende der Tabelle addiert.
Die so entstandene Excel Datei speichere ich dann als Excel Arbeitsmappe - ohne Makros.

Beim speichern vergesse ich sehr häufig das manuelle Umschalten von "Speichern unter" -> Excel Arbeitsmappe mit Makros in eine normale Arbeitsmappe ohne Makros. Mit Makros zu speichern ist schlecht, da viele die so versendete Datei nicht öffnen weil sie Markos aktivieren müssten und Angst vor eventuellen Viren haben.

Mein Plan wäre es nun, in meiner Vorlage mit dem Makro einfach eine Schaltfläche zu erstellen die per Klick nun den vorher kopierten Text aus der Zwischenablage in Excel einfügen kann, das Marko für die Ordnung der Tabelle ausgeführt wird und bestenfalls direkt das "speichern unter" Fenster geöffnet wird wo der Dateityp bereits umgestellt ist in Excel-Arbeitsmappe und ich nur noch einen Dateinamen angeben müsste.

Oder es wird automatisch gespeichert und als Dateiname der Text aus der Zelle A4 als Dateiname gewählt. Aber das wäre nur ein Bonus.

Das Makro heißt "Formatierung".

Ist das möglich? Könnte mir hier jemand helfen?

Vielen Dank für Eure Hilfe.
LG Timo

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Per VBA Text einfügen, Makro ausführen und Tabelle speichern
09.10.2023 13:44:49
daniel
Hi
ich würde im Button folgendes ausführen:
1. neue leer Datei anlegen (Workbooks.Add)
2. Zwischenablage einfügen (ActiveSheet.Paste)
3. Speichernamen abfragen (Application.GetSaveAsFileName)
4. Datei im Makro unter dem angegeben Namen speichern. Dabei kannst du dann sicherstellen, dass immer als xlsx gespeichert wird, auch wenn du im Get..FileName was anderes ausgewählt hast.
GetSaveAsFileName sieht aus wie der Speicherdialog, schreibt aber nur den Dateinamen in eine Variable, so das du hinterher im Makro so speichern kannst, wie du das möchtest.

Gruß Daniel
AW: Per VBA Text einfügen, Makro ausführen und Tabelle speichern
10.10.2023 11:40:33
Timo
Hallo Daniel,

erst einmal vielen Dank für Deine Hilfe.

Klappt soweit sehr gut. Nur was ich nicht verstanden habe ist Punkt 4 mit dem Makro.

Mit Deinem Code funktioniert es wirklich super, dass eine neue Arbeitsmappe geöffnet, die Zwischenablage eingefügt und ein Speichern unter Fenster geöffnet wird. Wenn jetzt vor dem Öffnen des Speichern Fensters noch das Makro "Formatierung" ausgeführt werden würde, wäre es perfekt.

Aber vielleicht liegt es dann an Punkt 4 der mir nicht so klar ist?

Vielen Dank vorab und liebe Grüße
Timo
Anzeige
AW: Per VBA Text einfügen, Makro ausführen und Tabelle speichern
10.10.2023 13:22:47
Oberschlumpf
Hi Timo,

erst dein formatieren-Makro durchlaufen lassen - und dann - als XLSX-Datei speichern = erledigt....würde ich sagen.
Und du?

Ciao
Thorsten
AW: Per VBA Text einfügen, Makro ausführen und Tabelle speichern
11.10.2023 07:53:40
Timo
Hallo Oberschlumpf,

ok also müsste ich das Makro doch manuell starten.
Ich dachte man könnte es so programmieren, dass es zwischen "Zwischenablage einfügen" und "Speichern unter...." automatisch ausgeführt werden würde. So dass ich tatsächlich nur die Schaltfläche klicken muss und alles andere automatisch passiert. Natürlich am Ende noch den Dateinamen eingeben und gut.

LG Timo

AW: Per VBA Text einfügen, Makro ausführen und Tabelle speichern
11.10.2023 10:13:13
Oberschlumpf
Hi Timo,

"...kopiere ich mir Umsatzdaten und füge diese per STRG-V in eine leere Excel Datei ein, in der nur ein Makro hinterlegt ist und praktisch als Vorlage dient..."

Handelt es sich bei deiner eigtl leeren Datei wirklich um eine Vorlage = .XLTM-Datei, oder nennst du diese Datei nur "Vorlage", und es handelt sich um eine normale .XLSM-Datei?

hmm...da man abhängig davon, ob xltm oder xlsm-Datei, unterschiedlich programmieren muss, und zumindest ich keine Lust habe, beide Lösungswege zu programmieren, und schon jetzt zu wissen, dass eine Lösungsidee nicht passen wird, würde ich vorschlagen:

Zeig doch mal bitte per Upload deine leere Datei mit Makro (wenn es tatsächlich eine XLTM-Datei ist, musst du diese vor dem Upload in eine ZIP-Datei packen)

Ciao
Thorsten
Anzeige
AW: Per VBA Text einfügen, Makro ausführen und Tabelle speichern
12.10.2023 12:54:31
Timo
Hi,

sorry, wenn ich es komplizierter beschreibe, als es tatsächlich ist.
Also bisher - ohne diesen VBA Code für die Schaltfläche habe ich mir eine leere Excel Datei erstellt, in der nur das Makro zur Formatierung der Tabelle liegt.
Diese "Vorlage" heißt: Vorlage_Makro.xlsm

In diese wird meine vorher kopierten Umsätze eingefügt, Makro manuell gestartet und somit Tabelle formatiert und dann wird gespeichert.

Nun habe ich in dieser "Vorlage_Makro.xlsm" eine Schaltfläche hinterlegt, die per Klick dann folgenden Code ausführt:

Sub Schaltfläche1_Klicken()

Workbooks.Add
ActiveSheet.Paste
Application.GetSaveAsFilename

End Sub


Nach Klick wird eine neue Exceltabelle geöffnet, alles was ich in der Zwischenablage habe eingefügt und ein speichern unter Fenster geöffnet.

Und genau nach dem Einfügen der Zwischenablage (nach ActiveSheet.Paste) soll zuerst das Makro Formatierung ausgeührt werden.

Die 2 Beispieltabellen kann ich leider erst heute Abend anhängen. Mache ich direkt nach Feierabend.

Danke für die Hilfe!!

Liebe Grüße
Timo






Anzeige
AW: Per VBA Text einfügen, Makro ausführen und Tabelle speichern
12.10.2023 16:22:37
Oberschlumpf
Hi Timo,

vllt kann ich dir nun auch ohne Bsp-Datei per Upload helfen.

Änder deinen Code um wie folgt:


Sub Schaltfläche1_Klicken()
Workbooks.Add
ActiveSheet.Paste
'GENAU HIER der Name deines formatieren-Makros
Application.GetSaveAsFilename
End Sub


Wenn diese Anpassung nicht hilft, dann bitte doch per Upload deine Bsp-Datei mit allen Makros.

Ciao
Thorsten
AW: Per VBA Text einfügen, Makro ausführen und Tabelle speichern
13.10.2023 06:24:21
Timo
Hallo Thorsten,

manchmal kann es so einfach sein :)

Du bist mein Held, super es funktioniert klasse.
Das wird mir echt einige Klicks sparen und gefällt mir richtig gut.

Ganz lieben Dank für die Unterstützung und Hilfe. Ich freue mich total.

Liebe Grüße
Timo
Anzeige
büdde, büdde :-) und gerne - owT
13.10.2023 06:38:51
Oberschlumpf

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige