13.07.2018, 10:16 (Dieser Beitrag wurde zuletzt bearbeitet: 13.07.2018, 10:16 von Pirmi.)
Guten Morgen zusammen,
ich konnte leider nicht das finden, was ich suche. Nach einigen Stunden reicht es mir dann jetzt :19: Mit SVerweis kam ich auch nicht zur Lösung, oder ich mache da was falsch.
Also: Ich habe eine Tabelle, in Zelle B1 (verbunden bis D1) ist eine Dropdownliste mit Kundennamen. Wenn ich jetzt Kunde X auswähle, soll darunter in Zelle B2 (verbunden bis G2) automatisch das dazugehörige Land ergänzt werden.
Genauso wenn ich in H29 (verbunden bis I30) aus der hinterlegten Dropdown-Liste den Sachbearbeiter auswähle, soll in Zelle I33 (verbunden bis J34) sein Kürzel ergänzt werden. EDIT: Richtig schön wäre, wenn beides vollkommen automatisch vorausgefüllt wird, je nachdem, welcher Benutzer die Vorlage öffnet. ob sowas überhaupt möglich ist? Es haben (logischerweise) mehrere Benutzer Zugriff bzw. mehrere Benutzer müssen diese Vorlage benutzen.
Und, wenn ich schon dabei bin...ich hatte zunächst Kontrollkästchen für JA und NEIN eingefügt und ein Makro gefunden, um diese innerhalb der Zelle zu zentrieren. Dieses Makro läuft jetzt auch noch im Hintergrund. Da es aber so gesteuert werden soll, dass man nur JA oder NEIN wählen kann, musste ich leider auf Optionsfelder umsteigen. Leider deswegen, weil mir die Kontrollkästchen eigentlich besser gefielen. Kann man da eigentlich irgendwie das Aussehen mittlerweile auch anpassen? Habe nur etwas zu älteren Versionen gefunden, bei denen es nicht möglich war. Könnte mir da vielleicht auch jemand das Makro ändern, so dass die Optionsfelder automatisch zentriert werden?
Im Anhang ist die Datei in anonymisierter Version.
Sorry, ich finde nichts zum Editieren meines Beitrages. Dann halt so...
Mir ist noch etwas eingefallen: Es passiert ja mal ganz schnell, dass man eine Datei abspeichert, ohne den Namen zu ändern. Soll heißen, dass man eine Vorlage mit Daten überschreibt, die aber in der Vorlage selbst nicht auftauchen sollen. Ich werde mir zwar auch noch eine Sicherungskopie lokal abspeichern, aber es wäre angenehmer, wenn man von vornherein verhindern kann, dass die Datei mit dem gleichen Namen überschrieben wird. Ich möchte also gerne, dass man die bearbeitete Datei nur dann abspeichern kann, wenn man einen anderen Dateinamen angibt.
Wäre super, wenn dafür auch jemand eine Lösung hätte.
(13.07.2018, 13:27)Pirmi schrieb: Sorry, ich finde nichts zum Editieren meines Beitrages. Dann halt so...
Mir ist noch etwas eingefallen: Es passiert ja mal ganz schnell, dass man eine Datei abspeichert, ohne den Namen zu ändern. Soll heißen, dass man eine Vorlage mit Daten überschreibt, die aber in der Vorlage selbst nicht auftauchen sollen. ...
Hallo, das passiert nicht, wenn man mit Vorlagen arbeitet...!!!
Gruß Jörg stolzes Mitglied im ----Excel-Verein Freund einer excellenten Power Query-Abfrage
13.07.2018, 17:36 (Dieser Beitrag wurde zuletzt bearbeitet: 13.07.2018, 17:36 von Käpt'n Blaubär.)
Hallo,
Zitat:... dass man eine Vorlage mit Daten überschreibt, die aber in der Vorlage selbst nicht auftauchen sollen.
in einer vernünftigen Vorlage werden keine Daten gespeichert. Du schreibst, daß Du mit Sicherheitskopien arbeitest. Das ist sehr löblich!!!
Für den Umgang mit Sicherheitskopien gibt es garantiert ein halbes Dutzend Möglichkeiten. Man kann z.B. auch eine Sicherungsdatei bei jedem Öffnen der Datei erzeugen.
Allerdings,sind Sicherungsdateien für eine Vorlagendatei eher sinnfrei und nicht mal Schmuck am Nachthemd. Mit einer Vorlagendatei erstellt man eine Datei, das erstellte Teil wird unter einem anderen Namen gespeichert und die Vorlagendatei ist wieder frei zum Erstellen des nächsten Formulars ... oder was auch immer erstellt werden soll.
Wenn das bei Dir anders ist, dann allerdings reden wir aneinander vorbei. Im Übrigen haben Vorlagen sogar eine eigene Dateiendung mit dem Namen *.dot; *.dotx; *dotm usw.
wenn Du eine normale Datei als Vorlage nehmen und darin Änderungen verhindern willst, dann setze den Schreibschutz im Filesystem.
Wenn Du den Bearbeiter haben willst, dann geht das meist einfach mit
Application.Username oder Environ("Username")
(sind nicht immer dieselben)
Du müsstest Dir eine Liste der user aufbauen mit den Kürzeln in der zweiten Spalte und kannst selbige dann per Formel (SVERWEIS) eintragen.
Das Aussehen der OptionButtons kannst Du nicht in Häckchen oder anderes ändern. Du könntest aber im Makro eines Kontrollkästchens das andere umswitchen. Da kommt es etwas darauf an, was Du beim Umschalten generell tun willst und ob Du Formular oder ActiveX Kästen hast.
. \\\|/// Hoffe, geholfen zu haben. ( ô ô ) Grüße, André aus G in T ooO-(_)-Ooo (Excel 97-2019+365)
16.07.2018, 07:34 (Dieser Beitrag wurde zuletzt bearbeitet: 16.07.2018, 07:36 von Pirmi.)
Hallo zusammen, erstmal Danke für eure Antworten.
Das mit dem Schreibschutz werde ich machen, bevor ich die Datei frei zugänglich mache. Die Benutzer sollen nur ein paar Zellen ändern dürfen, das klappt auch wunderbar.
Ich bin etwas anspruchsvoll, ich weiß
Um es etwas abzukürzen: Lassen wir die anderen Spielereien mal weg...
Ich beschränke mich jetzt selbst mal auf folgende Punkte: 1. Das Wichtigste wäre für mich, dass ein Benutzer die Vorlage öffnet, unten seinen Namen aus der Liste auswählt und dann folgendes passiert: Das Kürzel soll automatisch erscheinen und die Kundenliste (das können locker 30-40 werden), soll dann automatisch auf seine persönlichen eingeschränkt werden, so dass er sich nicht durch alle durchwühlen muss, sondern nur seine - beispielsweise - 10 Kunden in der Liste vorfindet. 2. Die Kunden sollen mit dem jeweiligen Land verknüpft werden, also soll, wenn oben Kunde A ausgewählt wird, bei Zielland automatisch das Richtige auftauchen. 3. Das mit dem Zentrieren der OptionButtons wäre echt schön ;)
@ Blaubär: Ich Depp habe die Datei nicht als Vorlage gespeichert...Jetzt habe ich ja, was ich wollte. Danke :)
Ich habe es jetzt tatsächlich selbstständig hinbekommen. Der große Knoten, den ich letzte Woche hatte, ist gelöst. Wähle ich den Sachbearbeiter aus der Dropdown-Liste aus, erscheint darunter automatisch sein Kürzel. Über INDIREKT habe ich es geschafft, dass ich auch nur noch seine Kunden in der Liste sehe.
Heißt, ich bin fast vollständig zufrieden damit! Vergesst den ganzen Rest oben
Eine letzte Sache hätte ich aber noch, falls das überhaupt funktioniert: Kann ich erzwingen, dass der Mitarbeiter unbedingt erst seinen Namen aus der Liste auswählt? So könnte ich unnötiges klicken vermeiden. Ist zwar nicht so, dass es jetzt sooo dringend sein müsste, aber es würde das ganze ja doch vereinfachen.
16.07.2018, 13:24 (Dieser Beitrag wurde zuletzt bearbeitet: 16.07.2018, 13:35 von Pirmi.)
Kurz vorab zur Erklärung: Öffnet man jetzt meine Vorlage, ist immer die Zelle markiert, die zuerst ausgefüllt werden soll.
Ich habe ein Makro gefunden, welches zwar jetzt verhindert, dass man in eine andere Zelle springen kann, dies tut es aber immer. Ich möchte, dass man die Zelle nicht wechseln kann, bis man den Zellinhalt verändert hat. Danach jedoch sollen alle nicht gesperrten Zellen in beliebiger Reihenfolge bearbeitet werden können. Das wird durch den folgenden Code aber gänzlich verhindert.
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
Application.EnableEvents = False Dim rgBereich As Range Dim zaehler As Range Set rgBereich = Worksheets("Tabelle1").Range("H31") For Each zaehler In rgBereich If zaehler = "" Then zaehler.Select Exit For End If Next zaehler Application.EnableEvents = True End Sub
Vielleicht jemand mit VBA-Kenntnissen, der mir den Code so ändern kann, dass nach dem Ändern von Zelle H31 die Bearbeitung des Blattes frei ist? (Natürlich nur die Zellen, die ich freigegeben habe...)