Wert nur übernehmen bei bestimmten Wert - Druckversion +- Office-Fragen.de (https://office-fragen.de) +-- Forum: Microsoft Office (https://office-fragen.de/forum-1.html) +--- Forum: Excel (https://office-fragen.de/forum-2.html) +--- Thema: Wert nur übernehmen bei bestimmten Wert (/thread-28485.html) Seiten:
1
2
|
Wert nur übernehmen bei bestimmten Wert - Hypothetix - 13.12.2022 Hallo zusammen, ich habe ein kleines Problem. Für den Customer Service meiner Firma habe ich eine Personaleinsatzplan Excel entworfen. Dort stehen untereinander die Mitarbeiter und es können von Teamleitern verschiedene Werte eingetragen werden, z.B Frühschicht, Spätschicht, aber auch Krankheit etc. Auf dem Bild seht ihr für die Tage 2.-6. Januar 3 Mitarbeiter mit entsprechenden Eintragungen. (K= Krankheit, U=Urlaub, F=Frühschicht) - natürlich gibt es noch viel mehr. Für die Mitarbeiter soll so eine Liste ebenfalls zur Verfügung gestellt werden, allerdings OHNE Eintragungen wie "K" (Krankheit) bzw. andere datenschutzrelevante Punkte. Ich suche also nach einer Möglichkeit eine identische Excel zu erstellen, die sich die Werte aus der bestehenden zieht (denn diese ist die QUelle in der gearbeitet wird), aber bestimmte Felder leer lässt sofern in der Originalversuch dort Krankheit steht. In dem Beispiel oben müsste bei Mitarbeiter 1. Also Feld 1 und 3 blank bleiben, bei Mitarbeiter 2 alle Felder und bei Mitarbeiter 3 müsste alles übernommen werden. Ich dachte es könnte vielleicht so funktionieren, dass ich bei der Mitarbeiterdatei irgendetwas mache wie WENN die Quelle den Buchstaben FÜ, U enthält dann copy, wenn nicht, dann nicht..... Verstehst ihr was ich meine? Und wie realisiere ich das am besten? TAUSEND DANK Liebe Grüße RE: Wert nur übernehmen bei bestimmten Wert - Flotter Feger - 13.12.2022 Hallo, kopiere deinen Kalender in ein neues Blatt ... nur Werte ... Markiere den betreffenden Bereich und rufe Strg-H auf. K durch "" ersetzen oder was du noch so willst. Sabina RE: Wert nur übernehmen bei bestimmten Wert - Hypothetix - 13.12.2022 So kann man es natürlich auch machen. Gibt es eine Möglichkeit, dass Excel bei jedem öffnen der Datei automatisch Werte prüft und ersetzt. Also immer das "strg+h" ausführt, ohne das es vom User manuell gemacht werden muss? DANKE bis hierhin RE: Wert nur übernehmen bei bestimmten Wert - Hypothetix - 13.12.2022 Ich habe jetzt mal, im Kontext von Sabinas Idee, ein wenig recherchiert und folgendes gefunden und probeweise in einer neuen Arbeitsmappe getestet VBA Sub Test() Range("A1").Value = Replace(Range("A1").Value, "K", "yay") End Sub ...... Immer wenn ein K irgendwo steht macht er jetzt ein Yay draus (soll natürlich nicht bei Yay bleiben) Aber, sobald ich die Range erweitere, also z.B. A144 bekomme ich einen Fehler: Laufzeitfehler 13 - Typen unverträglich. Wenn ich es nur bei A1 belasse geht es..... RE: Wert nur übernehmen bei bestimmten Wert - StefKe - 13.12.2022 Hallo, "Replace()" ist eine String-Function. Sobald diese in dem erweiterten Bereich andere Datentypen trifft, kann sie damit nix anfangen und bringt eine Fehlermeldung. Stefan RE: Wert nur übernehmen bei bestimmten Wert - Hypothetix - 13.12.2022 Verstehe. Danke Dir! Wie wäre denn ein einfaches VBA, das einen definierten BEreich innerhalb eines Blatts untersucht und dort jeweils ein "K" durch ein "A" ersetzt? Grüße, RE: Wert nur übernehmen bei bestimmten Wert - Hypothetix - 13.12.2022 Ich glaub ich hab was gefunden: Sub ErsetzenAlternative() Tabelle1.UsedRange.Replace "KX", "AB", xlPart End Sub scheint zu klappen RE: Wert nur übernehmen bei bestimmten Wert - RPP63 - 13.12.2022 (13.12.2022, 14:10)StefKe schrieb: Hallo, "Replace()" ist eine String-Function. Sobald diese in dem erweiterten Bereich andere Datentypen trifft, kann sie damit nix anfangen und bringt eine Fehlermeldung. Wie kommst Du denn auf diesen Trichter? Direktfenster: PHP-Code: ?Replace("a92Qv", 2, "W") @Hypothetix: So it is! Die Range.Replace-Methode frühstückt alle Zellen eines Bereichs in einem Zug ab. Die Replace-Funktion müsste in einer Schleife über alle Zellen des Bereichs laufen. Tempomäßig suboptimal. Code: Sub Test() Gruß Ralf RE: Wert nur übernehmen bei bestimmten Wert - Flotter Feger - 13.12.2022 Kann mir mal bitte jemand erklären, was die Leute alle gegen den Makro-Rekorder haben ? Fragen im Forum ... kriegen eine "Ablauf-Lösung zum selber machen" ... kommen aber nicht auf die Idee, sich das mal aufzuzeichnen, was sie händisch machen können. Mit dem Rekorder ist man in 2 Minuten fertig ... und da ist schon mein "Tatergreis-Zuschlag" dabei. DieseArbeitsmappe --> Workbook_Open ... da muss der Code rein ... PS: ... möchte jemand eine 9-jährige adoptieren ... die gerade in die Pubertät kommt ? RE: Wert nur übernehmen bei bestimmten Wert - Hypothetix - 14.12.2022 @RPP63 Danke Dir für deine Ausführungen. Es gibt nur ein Problem. Ich versuche das mal zu veranschaulichen. Wir haben eine Quelldatei A. In der machen Teamleiter Eintragungen zu Schichten für Mitarbeiter (Krankheit K, Frühsschicht FS usw) Wir haben eine Datei B, diese ist eine abgespeckte Version von A, die die Mitarbeiter nutzen. Diese Datei zeigt die gleichen Werte in den Zellen wie in A (Formel = Wert aus A) . Nur bestimmte Werte sollen nicht angezeigt werden. Immer wenn in Quelldatei ein (z.B.) "K" steht soll in der Zieldatei für die Mitarbeiter aus Datenschutz Gründen etwas anderes stehen. Mit dem Code oben funktioniert es theoretisch, ABER er ändert nicht die Werte in den Zellen die aus der Quelldatei A gezogen wurden. Also wenn ich manuell "K" in eine Zelle schreibe ändert es sich. Wenn das K aber aus QUelldatei A mittels Formel übernommen wurde ändert es sich nicht?! ...Ideen? DANKE |