Registriert seit: 12.03.2020
Version(en): 13
19.12.2020, 09:11
(Dieser Beitrag wurde zuletzt bearbeitet: 19.12.2020, 09:11 von gopper0815.)
Hallo an alle, Ich habe eine Tabelle im Arbeitsblatt "Rohdaten" in der Adressdaten von Personen stehen. Da hat jeder Wert eine eigene Zelle (also Name, Straße, Wohnort, usw). Um die nun besser sortieren und drucken zu können, fasse ich diese in einem anderen Arbeitsblatt "Auswertugn" in eine Zelle zusammen. Da diese Liste dynamisch ist, also mal kommt einer dazu, mal einer Weg, müssen sich die Inhalte in den benachbarten Zellen auf Arbeitsblatt "Auswertung" auch anpassen. So soll in den Zellen der Spalte B das Wort Betrag stehen, wenn links in Spalte A Adressdaten drinstehen. Steht in in der Zelle der Spalte A nichts, soll rechts auch in der Benachbarten Zelle der Spalte B nichts stehen. Ich hab das mal mit der WENN-Funktion probiert; also in Spalte B1steht =WENN(A1="";"";"Betrag") Er schreibt mir auch das Wort Betrag in die Zelle rein, da in A1 Adressdaten stehen. Allerdings schreibt er mir auch in B2 Betrag rein, obwohl in A2 nichts steht. Die Formel ist natürlich angepass =WENN(A2="";"";"Betrag") Ich versteh das nicht. Anbei die Tabelle mit ein paar Musterdaten. Gruß Mike
Fuwa_arbeitstabelle.xlsx (Größe: 14,84 KB / Downloads: 11)
Registriert seit: 30.09.2018
Version(en): Microsoft 365
Hi,
wenn ich mit Länge() prüfe erhalte ich 6 Zeichen/Stellen. Nur weil nichts angezeigt wird, muss die Zelle nicht leer sein (z.B. Steuerzeichen, Zeilenumbrüche).
Cadmus
Registriert seit: 12.10.2014
Version(en): 365 Insider (64 Bit)
Moin! Na ja, der Name bruch bezieht sich ja auf Tabelle3!B12, also dem Zeilenumbruch ZEICHEN(10). Deine Verkettung von Leerstrings mit 6 * bruch ergibt eine LÄNGE() von 6 und ist damit nicht ""!
Eine Möglichkeit wäre =WENN(WECHSELN(A4;ZEICHEN(10);"")="";"";"betrag")
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Registriert seit: 12.03.2020
Version(en): 13
19.12.2020, 09:47
(Dieser Beitrag wurde zuletzt bearbeitet: 19.12.2020, 09:51 von gopper0815.)
Ah, das habe ich gar nicht bedacht. Natürlich, er schreibt sozusagen trotdem den Zeilenumbruch, auch wenn keine anderen Daten mehr da sind. Vestanden. Und mit der Wechsel-Funktion klappt es nun. Gibt es da eine andere Lösung? Darum macht er mir ja auch die Zelle größer obwohl keine Adresse mehr vorhanden ist. Optimal wäre, wenn er nur was in die Zelle der Spalte A schreiben würde, wenn in der Ursprungstabelle auch was vorhanden wäre.
Überhaupt ist die ganze Geschichte auf wackeligen Füßen. Wenn jetzt z.B. Max Mustermann die Firma verlässt und die Zeile gelöscht wird, dann funktioniert die ganze Geschichte auf dem Auswertungsblatt nicht mehr. Das müsste irgendwie dynamischer gelöst werden
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
Hallöchen, eine Version 13 gibt es bei Excel nicht. Es gibt Excel 2013, das wäre die Version 15 Die Angabe 2013 wäre aber verständlicher  Zitat:Wenn jetzt z.B. Max Mustermann die Firma verlässt und die Zeile gelöscht wird, dann funktioniert die ganze Geschichte auf dem Auswertungsblatt nicht mehr. 1) tue den Mitarbeiter nicht einfach löschen - ich nehme an, Du machst das mit Zeile löschen - sondern kopiere die Daten ab eine Zeile darunter einfach eine Zeile höher und entferne dann den doppelten Eintrag unten mit ENTF. 2) Du könntest auch die Tabellendaten verwenden, müsstest aber in den Zeilen bleiben . also erst in Zeile 3 anfangen. Hier mal das Prinzip und ohne Bedingung. Die Formel erstellst Du am besten bei den Rohdaten und schneidest sie dann aus ... Arbeitsblatt mit dem Namen 'Auswertung' | | A | B | C | D | 3 | Bernd kladfai 4196 df 68 4
| betrag | | Max Mustermann 48961 |
| Name | Bezug | bruch | =Tabelle3!$B$12 |
| Zelle | Formel | A3 | =Rohdaten!A5&bruch&Rohdaten!B5&bruch&Rohdaten!C5&bruch&Rohdaten!D5&bruch&Rohdaten!F5&bruch&Rohdaten!G5&bruch&Rohdaten!I5 | B3 | =WENN(A3="";"";"betrag") | D3 | =Tabelle2[@Name]&ZEICHEN(10) & Tabelle2[@Personalnummer] |
|
Verwendete Systemkomponenten: [Windows (32-bit) NT 10.00] MS Excel 2016 | Diese Tabelle wurde mit Tab2Html (v2.6.2) erstellt. ©Gerd alias Bamberg |
3) Eventuell tust Du den Mitarbeiter nicht löschen sondern als inaktiv oder wie auch immer in einer zusätzlichen Spalte markieren. In der Auswertung musst Du dann natürlich diese Info als Bedingung mit verarbeiten. Bereinigen und eventuelle Probleme korrigieren könntest Du dann z.B. zyklisch 1x pro Jahr zum Jahreswechsel. (bevorzugt nach Methode 1) ) 4) ...
. \\\|/// Hoffe, geholfen zu haben. ( ô ô ) Grüße, André aus G in T ooO-(_)-Ooo (Excel 97-2019+365)
Registriert seit: 12.10.2014
Version(en): 365 Insider (64 Bit)
(19.12.2020, 09:47)gopper0815 schrieb: Überhaupt ist die ganze Geschichte auf wackeligen Füßen. Weise Worte, gelassen niedergeschrieben! :21: Ich frage mich ohnehin, was die Zeilenumbrüche sollen. Hat Excel nicht genügend Zeilen? Dann böte sich, wenn man denn unbedingt transponieren will, eine INDEX()-Lösung an. Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Registriert seit: 12.03.2020
Version(en): 13
Die Form muss so sein wie im Beispiel angegeben. Natürlich könnte man jeden Wert untereinander in eine Zeile schreiben, aber dann bekomme ich Probleme beim Ausdruck. Dann kann es passieren, dass mitten im Personenblock, also beispielsweise zwischen Name und Adresse eine Seitenumbruch kommt. Und ich kann ja zuvor nicht wissen wie lange die Liste ist, da sie stets variiert. Wenn man Excel sagen könnte, pack immer soundso viel Zeilen zusammen und mach zwischen diesen Zeilen nie einen Seitenumbruch, dann wäre der Textblock mit Umbruch in einer Zelle nicht nötig.
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
Hallöchen,
das ist nun aber etwas kurz gedacht ... Du kannst doch für jeden Block einheitlich z.B. 5 Zeilen vorsehen oder wieviel auch immer du brauchst. Wenn anhand Deiner Schriftgröße oder Zeilenhöhe oder warum auch immer der automatische Zeilenumbruch z.B. nach der 58. Zeile erfolgt kann man nach der 55. und 110. und ... jeweils einen manuellen setzen. Daran ändert sich ja später nix mehr ...
. \\\|/// Hoffe, geholfen zu haben. ( ô ô ) Grüße, André aus G in T ooO-(_)-Ooo (Excel 97-2019+365)
Registriert seit: 30.09.2018
Version(en): Microsoft 365
Hallo, in welcher Form soll der Ausdruck erfolgen? Das sieht für mich nach Rechnungen oder Etiketten aus. Das würde ich mit Word als Serienbrief machen. Excel stellt dann nur die Daten bereit.
Cadmus
Registriert seit: 12.03.2020
Version(en): 13
19.12.2020, 18:21
(Dieser Beitrag wurde zuletzt bearbeitet: 19.12.2020, 18:21 von gopper0815.)
Ich erklär euch mal die Problemstellung die ich habe. Vielleicht hat ja jemand eine passende Lösung. Das Endresultat muss so aussehen wie in der Beispieldatei beim Arbeitsblatt Auswertung. Das alles muss in Excel geschehen. Andere Programme sind nicht vorgesehen. Die Personen müssen nach dem Alphabet sortierbar sein. Die Ursprungsdatei sah so aus, dass die Daten wie im Auswertungsblatt angeordnet waren. Also untereinander jeden Wert in einer eigenen Zeile. Dadurch konnte man allerdings nicht alphabetisch sortieren und wenn ein Mitarbeiter rausgenommen werden musste, mußte die Tabelle umständlich neu angeordnet werden (Zeilen löschen, den Rest hochziehen und dann aben die Druckmarkierungen oft nicht mehr gepasst).
Meine Idee war nun, die Mitarbeiter in einer Tabelle wie im Blatt "Rohdaten" mit den dazugehörigen Daten nebeneinander aufzulisten. Dort könnte man bequem alles bearbeiten und auch alphabetisch sortieren. Dann sollte diese Liste in das entsprechende Format im Blatt Auswertung für den Audruck aufbereitet werden.
Wenn ich die Möglichkeit hätte, würde ich so etwas eher in Access realisieren weil es eigentlich eine astreine Datenbankaufgabe ist, aber mir steht nur Excel zur Verfügung.
Also alphabetische sortierbarkeit und die Form sind notwendig.
|