HERBERS
Excel-Forum
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Entdecke rund 2 Millionen Excel-Lösungen im
Forumsarchiv
Forumbeitrag
Excel-Version des Fragestellers:
bis 2003
Erfahrungslevel des Fragestellers:
VBA nur mit Recorder
MCO
24.04.2026 09:27:18
AW: Makro Einbau Abfrage Jahr aus F21
Moin!

Ich hoffe, ich hab es richtig verstanden: Vorgabejahr steht statt in F7 jetzt in F21, Ausgabe zusätzlich zur selection in Msgbox?

Ändere im folgenden Code die variable "Vergleichsadresse" in F21

Probier es mal aus:

Public Sub Main()

Dim lngTMP As Long
On Error GoTo Fin
Application.EnableEvents = False
lngTMP = Cells(Rows.Count, "J").End(xlUp).Row

Dim Vergleichsadresse As String
Vergleichsadresse = "F7"

Dim ergebnis As Range
Set ergebnis = Range(Application.Evaluate("=ADDRESS(MATCH(MAX(IF(YEAR(A23:A" & lngTMP & ")=" & Vergleichsadresse & ",J23:J" & lngTMP & ")),J23:J" & lngTMP & ",0)+22,10)"))

Application.Goto ergebnis, True
'ergebnis.Interior.ColorIndex = xlNone 'überflüssig
ergebnis.Interior.ColorIndex = 33
ActiveWindow.ScrollColumn = 1

MsgBox "Der höchste Stand aus " & Range(Vergleichsadresse) & " ist " & ergebnis.Value, vbInformation + vbOKOnly

Fin:
Application.EnableEvents = True
If Err.Number <> 0 Then MsgBox "Jahr nicht vorhanden!", vbCritical
End Sub


Gruß, MCO
Als Antwort auf diesen Beitrag
chris58
24.04.2026 08:12:29
Makro Einbau Abfrage Jahr aus F21
Hallo !
Bitte kann mir ein Experte in den u.a. Code das Jahr der Abfrage, das in F21 steht, einbauen um den Höchsten Stand in diesem Jahr zu ermitteln ?
Danke für Eure Hilfe
chris58



Public Sub Main()
Dim lngTMP As Long
On Error GoTo Fin
Application.EnableEvents = False
lngTMP = Cells(Rows.Count, "J").End(xlUp).Row
Application.Goto Range(Application.Evaluate("=ADDRESS(MATCH(MAX(IF(YEAR(A23:A" & lngTMP & ")=F7,J23:J" & lngTMP & ")),J23:J" & lngTMP & ",0)+22,10)")), True
With Selection
.Interior.ColorIndex = xlNone
.Interior.ColorIndex = 33
End With
ActiveWindow.ScrollColumn = 1
Fin:
Application.EnableEvents = True
If Err.Number <> 0 Then MsgBox "Jahr nicht vorhanden!", vbCritical
End Sub
Folgenachrichten
Antwort auf Beitrag erstellen
Bitte einen Anwendernamen ohne @ eingeben.
Bitte das Passwort eingeben.
Bitte eine gültige E-Mail-Adresse eingeben.
Bitte einen Betreff eingeben.
Weitere Optionen
Aktivieren, wenn die Frage/der Beitrag noch nicht beantwortet wurde und unter Listen > Offene Threads erscheinen soll.
Beispieldatei hochladen

Bitte einen Nachrichtentext eingeben.