Anzeige
Archiv - Navigation
1372to1376
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zelle überprüfen und Nachbarzelle befüllen

Zelle überprüfen und Nachbarzelle befüllen
01.08.2014 15:17:57
Patrick
Schönen guten Tag zusammen,
ich habe eine Frage aufgrund meines kleinen Dilemmas.
Vor mir liegt eine Excelliste mit einer A und einer B Spalte, die in unterschiedlichen Zellen befüllt sind.
Ich möchte das die leeren Zeilen in Spalte B mit dem Wert der letzten befüllten Zelle
aus B aufgefüllt werden. Ähnlich wie das Doppelklicken mit der Maus in das kleine schwarze Kreuz rechts unten, wenn ihr versteht was ich meine.
Nun habe ich hier ein Mini-Makro gefunden, dass das soweit automatisch umsetzt:
Sub Autofüller()
For Each c In Range("B1", "B100")
If c = "*" Then c.Value = NeuerName
If c  "" Then NeuerName = c Else c.Value = NeuerName
Next
End Sub
Das Programm durchläuft jede Zeile und befüllt alle Zeilen mit dem Wert der letzten gefundenen befüllten Zelle.
Nun möchte ich, dass immer nur dann befüllt wird, falls in der selben Zeile im Spalte A ein Text vorhanden ist.
Ich weiß, dass man mit der ISTTEXT(A1) die Zelle auf Textinhalt prüfen kann,
aber ich habe absolut keine Ahnung, wie ich das mit dem Makro kombiniere und das dann fortlaufend bis zur letzen Zeile.
Also zusammengefasst:
Falls A1 Wert vorhanden und B1 vorhanden--> Wert von B1 merken
Falls A1 kein Wert vorhanden --> dann passiert nichts
nächste Zeile
Falls A2 Wert vorhanden und B2 nicht --> Wert von B1 hinein kopieren
Falls A2 Wert vorhanden und B2 vorhanden --> Wert von B2 merken
Falls A2 kein Wert vorhanden --> dann passiert nichts
nächste Zeile
usw.
bis Zeile 100 erreicht ist.
Könnt ihr mir etwas unter die Arme greifen?
Vielen lieben Dank an alle!
Lg
Patrick

14
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
das würde auch ganz ohne VBA gehen, ...
01.08.2014 15:35:27
neopa
Hallo Patrick,
... mit ein paar Mausklicks und einer Formel.
Aber wie auch immer, Du müsstest auf jeden Fall zunächst noch angeben, was genau Du mit: "mit dem Wert der letzten befüllten Zelle" meinst? Den momentan letzten (untersten) Wert der Spalte B oder den letzten Wert "" vor der jeweiligen zu befüllenden Leerzelle?
Gruß Werner
.. , - ...

AW: das würde auch ganz ohne VBA gehen, ...
01.08.2014 16:01:56
Steffen
Hallo Werner,
genau das meinte ich.
Also falls sagen wir mal in A1 ein Text steht und in B1 steht das Wort "Eis"
dann soll er in die nächste Zeile springen und schauen ob in A2 wieder ein Wort auftaucht und falls ja dann das Wort "Eis" in B2 kopieren.
Sollte B2 nun das Wort "Kugel" beinhalten dann soll er sich stattdessen das neue Wort "Kugel" merken und weiter laufen bis alle Zeilen durch sind.
Habe mal eine Beispielliste dran gehängt.
https://www.herber.de/bbs/user/91830.xlsx
Eigentlich ist es kein Problem bis Zeile 100 aber vermutlich geht das nächste Blatt bis Zeile 2000 und dann sinds nicht nur Spalte A und B sondern C,D und E kommen wohl noch dazu.
Das wird mit Mausklicks etwas Zeit kosten meine ich :/

Anzeige
AW: das würde auch ganz ohne VBA gehen, ...
01.08.2014 16:01:56
Steffen
Hallo Werner,
genau das meinte ich.
Also falls sagen wir mal in A1 ein Text steht und in B1 steht das Wort "Eis"
dann soll er in die nächste Zeile springen und schauen ob in A2 wieder ein Wort auftaucht und falls ja dann das Wort "Eis" in B2 kopieren.
Sollte B2 nun das Wort "Kugel" beinhalten dann soll er sich stattdessen das neue Wort "Kugel" merken und weiter laufen bis alle Zeilen durch sind.
Habe mal eine Beispielliste dran gehängt.
https://www.herber.de/bbs/user/91830.xlsx
Eigentlich ist es kein Problem bis Zeile 100 aber vermutlich geht das nächste Blatt bis Zeile 2000 und dann sinds nicht nur Spalte A und B sondern C,D und E kommen wohl noch dazu.
Das wird mit Mausklicks etwas Zeit kosten meine ich :/

Anzeige
als Formellösung ...
01.08.2014 15:57:51
neopa
Hallo Patrick,
... nachdem ich gerade Deine Anfrage nochmal gelesen habe, stellte ich fest, dass meine Gegenfrage überflüssig war. So wie Du abschließend schreibst, kommt nur folgendes in Frage. Und zwar als Formellösung nur für Leerzellen ab Zelle B2.
Markiere die komplette Spalte B; betätige [F5], aktiviere danach Inhalte und dort dann "Leerzellen" und schreibe in die Eingabezeile folgende Formel:
=WENN(ISTTEXT(INDEX(A:A;ZEILE()))*(ZEILE()""); B$1:INDEX(B:B;ZEILE()-1));"") 
Nun betätige danach die Tastenkombination [STRG]+[Enter]
Gruß Werner
.. , - ...

Anzeige
AW: als Formellösung ...
01.08.2014 16:03:49
Patrick
Hallo Werner,
wir probieren es mal schnell aus.
Gruß

AW: als Formellösung ...
01.08.2014 16:27:22
Patrick
So haben es probiert aber die Spalte wird dabei komplett ausgefüllt also auch wenn in der Spalte A kein Wert steht füllt er die selbe Zeile in Spalte B dennoch aus.
Woran könnte das liegen?

die Formel ist korrekt ...
04.08.2014 10:31:56
neopa
Hallo Patrick,
... hab sie gerade nochmal getestet. Wenn sie auch Zellen befüllt, wo in Spalte A leere Zellen stehen, dann nur, wenn dort dort diese nicht wirklich leer sind, z.B. unsichtbare Zeichen oder ein ="" drin steht. Letzteres kann man mit der Formel noch abfangen.
=WENN(ISTTEXT(INDEX(A:A;ZEILE()))*(ZEILE()"");VERWEIS(9;1/(B$1:INDEX( _
B:B;ZEILE()-1)""); B$1:INDEX(B:B;ZEILE()-1));"")

Bei entsprechender Anpassung kannst Du die Formel natürlich auch für Spalte D etc nutzen.
Gruß Werner
.. , - ...

Anzeige
AW: die Formel ist korrekt ...
07.08.2014 11:26:21
Patrick
Hallo Werner,
bitte entschuldige, dass ich jetzt erst schreibe. Habe deinen Post völlig übersehen.
Die Formel wurde nun entsprechend ergänzt, aber leider gibt Excel mir nun eine Warnung raus:
Stichwort Zirkelbezug.
Das Problem ist, dass ich diese Formel, die am Anfang der Spalte steht nur allzu schlecht löschen kann.
Gruß
Patrick

hast Du die Formel modifiziert ? ...
07.08.2014 12:18:31
neopa
Hallo Patrick,
... stell doch noch mal Deine Datentabelle (auf das notwendige reduziert und evtl. anonymisiert) hier ein. Dann sehen wir weiter.
Gruß Werner
.. , - ...

AW: hast Du die Formel modifiziert ? ...
07.08.2014 14:10:31
Patrick
Hallo Werner,
das wird wohl einfacher sein, da hast du Recht.
Ich habe mal einen Ausschnitt mit hochgeladen.
https://www.herber.de/bbs/user/91953.xlsx
Die rot markierten Flächen sind verantwortlich dafür, ob die gelb markierten Flächen befüllt werden.
Für die Befüllung wird der erste Wert, in meinem Fall die blaue Fläche, verwendet.
Das Problem sind die grünen Flächen. Diese sollten unverändert bleiben, aber genau da liegt mein Problem. Unter anderem auch mit meinem Makro.
Leider werden immer alle Felder befüllt.
Gruß
Patrick

Anzeige
bei mir ist alles palletti ... allerdings ...
07.08.2014 14:36:40
neopa
Hallo Patrick,
... Du musst zuvor Deinen Datenbereich G5:K101 vom Zellformat "Text" in das Zellformat "Standard" ändern. Anderenfalls werden die Formeln nicht ausgewertet.
Nun markiere G5:K101, [F5], Inhalte aktivieren und dann Leerzellen und dann folgende (an den geänderten Bereich angepasste) Formel in den Eingabebereich einkopieren:
=WENN(ISTTEXT(INDEX($F:$F;ZEILE()))*(ZEILE()"");VERWEIS(9; 1/(G$1:INDEX(G:G;ZEILE()-1)""); G$1:INDEX(G:G;ZEILE()-1));"")  
in die Eingabezeile kopieren und [Strg]+ [Enter] betätigen und ... ferdsch.
Gruß Werner
.. , - ...

Anzeige
AW: bei mir ist alles palletti ... allerdings ...
07.08.2014 15:25:15
Patrick
Na wer sagt's den, jetzt funktioniert es auch bei mir!
Super Werner, vielen herzlichen Dank für die Mühe!!
Gruß
Patrick

AW: Zelle überprüfen und Nachbarzelle befüllen
07.08.2014 10:28:54
Patrick
Hallo zusammen,
ich würde dieses Thema gerne nochmals anstoßen, da ich bislang nicht weiter gekommen bin.
Gibt es evtl. noch weitere Vorschläge?
Lg
Patrick

na, dann stell ich den Thread auf offen ... owT
07.08.2014 11:22:37
neopa
Gruß Werner
.. , - ...

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige