Ich versuche, ein Makro zu entwerfen, das alle Zellen in einer Reihe mit einem Wert von 4 in einen Wert von 3 ändert. Dies ist jedoch nur möglich, wenn ich eine Zelle auf einem anderen Blatt aktualisiere.
Kann das gemacht werden? Ist es auch möglich, dies in einer Formel zu tun, jedoch über mehrere Zeilen hinweg?
Ich muss dies tun, um eine Trainingsmatrix zu aktualisieren. Wenn ich eine SOP-Nummer in Blatt 1 aktualisiere, werden alle auf Code 4 (derzeit trainiert) in Code 3 (auf vorherige Version trainiert) geändert. Da ich Hunderte von SOP-Zeilen habe, möchte ich nicht für jede Zeile einen anderen Code haben.
Hoffe das alles macht Sinn.
microsoft-excel
macros
Steve
quelle
quelle
Antworten:
Überprüfen Sie den Screenshot:
Fügen Sie den unten angegebenen VBA-Code als Modul in Blatt 2 ein:
Wie es funktioniert:
NB
Für die erste Eingabeaufforderung können Sie entweder den gesamten Bereich (wie im Beispiel gezeigt) oder eine der Spalten auswählen, in denen Sie 4 durch 3 ersetzen möchten.
Vergessen Sie nicht, "OTP" in Zelle A208 von Blatt 1 zu schreiben, bevor Sie dieses Makro ausführen .
quelle
OK, also ich habe etwas, das funktioniert, wenn ich die oben veröffentlichte Lösung bearbeite.
Ich habe dies in Sheet1 (Code)
Und ich habe dies auf Modul1 (Code)
Gibt es eine intelligentere Art, dies zu schreiben, damit ich nicht Hunderte verschiedener Anrufe habe?
quelle