Excel Datei umbenennen nach Inhalt der Zelle?

Mein Beispiel - (Name, Microsoft Excel, Datei)

5 Antworten

Datei -> Speichern Unter -> (ordner suchen und unter 11.01.2017 10:22 Esel.xls eingeben) -> speichen

mfg Shadow

Die Vorlage ist vergleichsweise leicht erklärt:

auf "Datei" klicken

auf "Speichern unter" klicken

Dateityp "Vorlage" (ggf. "Mustervorlage", "Excel-Vorlage" o. ä. genannt) auswählen

Weiter wie beim normalen Speichern

Beim Öffnen einer Vorlage erstellt Excel automatisch eine Kopie der Vorlage als neue Arbeitsmappe.

-----

Ein Makro Schritt für Schritt zu erklären dauert länger. Ich kann das leider nicht von hier aus machen, weil ich hier nur eine Uralt-Version von Excel habe. 

-----

Übrigens würde ich für chronologische Sortierung auch das Datum-Uhrzeit-Format YYYY-MM-DD_HH.SS empfehlen.

(Doppelpunkt im Dateinamen geht unter Windows schief)

Also für einen Steinzeitmenschen: a) Ugh. b) Urargh! ;-)

Nein im Ernst:

  1. Ja, Du brauchst VBA. In Excel müssen dazu die "Entwicklertools" aktiviert sein, damit alles weitere passiert. Wenn Du die oben im "Menüband" nicht siehst, geh erstmal auf "Datei" - "Optionen" - "Menüband anpassen" und rechts "Hauptregisterkarten" den Haken bei "Entwicklertools"
  2. Deine Datei nehmen wir als Vorlage. Mach irgendwo ein bisschen Platz für einen kleinen Button ("Schaltfläche")
  3. Gehe auf Entwicklertools -> Einfügen -> Schaltfläche (erstes Icon) und "zeichne" den Button an die vorgesehene Stelle
  4. Es ploppt das Dialogfenster "Makro zuweisen" auf. Klicke rechts daneben auf "Neu"
  5. Der VBA-Editor geht auf. Kopiere folgenden Text zwischen "Sub Schaltfläche_Klicken" und "End Sub" (das ist Dein Makro-Code, der ausgeführt wird, wenn Du später den Button klickst)
myfilename = Format(Range("A3"), "YY-MM-DD") & " " & Format(Range("B3"), "hh.mm") & " " & Range("C3").Value
ActiveWorkbook.SaveAs Filename:=myfilename & ".xlsm", FileFormat:=52

Dann kannst Du Deinen neuen VBA-Button mal ausprobieren, Steinzeit-Hacker! :-)

Er speichert Deine aktive Datei im gleichen Ordner wie die Vorlage unter (nahezu) Deinem gewünschten Format. Das Datumsformat hab ich auf "2017-01-10" (statt 10.01.2017) geändert, weil es sich besser chronologisch ordnen lässt, aber das kannst Du auch wieder zurückändern, wenn Du in der ersten Zeile "YY-MM-DD" durch "DD-MM-YY" ersetzt. Die Uhrzeit ist durch einen Punkt statt Doppelpunkt getrewnnt, weil Windows keine Doppelpunkte im Dateinamen mag. Die Dateiendung ist "xlsm" statt "xlsx", weil die Datei ja eben unser Makro ("m") enthält, aber das tut der Sache keinen Abbruch.

Funktioniert? :-)

Entwicklertools - (Name, Microsoft Excel, Datei) Success! - (Name, Microsoft Excel, Datei) Neues Makro - (Name, Microsoft Excel, Datei) Code - (Name, Microsoft Excel, Datei)
Twitizen  11.01.2017, 12:17

Kleine Korrektur: Es müsste "YYYY" (=2017) heißen, nicht "YY" (=17)!

0

Hallo,

ich weiß, das ist nicht die Antwort, die du dir erhoffst, aber es bekanntlich keinen Zweck einem Elefanten das Fliegen beizubringen... Mit anderen Worten, es bringt dir nichts, dir einfach ein Makro vorzusetzen, dass du aber selbst nicht verstehst.

Zumal du mit deiner Schilderung nicht gerade den Eindruck erweckst, überhaupt ein Interesse zu haben, es zu verstehen... du willst einfach nur etwas fertiges, dass du nehmen kannst.

Nun, wenn man sich mit etwas nicht beschäftigen will, sondern ein fertiges Ergebnis haben will, kann man Menschen dafür bezahlen, einem ein Programm zu schreiben. Wenn du dich selbst etwas mit der Thematik beschäftigst und dann irgendwo nicht weiterkommst, helfen hier sicher einige gern weiter.

Davon abgesehen bin ich der Ansicht, dass das hier überhaupt nicht nötig ist. Vom reinen Aufbau auf deinem Bild schließe ich, dass Kundentelefonate dokumentiert werden sollen.

Das kann man in einer einzigen Datei lösen. Alle Informationen werden pro Fall in diversen Spalten, aber eben in einer Zeile erfasst. Der Betreff gehört also hier z.B.: in Spalte H.

Den nächsten Fall trägst du jeweils unten drunter ein. Über die Filterfunktion kannst du nach Kunden, Datum oder was auch immer filtern und den jeweiligen Eintrag, den du suchst anzeigen.

Da Excel über 1 Million Zeilen hat, wirst du vermutlich nicht so schnell an die Grenzen kommen. Willst du nun wiederum Statistiken führen zu bestimmten Firmen oder monatsweise, kann man dies in einer separaten Tabelle machen mittels diversen Funktionen wie Zählenwenn, Summewenn, Summenprodukt, Sverweis oder Index (um nur einige der häufigsten zu nennen).

LG, Chris

Twitizen  11.01.2017, 12:16

Das ist die wohl am wenigsten hilfreiche Antwort ever. GF ist eine Frageplattform und nicht Stackoverflow. Einen VBA-Zweizeiler zu erfragen ist völlig legitim, ohne gleich Programmieren lernen zu wollen.

Und Deine alternative "Lösung" für ein "nicht nötiges" Problem scheitert spätestens dann, wenn der/die Fragesteller(in) eine Datei per Mail verschicken will, in der NICHT alle anderen Gespräche drin stehen (Datenschutz und so).

Warum also erst den anderen von oben herab rund machen und dann was möglicherweise Falsches als Lösung anbieten, wenn die korrekte Lösung eine Viertelstunde dauert?

0
Funfroc  11.01.2017, 15:14
@Twitizen

Wenn das die am wenigsten hilfreiche Antweort EVER war, hast du dich auf GF noch nicht besonders viel umgesehen.

Mir ging es hauptsächlich darum, dass ich nicht den Eindruck habe, dass hier jemand bereit ist sich mit dem Thema zu beschäftigen, sondern einfach nur will, dass andere seine Arbeit machen.

Dass ist das gleiche, wie wenn die Kiddies hier immer nach Antworten für Ihre Hausaufgaben fragen.

Den VBA-Zweizeiler hat er/sie übrigens schon von Ninombre vor 7 Wochen bekommen. Als ich noch keinen Plan von VBA hatte, habe ich es geschafft in wenigen Sekunden zu googeln, wie ich solch einen gegebenen Zweizeiler verwende.

Ich halte meine Lösung übrigens weiterhin für sinnvoll, weil

- zum einen war von Versenden noch keine Rede

- Versenden problemlos auch über VBA machen kann. Da muss ich nicht hunderte Dateien anlegen, um diese einzeln verschicken zu können. Das wäre schon von den Ressourcen her nicht sinnig.

Und noch eine Bemerkung für den Fragesteller (Info aus der November-Frage): Wenn der Chef etwas vom Mitarbeiter will, dass nicht den Fähigkeiten des Mitarbeiters entspricht, hat er Möglichkeiten.

1. Jemanden angagieren, der die entsprechenden Fähigkeiten hat.

2. Dem Mitarbeiter einen Lehrgang spendieren, damit er die Fähigkeiten erlernt.

Und ggf. 3. die umständliche Arbeitsweise beibehalten, wenn er sich zu fein ist, für die Vereinfachung Geld in die Hand zu nehmen.

So, genug aufgeregt. Natürlich ist deine Lösung richtig.

1
Twitizen  12.01.2017, 09:50
@Funfroc

Mir ging es hauptsächlich darum, dass ich nicht den Eindruck habe, dass hier jemand bereit ist sich mit dem Thema zu beschäftigen, sondern einfach nur will, dass andere seine Arbeit machen.

Seinem Profil nach zu urteilen ist er Maler/Lackierer und kein IT-Mensch. Sein Chef hat ihm was aufgedrückt, und er muss es ausbaden. Man kann dem Chef Vorwürfe machen, aber sicher nicht ihm, dass er unwillig sei.

Den VBA-Zweizeiler hat er/sie übrigens schon von Ninombre vor 7 Wochen bekommen.

Der damalige Zweizeiler war aber an mehreren Punkten falsch bzw. nicht anwendbar. Wenn man dann keinen Plan von der Materie hat, findet man auch keinen helfenden Lösungsansatz im Netz - und auf die Rückfragen hat Ninombre nicht mehr geantwortet.

Ich halte meine Lösung übrigens weiterhin für sinnvoll, weil
- zum einen war von Versenden noch keine Rede
- Versenden problemlos auch über VBA machen kann.

So lange wir beide keine weiteren Anforderungen kennen, sollten wir uns auf eine Lösung fokussieren, die der Frage entspricht, alles andere ist Spekulation und im Zweifelsfall gut gemeint, aber schlecht gemacht.

0

Du musst die Regeln für Sonderzeichen in Dateinamen beachten.
Z.B. ein Doppelpunkt im Dateinamen funktioniert nicht.