Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1952to1956
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

SVERWEIS auf andere Tabelle und Wert übertagen

SVERWEIS auf andere Tabelle und Wert übertagen
20.11.2023 12:14:44
JürgenL
Ich versuche aus einem anderen Tabellenbatt einen Wert zu ermitteln und diesen dann zu übertragen.
folgenden Daten liegen zugrunde: siehe Anhang https://www.herber.de/bbs/user/164446.xlsx
Aus Tabelle Aufträge über Spalte G = Auftraggeber die entsprechende Preislisten ermitteln.
Danach über Spalten H=Kilometer und J=Tour in der Matrix den gültigen Wert ermitteln und in Tabelle Aufträge Spalte F übertragen.
Hinweis: In Spalte J= Tour nur beschriftete Spalten verarbeiten.
Zudem gilt noch folgende Regel:
Bei Pl Euroleasing müssen die Kilometer bei Tour ABA bzw ABC + die darauffolgende leerspalte zusammenaddiert werden.
bei allen anderen bitte nur die KM der beschrifteten Spalte verwenden
Beispiel
Zeile 1 spalte J = ABC = 512 Km
Zeile 2 Splate J = leer + 178 Km macht zusammen 690 Km . Hier gilt PL Euroleasing
in der Matrix wird folgender Preis ermittelt Spalte ABC KM 690 (nächsthöhere = 700) ermittelter Preis = 413 Euro
Beispiel 2
Zeile 3 spalte J = ABA = 470 Km
Zeile 4 Splate J = leer = 0 Km Hier gilt die PL Schultz = 470 Km
in der Matrix wird folgender preis ermittelt Spalte ABA Km 470 (nächsthöhere = 500) ermittelter preis = 369,00 Euro
Beispiel 3
Zeile 5 Spalte J = AB = 338 Km Hier gilt die PL Senger
in der Matrix wird folgender preis ermittelt Spalte AB Km 338 (nächsthöhere = 350) ermittelter preis = 253,00 Euro
ich hoffe mir jemand helfen kann, danke im voraus

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: SVERWEIS auf andere Tabelle und Wert übertagen
20.11.2023 12:55:36
Alwin Weisangler
Hallo Jürgen,

mit VBA würde es unter der Voraussetzung, dass das Namens- und Datenchaos aufgeräumt wird, gehen.
Mit Formeln, da Preislisten auf verschiedenen Tabellenblättern angelegt sind, ist dies nur mit unverhältnismäßig langen Wenns Formeln machbar und bei kleinsten Veränderungen stehst du wieder vor demselben Problem.
Würde ein VBA Lösung helfen?

Gruß Uwe
AW: wäre schon mit Formeln ermittelbar ...
20.11.2023 13:13:23
neopa C
Hallo Jürgen,

... dazu wäre auch WENN() nicht unbedingt notwendig sondern ich würde im wesentlichen WENNFEHLER(), INDIREKT() und AGGREGAT() dafür einsetzen
Alternativ dazu und zu einer VBA-Lösung käme evtl. auch eine Power Query (PQ) Lösung in Frage.

Gruß Werner
.. , - ...
Anzeige
AW: wäre schon mit Formeln ermittelbar ...
20.11.2023 13:49:14
Alwin Weisangler
Hallo Miteinander,

mit nur wenigen Anpassungen wäre VBA Lösung so:

Blatt "Aufträge" Spalte G:
Euroleasing
Euroleasing
Schultz
Schultz
Senger

in ein allgemeines Modul:


Option Explicit

Sub SummeErmitteln()
Dim arrAnbieter(), i&, j&, k&, varKM&, varTarif$, kmSum&
For i = 1 To Sheets.Count
If ThisWorkbook.Worksheets(i).Name > "Aufträge" Then
j = j + 1
ReDim Preserve arrAnbieter(1 To j)
arrAnbieter(j) = Sheets(i).Name
End If
Next i
With Sheets("Aufträge")
For i = 2 To .Cells(Rows.Count, 7).End(xlUp).Row
varKM = .Cells(i, 8)
varTarif = .Cells(i, 10)
For j = 1 To UBound(arrAnbieter)
If InStr(1, .Cells(i, 7), Mid(arrAnbieter(j), 4, Len(arrAnbieter(j)) - 2), vbTextCompare) > 0 Then
With Sheets(arrAnbieter(j))
For k = 7 To .Cells(Rows.Count, 1).End(xlUp).Row
If .Cells(k, 1) >= varKM Then
If varTarif = "AB" Then kmSum = .Cells(k, 3)
If varTarif = "ABA" Then kmSum = .Cells(k, 4)
If varTarif = "ABC" Then kmSum = .Cells(k, 5)
Exit For
End If
Next k
End With
.Cells(i, 11) = kmSum
kmSum = 0
End If
Next j
Next i
End With
End Sub

https://www.herber.de/bbs/user/164449.xlsm
Gruß Uwe
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige