Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Bereich zurückgeben

Bereich zurückgeben
14.05.2004 14:56:30
joel
hallo
ich suche eine formel, mit der ich alle zellen als bereich erhalte, in denen sich der gesuchte wert befindet.
ein beispiel:
gesuchter wert: 100
tabellenwerte (z.B. in zellen A1-G1): 12;234;100;34;23;100;124
rückgabe ist eine referenz auf die zellen C1 und F1
hoffe, hier kann jemand helfen.. ansonsten muss ich halt kurz programmieren.. dann muss ich mich jedoch selbst um die aktualisierung der betroffenen felder kümmern..
danke, gruss joel
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bereich zurückgeben
14.05.2004 15:14:27
Frank
Hallo Joel,
probier mal folgendes
Public zeile as Integer
Public Spalte as Integer
Public hilfzeileas Variant
Public hilfspalte as Variant
Public i as Variant
Public j as Variant
sub suche()
zeile=1
spalte=1
'Letze Spalte suchen
do while activesheet.cells(1,spalte)""
spalte=spalte+1
loop
'Letze Zeile suchen
do while activesheet.cells(Zeile ,"A")""
Zeile =Zeile +1
loop
for i=1 to zeile
for j=1 to spalte
if activesheet.cells(i,j)= gesuchter wert then
hilfzeile = i
hilfspalte = j
Ergebnis=i+j
msgbox=Ergebnis
end if
next
next
du kannst ja die Zahlen der Spalten dann in Buchstaben wandeln in der if schleife mit einer switch case anweisung
case 1 d.h. hilfspalte ="A"
case 2 "B"
usw.
Mfg Frank
Anzeige
AW: Bereich zurückgeben
14.05.2004 15:29:06
joel
hallo frank
danke für deine bemühungen. ich suche eine formel, sprich eine EXCEL-formel.
die (einfache) alternative ist, dies zu programmieren..
übrigens: die letzte zeile und spalte erhälst du auch über tabelle1.usedrange.row, resp .column :-)
noch etwas, über tabelle1.cells.specialcells(..) kannst du direkt zellen ansprechen, die z.b. einen wert enthalten
gruss joel
Anzeige
AW: Bereich zurückgeben
14.05.2004 15:40:48
Frank
Cool,
wußte ich nicht, ich kenn wenig so "Spezialfunktionen".
Mach viel in so Schleifen :-)
Mfg Frank
AW: Bereich zurückgeben
14.05.2004 15:56:32
joel
hallo frank
schleifen sind halt meisst langsamer.. und umständlicher.
gruss joel
AW: Bereich zurückgeben
15.05.2004 08:51:22
Christoph
Hallo Joel,
hier ein Vorschlag für dein genanntes Bsp:
Formel in H1:
{=KKLEINSTE(WENN($A$1:$G$1=100;SPALTE($A$1:$G$1));ZEILE())}
gibt dir die Spaltennr.
und
{=ADRESSE(1;KKLEINSTE(WENN($A$1:$G$1=100;SPALTE($A$1:$G$1));ZEILE()))}
die Zelladresse.
diese nach unten ausfüllen.

Gruß
Christoph
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Bereich zurückgeben in Excel


Schritt-für-Schritt-Anleitung

Um in Excel einen Bereich zurückzugeben, in dem sich ein gesuchter Wert befindet, kannst Du die folgende Array-Formel verwenden. Angenommen, Du suchst nach dem Wert 100 in den Zellen A1 bis G1.

  1. Wähle die Zelle H1 aus, in der das Ergebnis erscheinen soll.
  2. Gib die folgende Formel ein:
    =KKLEINSTE(WENN($A$1:$G$1=100;SPALTE($A$1:$G$1));ZEILE())
  3. Bestätige die Eingabe mit Strg + Shift + Enter, um die Formel als Array-Formel einzugeben.
  4. Um die Zelladresse zu erhalten, gib in die nächste Zelle (z.B. H2) ein:
    =ADRESSE(1;KKLEINSTE(WENN($A$1:$G$1=100;SPALTE($A$1:$G$1));ZEILE()))
  5. Fülle diese Formel nach unten aus, um alle Zellen anzuzeigen, die den gesuchten Wert enthalten.

Häufige Fehler und Lösungen

  • Fehler: Die Formel gibt einen Fehler zurück oder zeigt #NV.

    • Lösung: Stelle sicher, dass Du die Formel als Array-Formel mit Strg + Shift + Enter eingibst.
  • Fehler: Es werden nicht alle Zellen angezeigt.

    • Lösung: Überprüfe, ob die gesuchte Zahl in den angegebenen Zellen tatsächlich vorhanden ist.

Alternative Methoden

Falls Du keine Array-Formeln verwenden möchtest oder eine VBA-Lösung bevorzugst, kannst Du den folgenden Code in ein Modul einfügen:

Sub BereichZurueckgeben()
    Dim zeile As Integer
    Dim spalte As Integer
    Dim gesuchterWert As Variant
    gesuchterWert = 100
    For zeile = 1 To 1 ' Hier die Zeilen anpassen
        For spalte = 1 To 7 ' Hier die Spalten anpassen
            If ActiveSheet.Cells(zeile, spalte).Value = gesuchterWert Then
                MsgBox "Wert gefunden in: " & ActiveSheet.Cells(zeile, spalte).Address
            End If
        Next spalte
    Next zeile
End Sub

Praktische Beispiele

Wenn Du die Array-Formel in H1 und H2 eingegeben hast, sieht das Ergebnis folgendermaßen aus:

  • Angenommen, Deine Werte in A1 bis G1 sind: 12;234;100;34;23;100;124
  • In H1 wird 3 angezeigt (Spalte C).
  • In H2 wird $C$1 angezeigt (Zelladresse).

Fülle die Formeln nach unten aus, um auch die zweite Instanz des Wertes 100 zu sehen.


Tipps für Profis

  • Nutze benannte Bereiche, um die Lesbarkeit Deiner Formeln zu erhöhen.
  • Experimentiere mit der Funktion SVERWEIS, um zusätzliche Informationen zu den gefundenen Werten abzurufen.
  • Verwende die Funktion FILTER, wenn Du Excel 365 oder neuere Versionen hast, um den gesamten Bereich dynamisch zu filtern.

FAQ: Häufige Fragen

1. Wie finde ich mehrere Werte gleichzeitig?
Verwende die FILTER-Funktion in Excel 365, um mehrere Suchkriterien zu kombinieren.

2. Welche Excel-Version benötige ich für die beschriebenen Funktionen?
Die Array-Formeln und die beschriebenen Funktionen sind in Excel 2010 und neueren Versionen verfügbar. Für die VBA-Lösung benötigst Du keine spezielle Version, jedoch sollte VBA unterstützt werden.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige