Das beste Beispiel kommt aus der Gastronomie: da hat es einmal am Wochenende eine Hochzeit und die Bedienungen müssen nach 8 Stunden Schlussmachen. Sagen wir die Trauung findet um 13:00 Uhr statt. Bis die Gäste in der Gastro eintreffen wird es mindestens 14:00 Uhr. Irgendwann müssen die Tische gedeckt werden. Also Beginn für die Bedienungen so um 13:00 Uhr. Dann dürfen sie 8 Std arbeiten und müssen um 21:00 Uhr nach Hause gehen. Egal, ob sie wollen oder nicht. Alternativ kann der Wirt eine zweite Schicht holen, die er dann den Hochzeitern halt in Rechnung stellen muss. Wirklich gekniffen sind die Hochzeiter. Die Bedienungen können es sich eh raussuchen, denn wenn sie das nicht wollen, arbeiten sie für die Gastro eben nicht.
Das sieht auf den ersten Blick nach VBA-Funktionen aus. Die gibt es aber nicht in Deutsch. Dann bleibt eigentlich nur die Möglichkeit, dass es Befehle der schon lange veraltete XLM-Makroprogrammiersprache sind.
Ich habe damit mal ein komplettes Lagerverwaltungsprogramm für eine Schreinerei geschrieben. Ewigkeiten her. Ist immer noch in Excel eingebaut, aber ich denke, dass niemand mehr damit programmiert. Oder gar Hilfe geben könnte.
An was ich mich erinnere: zu der Zeit (um 1988) war es ziemlich revolutionär, denn was es vorher gab (in Multiplan und Lotus 1-2-3) war, dass man automatisiert Tastenanschläge ablaufen lassen konnte. Auch damit haben die Leute durchaus beachtliche Programme zusammengezimmert. Die XLM-Sprache hatte alle Elemente einer modernen Programmiersprache: Variablen (eigentlich Namen in XL), Schleifen, Verzweigungen, alle denkbaren Operatoren, Unterprogramme, etc. Man konnte eigene Funktionsmakros schreiben (sehr praktisch - ich habe u.a. einen Wandler von Zahl zu Text, wie "fünfhundertvierungzwanzig" gebaut). Für Dialoge/Formulare gab es ein kleines Progrämmchen, den Excel Dialog-Editor, womit man die grafisch zusammenstellen konnte (und hinterher doch noch mal numerisch angepasst hat). Der ExcelDE läuft auch heute noch und kann Dialoge für Datenmasken einer Datenbank bauen, die hat dann halt nur Labels und Eingabefelder, OK und Abbrechen haben.
Hier ein altes Makro, das ich zum Versenden von Mails verwendete
Test (Strg-y)
=FÜR.ZELLE("Name";Namen)
= SENDEN.TASTEN(Name&"{tab 2}
= NACHRICHT.SENDEN(;;WAHR)
=WEITER()
=RÜCKSPRUNG()
Oder ein komplexeres wo es ums Protokollieren von Fehlern ging. Da müsste ich heute schon lange nachdenken, wie das alles funktioniert hat. Sagen kann ich das war ein Unterprogramm das zwei Argumente hatte 1) die Meldung und 2) die Datei wo das hingeschrieben wurde. Und wenn die Datei nicht vorhanden war, hat er sie angelegt.
Error protokoller
=ARGUMENT("Message")
=ARGUMENT("Log_Datei")
=WENN(ISTNV(Log_Datei);NAMEN.ZUWEISEN("Log_Datei";"errorlog.xls"))
=FEHLER()
=FEHLER(FALSCH)
=WENN(NICHT(ISTFEHLER(VERGLEICH("errorlog.xls";DATEIEN();0))))
= NAMEN.ZUWEISEN("errordatei";DÖFFNEN("errorlog.xls";1))
= DPOS(errordatei;DGRÖSSE(errordatei)+1)
=SONST()
= NAMEN.ZUWEISEN("errordatei";DÖFFNEN("errorlog.xls";3))
=ENDE.WENN()
=DSCHREIBEN.ZEILE(errordatei;Message)
=DSCHLIESSEN(errordatei)
=FEHLER(A5)
=RÜCKSPRUNG(ODER(ISTFEHLER(A13);ISTFEHLER(A9);ISTFEHLER(A14);ISTFEHLER(errordatei)))
Mir fällt da einiges ein
- eine ganze Zeile markieren geht mit Umschalt-Leertaste (Strg-Leer wäre die Spalte). Womöglich reicht das schon und braucht keine farbliche Markierung
- Um Werte in zwei Spalten zu vergleichen könnte man auch die dazwischenliegenden Spalten ausblenden. Dann steht alles nebeneinander. Um es wieder einzublenden die Spalten G bis S markieren und Rechtsklick und einblenden.
- Oder man lässt die Arbeit die Maschine machen. Wenn es nur ein Vergleich von Werten ist, könnte in eine neue Hilfsspalte eine Formel wie =G27=S27 eingegeben werden. Gibt dann wahr oder falsch, je nachdem wie es passt.
- ein bisschen Rumspielen mit Tastaturkürzeln könnte auch helfen. Strg-links / rechts hüpft an den jeweiligen Rand. Gibt noch zig mehr.
- Oder die Aktion in 2 oben einmal machen und den Makrorekorder mitlaufen lassen. Gibt dann zwei Makros, die das Aus- und Einblenden automatisieren. Tastaturkürzel drauf und schon flutscht das.
Der gute alte Command-Prompt kann das auch
oder simpler gleich
Freu dich, genieß es und sei stolz darauf, was du "draufhast". Biete anderen deine Hilfe an, wenn du meinst, dass es helfen könnte, aber werde nicht aufdringlich.
In der Anfangszeit von Excel so um 1988 / 89 hatte Jochen Haink bei Microsoft die kompletten Vertriebsdaten in Excel geführt. Er hatte Modelle, die damals die ganze Nacht zum Berechnen brauchten. Auf dem damals neuesten CPU (80386) mit Co-Prozessor. Er wusste, was er weiß und was er nicht weiß. Ich habe damals Excel-Support gemacht und hatte ähnlich motivierte Kämpfer am Telefon. Es war mir eine Freude und Challenge deren Probleme zu lösen.
Man kann extrem viel mit Excel machen. Wobei die kreativsten Ideen von den Anwendern selbst kommen. Ich setze es selbst immer wieder gerne ein, wobei das wenigste wirklich Kalkulation ist. ...muss Schluss machen
Wenn der Originalautor noch greifbar ist, wäre es das einfachste die dort kleiner ausgeben zu lassen. Dazu finden sich leicht Tipps, wie das geht. Z.B. hier:
https://community.adobe.com/t5/indesign-discussions/how-to-export-a-smaller-pdf-file-size-in-indesign-without-compromising-quality/m-p/14869629
Scheitert es daran könnte ein Option sein die Datei in Word zu laden und dort in den Speichern Unter Optionen "Minimale Größe" zu wählen. Wobei es durchaus möglich ist, dass es Design verzieht.
Ich vermute mal es gibt einen guten Grund, warum die Daten den Umweg über Excel nehmen sollen. Ansonsten könnten sie ja - wie schon erwähnt - einfach als Textdatei bearbeitet werden.
Ein paar Basics wie man Excel Text beibringt.
Beim Import etwa über Zwischenablage die Telefonspalte vorher ausdrücklich als Text festlegen.
Evtl. braucht es die verschärfte Variante, dass nur reiner Text importiert wird (kommt auf einen Versuch an). Im Notfall aus CRM Programm kopieren, einfügen in Notepad / Editor und von dort gleich wieder kopieren, dann ist in der Zwischenablage nur Textformat vorhanden.
Soll eine Telefonnummer bei der Eingabe Text bleiben, dann ein ' (einzelnes Anführungszeichen) davor eintippen. Das Anführungszeichen landet nicht im CSV-Export.
Wenn die Daten schon verhunzt sind (aus welchen Gründen auch immer) könnte es notwendig werden das führende + per Textoperator dranzuhängen. Etwa in der Form
="+" & a1
Soll es ein regelmäßiger Job werden wäre vielleicht ein paar Zeilen VBA Code hilfreich. Wobei es oft reicht ein Funktionsmakro zu schreiben, das alle bekannten Merkwürdigkeiten rausputzt.
Bitte noch beachten, dass Excel bei deutscher Ländereinstellung als Trennzeichen in der CSV-Datei den Strichpunkt verwendet. Im Format TAB ist es der Tabulator. Hier muss man schaun, was der Import kann und/oder haben will. Sonst (worst case): die Datei im Editor laden und Strichpunkt (oder Tab) durch Komma ersetzen. Alternativ (nicht gerade elegant): englische Ländereinstellung verwenden.
Zeichensatz (ANSI oder Unicode) könnte auch noch ein Thema sein. Aber da warten wir mal einfacher die Gegebenheiten und Erfahrungen ab.
Früher hieß das Home Use Programm. Sehe gerade, sie haben das Kind mal wieder umgetauft, aber der Begriff lässt sich noch finden.
Microsoft Home Use Program: Bestellverlauf abrufen – Microsoft Store
Dass der Arbeitgeber sieht welche Dateien oder gar welche Dateiinhalte damit verarbeitet werden ist eine so abwegige Verschwörungstheorie, dass ich bezweifle, dass es dazu überhaupt eine oder schon gar keine sinnige Antwort darauf gibt.
Was niemand daran hindern sollte sich durch die Online Services Terms durch zu arbeiten
https://news.microsoft.com/de-de/einfuehrung-von-mehr-datenschutztransparenz-fuer-unsere-kommerziellen-cloud-kunden/
Spende ist Spende. Wenn es was anderes werden sollte, dann muss man es umbenennen. Den Gedanke zur Zwangsspende find ich absolut krank. Egal für/von wen/wem.
Ich spende an unterschiedliche Organisationen und Initiativen. Am liebsten dort, wo das Geld direkt ankommt. Für Misereor, Brot für die Welt, Unicef und Greenpeace habe ich mal gespendet. Ist unterschiedlich lange her. Heute sind die linken und woken Shitholes auf meiner geistigen Blockliste.
Die Lösungen über Hilfsspalten wären schon nicht die schlechtesten.
Es geht auch eine Matrixformel, die es auf einmal ausrechnet. Hier z.B. für den Januar
Und die Eingabe mit Strg-Eingabe abschließen. Zur Bestätigung setzt Excel das alles in geschweifte Klammern.
Am saubersten und elegantesten macht das eine Pivottabelle. Beispiel dafür sind in der Hilfe zu finden.
Ergänzend zu dem, was schon gesagt wurde: wollte man sich in das Thema vertiefen gibt es eine wahre Flut von Informationsquellen und Normen. Man könnte es einfach halten und die Frage stellen, was ist beim Adressaten einfacher zu lesen und aufzunehmen. Da wäre meine Meinung ohne führende Null. Denke aber, andere werden das anders sehen.
Was in der Praxis häufiger vorkommt, ist das falsche Zeittrennzeichen. Gerne genommen wird der Punkt bei Zeitangaben. Richtig wäre der Doppelpunkt. Steht so in einer DIN (die ich jetzt nicht nachschlage). Und wo will es auch Excel haben, sonst wir die ganze Rechnerei mit Zeit nix.
Sieht nach klassischem Einsatzzweck von bereich.verschieben() aus. Sorry in Englisch ist das mit offset kürzer. Die Argumente
- Ausgangsbezug
- Verschieben um Zeilen
- dto um Spalten
- (optional) Höhe
- und Breite
Das Ergebnis ist dann wieder ein Bezug. Ergo auch der Inhalt des Bezugs
In deine Problemstellung mag ich mich jetzt nicht eindenken. Denke das ist hinzukriegen. Viel Erfolg.
Der Stiefvater könnte das Office im Rahmen von Home Use Programm haben. Sprich der Arbeitgeber hat eine Massenlizenz für alle oder viele Mitarbeitern und da ist für die Mitarbeiter eine "Home Use" Lizenz dabei.
Kostenlos wären die ganze Web-Versionen der Office-Apps. Die leisten schon einiges und könnten für die meisten Zwecke ausreichen. Anmelden über home.live.com. Kann auch sein, dass du schon über OneDrive oder so angemeldet bist.
Hab auch keine Erfahrung mit PowerAutomate. Vielleicht eine Idee wie man es angehen könnte.
- An die Stellen, wo was was eingetragen werden soll Platzhalter eintragen. Sagen wir xxxx für Name. Usf.
- die XL-Datei im SLK-Format speichern. Das ist reines Textformat und lässt sich evtl. einfacher bearbeiten. Dann das xxxx durch den passenden Namen ersetzen und wieder speichern. Evtl. unter neuen Namen.
Braucht in der Form überhaupt kein Excel. Das braucht es erst wieder zum Drucken oder was Berechnen.
Auf die Frage geht das: natürlich geht es. Ist aus meiner Sicht aber viel zu komplex, um es hier zu erklären. Und wie schon gesagt, am ehesten noch mit VBA Programmierung zu erreichen.
Was anderes fällt mir aber auf: da sind für jede Kalenderwoche Blätter angelegt. Das ist aus vielerlei Hinsicht problematisch: eEs macht das Arbeiten nicht einfach(er), erschwert jegliche Konsolidierung und Auswertung der Daten. In kurz: nutzlose Arbeitsbeschaffung.
Günstiger ist die Normalisierung der Daten. Also eine einfach aufgebaute Tabelle in der ALLE Daten in langer Reihe drinstehen. Hier etwa
Datum
KW
Typ (Bauvorhaben | Urlaug | Krank)
von
bis
Pause
RB Nr.
vielleicht ergeben sich weitere.
Das, was du dann haben willst, sind Auswertungen nach unterschiedlichsten Kriterien, etwa "zeig mir Kalenderwoche 2" oder "was war an Donnerstagen los" oder "wie oft Urlaub". In der Praxis sind da noch viel mehr denkbar und werden auch so gebraucht. Schau dir dazu mal in der Hilfe die Pivot-Tabellen an und spiel vielleicht mit einem einfachen Modell etwas rum. Die Zeit für die Spielerei holst du auf längere Zeit locker wieder rein.
Wenn ich das richtig sehe, ist das eine zweistufige Aufgabe
- ermitteln wie viele Stockwerke ein gegebenes Gebäude hat. Das könnte eine Tabelle liefern, in der die Stockwerke stehen und etwa mit Verweis() rausgeholt werden. Ergebnis ist eine Zahl
- das DG wäre dann die oben ermittelte Zahl plus 1.
Sprich die eigentliche Arbeit steckt in der erste Übung.
Man hat an der Stelle drei Maße
- Die gesamte zur Verfügung stehende Breite - meist Din A4, also 21 cm
- Die Seitenränder gehen davon ab - ebenfalls in cm. Sind Eigenschaften der Datei und dort gespeichert
- Die Differenz aus den beiden gibt dann den verfügbaren Druckplatz
Es wäre normal (zu erwarten), dass der Ausdruck auf unterschiedlichen Druckern unterschiedlich rauskommt, da Excel nach Möglichkeit druckerinterne Schriften verwendet. Die können unterschiedliche Laufweiten bei den einzelnen Zeichen haben.
Abhilfen, die mir einfallen:
In der Vorschauanzeige die Seitenränder anzeigen lassen (Symbol rechts unten, zweites von links) und eine Spalte oder einen Seitenrand etwas verschieben, damit die nicht so extrem auf Kante genäht sind.
Testweise eine andere Schriftart verwenden, die sicher nicht im Drucker vorhanden ist - also vom System erst in den Drucker geladen werden muss.
BTW: das erklärt die Unterschiede in der Breite. Wo die in der Höhe herkommen ist mir auch schleierhaft.
Noch ein Ansatz mit VBA Funktionsmakro. Einsatz:
=car(a1; " ")
https://www.gutefrage.net/frage/wie-kann-ich-aus-einer-liste-in-excel-mit-leads-alle-nutzernamen-haben-alle-ein--herausfiltern#answer-501551313
Evtl. hilft dieser Beitrag. Anfangs ein bisschen Aufwand. Dann universell anpassbar.
Wie kann ich aus einer Liste in Excel mit leads alle Nutzernamen (haben alle ein @) herausfiltern? (Microsoft Excel, Excel-Formel, Excel Liste) - gutefrage
Ich wage zu bezweifeln, ob sich sowas finden lässt. Ausgeschlossen ist es aber nicht.
Als viel spannendere Frage sollte doch sein: wenn es in einer alten Version kein "Verketten textkette und Textverketten" gibt, wie kriege ich da das gleiche Ergebnis mit Bordmitteln hin? Eigentlich tut es hier ein simpler &-Operator. Vielleicht ein paarmal wiederholt. Und wenn es wirklich spannend wird hilft, ein kleines VBA Functionsmakro.
Meinung dazu?