Thema: Namenszuweisung beim speichern?


Seite durchsuchen:
Home


zurück zur Übersicht

Diskussionsgruppe: Tabellenkalkulation

Hallo liebe Excelgemeinde,

ich habe folgenden VBA Code um die Datei mit bestimmten Namen in einem bestimmten Pfad abzulegen. (auch hier erhalten)

Sub Datei_speichern()
On Error GoTo ERRORHANDLER
Dim Nachname_Vorname, Datum
Pfad = ActiveWorkbook.Path
SubPfad = Right(Pfad, 8)
If SubPfad = "_vorlage" Then
Length = Len(Pfad)
Pfad = Left(Pfad, Length - 9)
End If
Nachname_Vorname = Split(Range("J3"), ", ")
Datum = Split(Range("J5"), ".")
ActiveWorkbook.SaveAs Pfad & "\" & Nachname_Vorname(0) _
& "_" & Nachname_Vorname(1) & "_" & Datum(2) & "-" _
& Datum(1) & "-" & Datum(0) & ".xls"
ERRORHANDLER:
End Sub

Nun würde ich hier gerne noch den Dateinamen um den Inhalt einer Zelle erweitern.

Ich hoffe mir kann hier wieder geholfen werden.

Gruß, mac_d

Von: mac_d Datum: 17.01.2007, 13:34

alle Antworten zu dieser Frage




Antwort 1 von Beverly vom 17.01.2007, 14:48
Hi,

z.B. in dieser Form

ActiveWorkbook.SaveAs Pfad & "\" & Nachname_Vorname(0) _
& "_" & Nachname_Vorname(1) & "_" & Datum(2) & "-" _
& Datum(1) & "-" & Datum(0) & Worksheets("Tabelle1").Range("A1") & ".xls"
Application.EnableEvents = True


Bis später,
Karin

Antwort 2 von Beverly vom 17.01.2007, 14:51
Hi,

sorry, die letzte Zeile Application.EnableEvents = True muss weg (Beitrag lässt sich leider nicht mehr editieren), die habe ich versehentlich mitkopiert.

Bis später,
Karin

Antwort 3 von mac_d vom 17.01.2007, 15:04
Super, funktioniert einwandfrei!!

Vielen Dank!

Gruß, mac_d

Antwort 4 von mac_d vom 17.01.2007, 15:43
Hallo,

jetzt habe ich "natürlich" noch ein Folgeproblem:

Dadurch entstehen zwei Dateien.
Nachname_Vorname_28.06.2007_in Arbeit
und
Nachname_Vorname_28.06.2007_Fertig

Gibt es eine Möglichkeit wenn im betreffenden Feld "Fertig" steht die alte Datei "in Arbeit" dann direkt zu löschen?

Liegen im selben Verzeichnis!

Bin sehr dankbar für Eure Vorschläge!

Gruß, mac_d

Antwort 5 von Beverly vom 17.01.2007, 19:44
Hi,

als allgemeiner Code

Kill "C:\Excel_Test\Mappe8.xls"

Beachte aber, dass die Datei geschlossen sein muss und dass sie nicht in den Papierkorb wandert.

Bis später,
Karin

Antwort 6 von mac_d vom 18.01.2007, 07:42
Vielen Dank für die Antwort, nur wird der Name ja ständig geändert (Datumseintrag im Namen). Also weis ich nicht vorher wann sie "Fertig" ist.

Die Datei, die gelöscht werden muss, muss die sein die als "fertig" gespeichert wurde und vorher anstatt "fertig" den Zusatz "in Arbeit" hatte.

Ich hoffe ich habe mich verständlich ausgedrückt. (Ist manchmal garnicht einfach ein Problem zu erklären ;-))

Gruß, mac_d

Antwort 7 von Beverly vom 18.01.2007, 16:17
Hi,

du setzt doch den Namen der als "Fertig" zu speichernden Arbeitsmappe aus Werten in deiner Tabelle zusammen - also kannst du aus den selben Zellen auch auslesen, wie die zwischengespeicherte Arbeitsmappe heißt. Oder habe ich da was falsch verstanden?

Bis später,
Karin

Antwort 8 von mac_d vom 19.01.2007, 06:28
Hallo,

aber wie baue ich das in diesen Killbefehl anständig ein?

Und kann ich das einfach so an den anderen Code dranhängen?

Vielen Dank für deine Geduld und Hilfe!

Gruß, mac_d

Antwort 9 von Beverly vom 19.01.2007, 14:58
Hi,

das sollte eigentlich so funktionieren

Kill Pfad & "\" & Nachname_Vorname(0) _
& "_" & Nachname_Vorname(1) & "_" & Datum(2) & "-" _
& Datum(1) & "-" & Datum(0) & Worksheets("Tabelle1").Range("A1") & ".xls"


Oder du deklarierst eine String-Variable, falls der obige Code nicht funktioniert (kann es nicht testen, da ich deinen Tabellenaufbau nicht kenne)

Deine_Variable = Pfad & "\" & Nachname_Vorname(0) _
& "_" & Nachname_Vorname(1) & "_" & Datum(2) & "-" _
& Datum(1) & "-" & Datum(0) & Worksheets("Tabelle1").Range("A1") & ".xls"
Kill Deine_Variable


Du kannst den Code nach dem Befehl zum Speichern der endgültigen Fassung deiner Mappe einfügen.

Bis später,
Karin

Antworten der Gruppe: Tabellenkalkulation
www.supportnet.de







Office 365 stellt vertraute Microsoft Office-Tools für die Zusammenarbeit und Produktivität über die Cloud bereit. So können alle ganz einfach von nahezu überall zusammenarbeiten und auf E-Mails, Webkonferenzen, Dokumente und Kalender zugreifen.

07101 07102 07103 07104 07105 07106 07107