Automatische Aktualisierung bei einfügen neuer Zeile
Hallo allerseits,
in Zelle B1 steht =WENN(ISTZAHL(SUCHEN("BL";A1));MAX(B1:B$2)+1;""). Dann steht, wenn in A1 "BL" steht, in B1 eine "1". Die Formel kann man runterziehen und dann erscheint für jedes neue "BL" in Spalte A eine "2", dann eine "3", usw. in Spalte B. Wenn ich jetzt eine neue Zeile einfüge, soll sich Spalte B automatisch aktualisieren, was sie bis jetzt nicht tut. Geht das per Formel?
Viele Grüße,
Johannes
Antwort schreiben
Antwort 1 von rainberg vom 06.08.2021, 15:04 Options
Hallo Johannes,
schreibe in B1
=WENN(ISTZAHL(SUCHEN("BL";A1));1;"")
schreibe in B2
=WENN(ISTZAHL(SUCHEN("BL";A2));MAX(B$1:B1)+1;"")
und kopiere nach unten.
Gruß
Rainer
Antwort 2 von Johannes94 vom 06.08.2021, 15:09 Options
Probier ich heute abend aus, danke.
Jetzt keine Zeit. Gruß, Johannes
Antwort 3 von rainberg vom 06.08.2021, 20:08 Options
Hallo Johannes,
oder meinst Du es so?
Formel für B1
wie oben
Formel für B2
=WENN(ISTZAHL(SUCHEN("BL";INDIREKT("A"&ZEILE())));MAX(INDI
REKT("B$1:B"&ZEILE()-1))+1;"")
Gruß
Rainer
Antwort 4 von Johannes94 vom 06.08.2021, 20:09 Options
Hallo Rainer,
ich werde mal die neue Lösung probieren, da die alte nicht geklappt hat.
Grüße,
Johannes
Antwort 5 von Johannes94 vom 06.08.2021, 20:18 Options
Irgenwas klappt da nicht. Probier ich morgen aus. Melde mich dann.
Grüße,
Johannes
Antwort 6 von Johannes94 vom 07.08.2021, 11:40 Options
Hallo Rainer,
DeineFormel funktionert genausogut wie die alte (die übrigens auch von dir ist). Das Problem ist
hier beschrieben. (Es sind sogar zwei.)
Vielen Danke für Hilfe sagt
Johannes
Antwort 7 von rainberg vom 07.08.2021, 12:53 Options
Hallo Johannes,
das, was Du praktizieren willst, geht nicht mit Formeln.
Habe Dir mal ein Makro eingebaut, welches das Einfügen einer Zelle
und der darüber liegenden Formel erledigt.
Du hattest meinen Beitrag nicht richtig gelesen.
In B1 muss eine andere Formel als in den darunter liegenden Zellen
stehen.
http://www.file-upload.net/download-
1812322/einfuegen.xls.htmlGruß
Rainer
Antwort 8 von Johannes94 vom 07.08.2021, 12:56 Options
Hallo Rainer,
tut mir leid, falls ich dich falsch verstnaden habe.
Dein Link funktioniert leider nicht.
Grüße,
Johannes
Antwort 10 von Johannes94 vom 07.08.2021, 17:54 Options
Hallo Rainer,
jetzt habe ich die Formeln verstnaden (hoffe ich jedenfalls).
Leider zeigt VBA mir bei Klick auf den Button an:
Fehler beim Kompilieren
Variable nicht definiert.
Ich weiß nicht wo der Fehler liegt, weil ich völliger VBA-Neuling bin und das mein erstes Makro ist, was ich sehe.
Viele Grüße,
Johannes
Antwort 11 von rainberg vom 07.08.2021, 18:32 Options
Hallo Johannes,
mit welcher Excelversion arbeitest Du?
Gruß
Rainer
Antwort 13 von Johannes94 vom 08.08.2021, 10:40 Options
Mit Excel 2000 9.0.3821 SR-1.
Antwort 14 von rainberg vom 08.08.2021, 11:13 Options
Hallo Johannes,
mi Excel2000 kann ich leider nicht testen.
Obwohl ich mir nicht vorstellen kann, dass dieser einfache Makrocode
in Deiner Version nicht laufen soll, habe nun die Datei, die ich
ursprünglich mit Excel2007 erstellt und ins Excel97-2003 konvertiert
hatte, noch mal neu in Excel 2003 erstellt und hänge sie an.
Wenn das Makro bei Dir nicht läuft , kann ich leider nicht mehr helfen.
http://rapidshare.com/files/265033377/einfuegen_2.xls.htmlGruß
Rainer
Antwort 15 von Johannes94 vom 08.08.2021, 11:17 Options
Funktioniert leider immer noch nicht.
Vielen Dank trotzdem, Johannes
Antwort 16 von rainberg vom 08.08.2021, 11:25 Options
Hallo Johannes,
Zitat:
Funktioniert leider immer noch nicht.
das ist leider keine brauchbare Aussage für einen Excel2000-User, der
Dir evtl. noch helfen könnte.
Was funktioniert nicht?
Gruß
Rainer
Antwort 17 von Johannes94 vom 08.08.2021, 11:29 Options
Ist immer noch der gleiche Fehler:
Zitat:
Fehler beim Kompilieren
Variable nicht definiert.
Gruß,
Johannes
Antwort 18 von Johannes94 vom 16.08.2021, 14:45 Options
Hallo, das Problem ist wie folgt gelöst:
Sub ZeileEinfügen()
With Selection
Selection.Insert Shift:=xlDown
Range("B2:D2").Select
Selection.AutoFill Destination:=Range("B2:D10"), Type:=xlFillDefault
Range("A1").Select
End With
End Sub
Damit wird eine neue Zeile über der markierten erstellt, und dann werden die Formeln von B2, C2 und D2 in die Zellen B2 bis B10, C2 bis C10 und D2 bis D10 übernommen.
Trotzdem Danke für die Antowrten, da ich weesentliche Teile des Codes denen entnommen habe, den Rest als Makro-Aufzeichnung erledigt habe.
Grüße,
Johannes