ich habe eine Tabelle mit mehreren Spalten. Mit der =SVERWEIS Funktion lasse ich mir die gewünschten Werte anzeigen.
Ist es möglich die angezeigten Werte in den Spalten zu ändern so dass sie in die Matrix übernommen werden?
Oder brauche ich da eine andere Formel?
Schön wäre es wie in der Masken Funktion nur fest in einer / mehren Zellen/Spalten in das Arbeitsblatt integriert ist. So wie mit der Sverweis Funktion wo leider nur anzeigen funktioniert.
Oder ich hätte eine Zelle in der ich einen Wert aus Spalte A eingebe und Excel Spring in die gesuchte Zelle in der Arbeitsmappe damit ich den Wert in der dazugehörigen Zelle ändern kann, also ähnlich wie „Suchen“
Deine Beschreibung ist leider sehr wischiwaschi und allgemein gehalten, von daher kann ich dir auch nur eine allgemeingültige Antwort geben. Eine Formel kann niemals Festwerte ändern. Für genauere Infos wirst du schon eine Beispielmappe hochladen müssen, in der erkennbar wird, was du möchtest.
Das geht nur mit VBA und die Formeln in J3:M3 brauchst du dabei dann nicht. Kopiere den Code und füge ihn in das Modul des Tabellenblatts ein, in dem deine Liste steht.
Code:
Private Sub Worksheet_Change(ByVal Target As Range) Dim Suche As Range If Not Application.Intersect(Range("I3"), Target) Is Nothing Then Set Suche = Columns(1).Find(Range("I3"), LookIn:=xlValues, lookat:=xlWhole) If Not Suche Is Nothing Then Application.EnableEvents = False Range(Cells(Suche.Row, 3), Cells(Suche.Row, 6)).Copy Range("J3").PasteSpecial xlPasteValues Application.CutCopyMode = False Application.EnableEvents = True End If End If
If Not Application.Intersect(Range("K3:L3"), Target) Is Nothing Then Set Suche = Columns(1).Find(Range("I3"), LookIn:=xlValues, lookat:=xlWhole) If Not Suche Is Nothing Then Application.EnableEvents = False Range("K3:L3").Copy Range(Cells(Suche.Row, 4), Cells(Suche.Row, 5)).PasteSpecial xlPasteValues Application.CutCopyMode = False Application.EnableEvents = True End If End If
Klicke mit der rechten Maustaste auf den Reiter des betreffenden Tabellenblatts und wähle "Code anzeigen". Es öffnet sich der VBA-Editor. Im großen weißen Fenster fügst du den Code genauso ein, wie er oben steht (also alles ab "Private Sub" bis inkl. "End Sub"). Danach kannst du den VBA-Editor wieder schließen. Wenn du nun in I3 eine ArtNr eingibst, werden die passenden Werte in J3:M3 eingefügt. Änderst du was in K3 oder L3, werden diese Änderungen in die Liste übernommen.
Du musst deine Datei allerdings als .xlsm (Exceldatei mit Makros) abspeichern, sonst ist der Code beim nächsten Öffnen weg.
Zitat:leider gibt er mir beim Speicher mit Makro Fehlermeldungen und es ist dann trotzdem beim nächsten öffnen weg
es ist Dir doch schon geschrieben worden, eine Datei mit Makros kann nicht die Endung *.xlsx haben, weil eine Datei mit dieser Endung mit Makros nichts anzufangen weiß und sie darum rausschmeißt.
Makrodateien müssen zwingend mit der Endung *.xlsb oder *.xlsm gespeichert werden.