Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Automatische Erweiterung Bereich in Formel
#1
Hallo Zusammen,
ich bin in Excel und VBA leider nicht allzu bewandert, deshalb bin ich für eure Hilfe sehr dankbar.

Situation, siehe angehängte Datei (Beispiel, stark vereinfacht).
(Formel ist als Text formatiert)

Bemerkungen:
  • Steht in Spalte A eine 1, so kommt in Spalte B die Formel
  • der Bereich innerhalb der Formel beinhaltet immer alle Zellen zwischen den Formeln, oder anders gesagt: Zeilen zwischen den 1en in Spalte A (Zellen aber aus Spalte B!)
Wenn ich über VBA (CommandButton) eine zusätzliche Zeile einfüge (in der Beispieldatei der Einfachheit nicht vorhanden), und zwar nach Zeile 1 oder nach Zeile 6, wird die Formel nicht automatisch angepasst.
Ist ja auch logisch, da die neue Zeile nicht innerhalb des vorher definierten Bereichs liegt.

Nun die Frage, ob es eine einfache Lösung gibt, sodass Excel "versteht" dass neue Zeilen über oder unter dem Bereich auch zu dem Bereich dazugehören sollen?
Oder muss ich das ganze mit VBA lösen, indem ich nach dem Wert 1 in Spalte A suche und so die Zeilennummer dazwischen herausfinde und neu in die Zelle schreibe?
Falls dem so ist, wäre ein Quellcode Vorschlag sehr hilfreich.

Kann auch gerne die Ursprungsdatei, die aber sehr viel umfangreicher ist, zusätzlich hochladen.

Besten Dank im Voraus.


Grüße Patrick


Angehängte Dateien
.xlsx   beispiel.xlsx (Größe: 8,88 KB / Downloads: 4)
Antworten Top
#2
Hi,


Code:
=WENN(ANZAHL2(B2:INDEX(B:B;VERGLEICH(1;A2:$A$999;0)+ZEILE()-1));"x";"")
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
[-] Folgende(r) 1 Nutzer sagt Danke an BoskoBiati für diesen Beitrag:
  • patrick220893
Antworten Top
#3
Hallo,

danke für die schnelle Antwort,

funktioniert aber leider noch nicht so, wie ich das beschrieben hatte :22:

Sonstige Möglichkeiten?


Gruß,
Patrick
Antworten Top
#4
Hi,

kann ich nicht nachvollziehen. Zeige mal ein Beispiel mit Musterlösung!


Code:
=WENN(ANZAHL2(INDEX(B:B;ZEILE()+1):INDEX(B:B;VERGLEICH(1;INDEX(A:A;ZEILE()+1):$A$1001;0)+ZEILE()-1));"x";"")
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
[-] Folgende(r) 1 Nutzer sagt Danke an BoskoBiati für diesen Beitrag:
  • patrick220893
Antworten Top
#5
hallo,

super jetzt funktioniert's! Besten Dank!

Nur noch eine kleine Frage:

der Teil "...INDEX(A:A;ZEILE()+1)..." gibt in diesem Fall die Adresse der Zelle zurück, oder?



Grüße,
Patrick
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste