Registriert seit: 14.04.2014
Version(en): 2003, 2007
Hallo Angelina,
das wäre mein Vorschlag:
Arbeitsblatt mit dem Namen 'Tabelle1' |
| AD |
1 | 3101 |
Zelle | Formel |
AD1 | {=INDEX($A$1:$A$200;MIN(WENN(($N$1:$N$200=AA1)*($A$1:$A$200<$Z$1);ZEILE(1:200))))} |
Achtung, Matrixformel enthalten! |
Die geschweiften Klammern{} werden nicht eingegeben. |
Verlassen Sie den Zelleneditor mit Strg+Shift + Enter, statt Enter alleine. |
Diese Tabelle wurde mit Tab2Html (v2.4.1) erstellt. ©Gerd alias Bamberg |
Als Arrayformel natürlich nicht gerade Ressourcen schonend.
Gruß Atilla
Registriert seit: 12.04.2014
Version(en): Office 365
Hallo Jörg
Die Lösung der Aufgabe krankt daran dass Angelina nur für ein Beispiel den gewünschten Wert vorgibt.
Offensichtlich ist sie auch nicht gewillt mehr Informationen geben.
Wir sehen uns!
... Detlef
Meine Beiträge können Ironie oder Sarkasmus enthalten.
Registriert seit: 10.04.2014
Version(en): Office 2019
29.03.2015, 20:27
(Dieser Beitrag wurde zuletzt bearbeitet: 29.03.2015, 20:28 von Jockel.)
(29.03.2015, 20:22)shift-del schrieb: Hallo Jörg
Die Lösung der Aufgabe krankt daran dass Angelina nur für ein Beispiel den gewünschten Wert vorgibt.
Offensichtlich ist sie auch nicht gewillt mehr Informationen geben.
Hi Detlef, genau deswegen wollte ich versuchen, eine Möglichkeit zu finden, nochmal von vorn zu beginnen... ... aber vielleicht passt ja Atillas Vorschlag für Angelina ...
Gruß Jörg
ich muss mich erst wieder ganz langsam heran robben. Also bitte ich um Nachsicht
"Wer immer tut, was er schon kann, bleibt immer das, was er schon ist." - Henry Ford
Registriert seit: 14.04.2014
Version(en): 2003, 2007
Hallo Angelina,
per Vba erhalte ich andere Ergebnisse:
Code:
Option Explicit
Sub test()
Dim i As Long, j As Long
Dim c As Range
Dim firstAddress As String
Application.ScreenUpdating = False
For i = 1 To 200
If Cells(i, 27) <> "" Then
With Range("N1:N200")
Set c = .Find(Cells(i, 27), lookat:=xlWhole)
If Not c Is Nothing Then
If Cells(c.Row, 1) < Range("Z1") Then
Cells(i, 31) = Cells(c.Row, 1)
Else
firstAddress = c.Address
Do
Set c = .FindNext(c)
If Cells(c.Row, 1) < Range("Z1") Then
Cells(i, 31) = Cells(c.Row, 1)
Exit Do
End If
Loop While Not c Is Nothing And c.Address <> firstAddress
End If
End If
End With
End If
Next i
Application.ScreenUpdating = True
End Sub
Da ich kein Formelexperte bin, würde ich mich auf die VBA Ergebnisse verlassen.
Die Formel habe ich mehr oder weniger deswegen gepostet, um den Formelexperten die Aufgabenstellung noch mal anders zu veranschaulichen.
Gruß Atilla
Folgende(r) 1 Nutzer sagt Danke an atilla für diesen Beitrag:1 Nutzer sagt Danke an atilla für diesen Beitrag 28
• Angelina
Registriert seit: 26.01.2015
Version(en): 2003
(29.03.2015, 20:48)atilla schrieb: Hallo Angelina,
per Vba erhalte ich andere Ergebnisse:
hallo atilla,
oh ... man/Mann bin ich froh das du dich gemeldest hast.
Deine VB Lösung ist ... mal wieder ... 1A
Ich bin dir soooooooo unendlich dankbar ... das Drama hat ein ENDE
Ich liebe dich - wirklich - sorry aber ich musste das schreiben
DANKE ... DANKE ... DANKE ...
Und auch DANKE das du mir beigestanden hast - DANKE
1000 x LG
Angelina