Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1540to1544
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

Speichern einer Tabelle per Makro

Speichern einer Tabelle per Makro
15.02.2017 09:20:08
Nephtyus
Hallo liebe VBA Gemeinde ;o).
Ich habe vor einiger Zeit angefangen mir mit Excel das leben etwas leichter zu machen, aber gerade im #BEZUG auf VBA kann ich leider noch nicht alles umsetzen was ich gerne möchte (und noch nicht alles ist sehr Wohlwollend ausgedrückt).
Auf der Suche nach Hilfe bin ich über viele Foren gestolpert und habe hier immer wieder gute Ansätze und Lösungen für meine Probleme gefunden. Jetzt stecke ich aber leider in einer Sackgasse und hoffe das mir einer helfen kann mein "Projekt" zu vollenden.
Worum es geht:
Ich habe eine Eingabemaske in EXCEL 2013 erstellt ("Eingabemaske AV") diese bearbeitet die 2 Tabelle ("Vertrag") so das ich in kürzester Zeit den Vertrag ausfüllen kann und alles was angepasst werden muß damit erledigt ist. Jetzt versuche ich aber das ich per Makro eben diesen Vertrag in Tabelle 2 Speicher kann. Da ich in der gespeicherten Datei aber nicht immer die Eingabemaske haben möchte sollte es eine neue Datei sein deren Dateiname aus einem Namen in der Maske ("BC4") und dem aktuellen Datum tt.mm.jjjj zusammen setzen. Die komplette Formatierung des gespeicherten Vertrages sollte natürlich erhalten bleiben. Als Format würde ich eine .xls bevorzugen da die Makros ja nicht kopiert werden müßen. Und die Datei sollte automatisch im Ordner der Orginaldatei liegen.
Das ist das was ich mir vorgenommen habe aber an diesem Problemchen sitze ich jetzt schon bestimmt 3 bs 4 Stunden und ich komme auch nicht wirklich weiter... Gibt es jemanden der mit dabei etwas unter die Arme greifen kann ? auch Tipps oder Anregungen sind immer gerne gesehen ;)

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

Betreff
Datum
Anwender
Anzeige
AW: Speichern einer Tabelle per Makro
15.02.2017 09:49:26
Max2
Hallo,
ich musste mal für etwas vergleichbares so ein Makro schreiben.
Unten steht der Code, Namen, Pfade, Variablen musst du allerdings noch auf
dich anpassen.
Das Makro kopiert einfach das angegebene Tabellenblatt, gibt ihm einen neuen Namen und
speichert es auf dem Desktop mit dem heutigen Datum ab.
Es Löscht auch jegliche Shape Objekte aus dem Worksheet.
Das musst evtl. rausnehmen.
Hier Code:

Sub Doku_Speichern()
Dim sh As Shape
Dim vDate As String
'Datum im Format: "JahrMonatTag" --> "20170127"
vDate = Format(Date, "YYYYMMDD") 'sonst einfach: vDate As Date; vDate = Date
Application.DisplayAlerts = False
Range("A2").Select
'Kopiere das Blatt "Doku"
Sheets("Doku").Select
Sheets("Doku").Copy
Cells.Select
Selection.Copy
'Füge die Daten ein
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Range("A2").Select
Application.CutCopyMode = False
'Speichere unter C:\User\Desktop\Doku_Kopie_Datum
ActiveWorkbook.SaveAs Filename:= _
Environ("Userprofile") & "\Desktop\Doku_Kopie_" & vDate & ".xls", _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
'Lösche die Buttons raus
For Each sh In ActiveSheet.Shapes
If TypeName(sh.OLEFormat.Object) = "Button" Then sh.delete
Next
ActiveWorkbook.Save
ActiveWorkbook.Close
Application.DisplayAlerts = True
End Sub

Anzeige
AW: Speichern einer Tabelle per Makro
15.02.2017 10:40:40
Nephtyus
Danke das ist schon fast perfekt. Nur in der neuen Datei ist die Formatierung leider auf der Strecke geblieben. Wie kann ich das Makro überreden auch die Formatierung aus der Quelldatei zu übernehmen? Vielen Dank schonmal für die super Hilfe
AW: Speichern einer Tabelle per Makro
15.02.2017 10:45:01
Nephtyus
Danke das ist schon fast perfekt. Nur in der neuen Datei ist die Formatierung leider auf der Strecke geblieben. Wie kann ich das Makro überreden auch die Formatierung aus der Quelldatei zu übernehmen? Vielen Dank schonmal für die super Hilfe
AW: Speichern einer Tabelle per Makro
15.02.2017 11:05:53
EtoPHG
Hallo Göttin des Südens,
Probier's mals so:
Sub SpeichereVertrag()
Dim sWBName As String
ThisWorkbook.Worksheets("Vertrag").UsedRange.Copy
Workbooks.Add
With ActiveWorkbook
With .Worksheets(1)
.Name = "Vertrag"
.Cells(1, 1).PasteSpecial Paste:=xlPasteValuesAndNumberFormats
.Cells(1, 1).PasteSpecial Paste:=xlPasteFormats
.Cells(1, 1).PasteSpecial Paste:=xlPasteColumnWidths
End With
Application.DisplayAlerts = False
.Worksheets(2).Delete
.Worksheets(2).Delete
Application.DisplayAlerts = True
sWBName = ThisWorkbook.Path & "\" & _
ThisWorkbook.Worksheets("Eingabemaske AV").Cells(4, 55) & _
Format(Date, "YYYY.MM.DD") & ".xlsx"
.SaveAs sWBName
.Close
End With
MsgBox "Vertrag gespeichert unter" & vbCrLf & _
sWBName, vbOKOnly + vbInformation, "Vertrag speichern"
End Sub

Anzeige
AW: Speichern einer Tabelle per Makro
15.02.2017 13:09:54
Nephtyus
Die Göttin hat sich mit dem "u" verabschiedet.
Danke für dein Makro, ich kann nicht genau sagen warum aber ich bekomme es einfach nicht zum laufen. Hab aber einige Teile davon in das Makro von max übernommen die das ganze noch besser machen aber das Problem mit der fehlenden Formatierung leider noch nicht lösen... Hat Jemand Noch Eine Idee wie ich es dazu bekomme die vorhandene Formatierung auch zu kopieren ? Soweit ich das verstanden habe sollte es ja eigentlich so schon funktionieren. Nur dummerweise weiß es das Makro wohl noch nicht ;)
AW: Speichern einer Tabelle per Makro
15.02.2017 13:36:52
Nephtyus
Die Göttin hat sich mit dem "u" verabschiedet.
Danke für dein Makro, ich kann nicht genau sagen warum aber ich bekomme es einfach nicht zum laufen. Hab aber einige Teile davon in das Makro von max übernommen die das ganze noch besser machen aber das Problem mit der fehlenden Formatierung leider noch nicht lösen... Hat Jemand Noch Eine Idee wie ich es dazu bekomme die vorhandene Formatierung auch zu kopieren ? Soweit ich das verstanden habe sollte es ja eigentlich so schon funktionieren. Nur dummerweise weiß es das Makro wohl noch nicht ;)
Anzeige
AW: Speichern einer Tabelle per Makro
15.02.2017 16:02:23
Max2
Hallo,
durch "Paste:=xlPasteFormats" werden alle Formatierungen übertragen.
Welche Formatierungen genau ändern sich denn bei dir oder sind nicht mehr vorhanden?
AW: Speichern einer Tabelle per Makro
15.02.2017 16:13:28
Nephtyus
Ich hab mir das jetzt mal genau angesehen und die Formatierung wird komplett übernommen was Zeilen und Spalten angeht. Auch die Schriftgröße usw stimmt nur die verbundenen zellen sind komplett weg was den Text recht unschön macht. Hab mal versucht etwas zur Lösung des Problems zu finden aber alles läuft auf deine Makro hinaus. Die verbundenen Zellen habe ich für den Blocksatz eingebaut.
Ich hab schon überlegt das ganze als PDF zu speichern das soll angeblich helfen. Und .xls ist jetzt kein muß
Anzeige
AW: Speichern einer Tabelle per Makro
15.02.2017 16:13:29
Nephtyus
Ich hab mir das jetzt mal genau angesehen und die Formatierung wird komplett übernommen was Zeilen und Spalten angeht. Auch die Schriftgröße usw stimmt nur die verbundenen zellen sind komplett weg was den Text recht unschön macht. Hab mal versucht etwas zur Lösung des Problems zu finden aber alles läuft auf deine Makro hinaus. Die verbundenen Zellen habe ich für den Blocksatz eingebaut.
Ich hab schon überlegt das ganze als PDF zu speichern das soll angeblich helfen. Und .xls ist jetzt kein muß

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige