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

Makro auswerten

Makro auswerten
21.05.2014 17:28:24
Mühlroth N.

Hallo Ich bin absoluter VBA-Neuling,
ich hab im Netz nach einem Makro gesucht, mit welchem ich eine Matrix mit zwei Suchkriterien durchsuchen lassen kann und bin auf Code unten gestoßen.
Allerdings weiß ich nicht genau, wie ich diesen anwenden soll/kann?
Könnt Ihr mir diesbezüglich weiter helfen ... am besten mit einem Beispiel.
=SverweisMit2Kriterien(???)
Vielen Dank
Mühlroth N.

Function SverweisMit2Kriterien(Blatt As Worksheet, SuchKriterium1 As String, SuchSpalte1 As  _
Long, SuchKriterium2 As String, SuchSpalte2 As Long, ErgebnisSpalte As Long) As Variant
Dim ZeileMax As Long
Dim Wsf As Worksheet

Function
Set Wsf = Application.Worksheet

Function
With Blatt
ZeileMax = Wsf.Max(.Cells(.Rows.Count, SuchSpalte1).End(xlUp).Row, .Cells(.Rows.Count,  _
SuchSpalte2).End(xlUp).Row)
strAdresseSpalte1 = Blatt.Name & "!" & Replace(.Range(.Cells(2, SuchSpalte1), .Cells(ZeileMax,   _
_
_
SuchSpalte1)).Address, "$", "")
strAdresseSpalte2 = Blatt.Name & "!" & Replace(.Range(.Cells(2, SuchSpalte2), .Cells(ZeileMax,   _
_
_
SuchSpalte2)).Address, "$", "")
strAdresseErgebnisSpalte = Blatt.Name & "!" & Replace(.Range(.Cells(2, ErgebnisSpalte), .Cells(  _
_
_
ZeileMax, ErgebnisSpalte)).Address, "$", "")
SverweisMit2Kriterien = Evaluate("=index(" & strAdresseErgebnisSpalte & _
",match(""" & SuchKriterium1 & SuchKriterium2 & """," & strAdresseSpalte1 & "&" & _
strAdresseSpalte2 & ",0))")
End With
End Function

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro auswerten
22.05.2014 09:43:58
Jack_d
Hallo Mühlroth
also eigentlich ist es "ganz einfach"
Es handelt sich hierbei um eine UDF -user defined function.
Was heisst das? Es ist eine selbst erstellte Formel die du aus der Mappe heraus aufrufst.
(also genauso wie wenn du in eine Zelle =Summe(A1:A3) eingibst.
Diese eignen sich wenn man wiederkehrende Berechnungen vereinfachen will.
Wichtig hierbei ist, wenn du die Mappe incl. der Formel an einen anderen Excel-User schickst, erhält dieser im Regelfall einen Bezugsfehler (Weil sein excel diese Formel nicht kennt).
Wie wendet man die von dir genannte Formel an
Das versteckt sich hier drin
SverweisMit2Kriterien(Blatt As Worksheet, SuchKriterium1 As String, SuchSpalte1 As  _
Long, SuchKriterium2 As String, SuchSpalte2 As Long, ErgebnisSpalte As Long)

Blatt = Das Arbeitsblatt in dem du arbeiten willst. (Ich versteh nur nicht warum das der "Erfinder" der Formel macht, aber das ist eine andere Frage
Suchkriterium1 = erklärt sich von selbst (1. Suchkriterium halt)
Suchspalte1 = erklärt sich auch von selbst (Die Spalte in der das erste Kriterium gesucht werden soll)Wichtig hier ist die Spaltennummer anzugeben (A=1; B=2 usw.))
Das gleiche wie für die ersten gilt auch für Kriterium 2 und Spalte 2
Ergebnisspalte ist dann die Rückgabespalte. (Wie beim sverweis) Ergebnisspalte ist hier aber auch die Spaltennummer (nicht der Versatz zur Suchspalte wie beim klassischen Sverweis)
praktisch sieht es dann so aus
=SverweisMit2Kriterien("Tabelle1", "Müller",1, "Bernd", 2, 3)
=SverweisMit2Kriterien("in Tabelle1"; Suche Müller, in Spalte1, mit dem vornamen Bernd, in Spalte2, und gib mir den korespondierenden Wert in SPalte 3 zurück)
So ich hoffe das war einigermaßen verständlich =)
Grüße

Anzeige
AW: Makro auswerten
22.05.2014 16:55:12
Mühlroth N.
Hallo Jack_d, vielen Dank für die schnelle und ausführliche Antwort.
Leider habe ich es mit deinem Lösungsansatz nicht hinbekommen. Den Code habe ich als Modul eingefügt.
Die Funktion wird auch erkannt (=SverweisMit2Kriterien(...)).
Allerdings komm ich nach wie vor nicht weiter, als Ergebnis erscheint #WERT!
- ich bin mir nicht sicher,ob ich die Suchkriterien mit oder ohne Ausrufezeichen eingeben soll?
- Du hattest die Eingabe mit Kommas getrennt (siehe hier, "=SverweisMit2Kriterien("Tabelle1", "Müller",1, "Bernd", 2, 3)", sollte die mit Semikolon gemacht werden?
- mit oder ohne Leerzeichen zwischen den Kommas/Semikolon?
--A-------------B----------C------------E
1 Muller--------Bernd------3------------SverweisMit2Kriterien("Tabelle1";"Muller";1;"Bernd5";2;3)
2 Muller--------Bernd2-----4
3 Muller--------Bernd3-----5
4 Muller--------Bernd4-----6
5 Muller--------Bernd5-----7
6 Muller--------Bernd6-----8
7 Muller--------Bernd7-----9
8 Muller--------Bernd8-----10
9 Muller--------Bernd9-----11
Anbei ein Beispiel, bei richtiger Nutzung sollte in Zelle E1 als Suchergebnis = 7 rauskommen.
Kannst du mir trotz des schönen Wetters ein Tipp geben, wo mein Fehler liegt.
Danke und einen schönen Tag noch, Norbert M.

Anzeige
AW: Makro auswerten
23.05.2014 16:28:12
Mühlroth N.
Hat keiner eine Lösung?

AW: Makro auswerten
27.05.2014 14:23:54
Mühlroth N.
Ich nehme an, dass bezüglich meines Makro-Problems nicht mehr geholfen wird.
Trotzdem danke.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige