HERBERS Excel-Forum - das Archiv
Suchen einsetzten
Julia

Hallo,
ich hab im Tabellenblat "Input" meine Basis. Dort steht in Spalte A der Schlüssel. Daneben B-J stehen Informationen zu diesem Schlüssel.
In einem anderen Tabellenblatt "Auftrag" schreibe ich jetzt einen von mir ausgesuchten Schlüssel händisch rein (in Spalte A).
Jetzt brauch ich ein Makro welches mir bestimmte Daten aus dem Blatt "Input" in das Blatt "Auftrag" übernimmt.
Also in Auftrag schreibe ich zum Beispiel "Schlüssel-12" dann soll das Makro in im Blatt "Input" Schlüssel 12 suchen. Und spalte H und I in die Spalte B und C von "Auftrag" importieren.
Findet das Makro den Schlüssel nicht, dann soll eine MsgBox darüber infomrieren.
Eine Idee?

AW: Suchen einsetzten
Hajo_Zi

Hallo Julia,
warum Makro?
benutze doch SVERWEIS(), ich vermute den Schlüssel giibt es nur 1x
http://www.kmbuss.de/Excel-CD/sverweis.html

AW: Suchen einsetzten
Julia

Weil es auf Knopfdruck dazugeschrieben werden soll
Ist leichter für die Sachbearbeitung
Wäre das mit Makro möglich?
AW: Suchen einsetzten
Uduuh

Hallo,
im Code von "Auftrag"
Private Sub Worksheet_Change(ByVal Target As Range)
Dim varA, varB
On Error GoTo ERRHDL
If Target.Column = 1 Then
Application.EnableEvents = False
varA = Application.VLookup(Target.Value, Sheets("input").Range("A:J"), 8, 0)
varB = Application.VLookup(Target.Value, Sheets("input").Range("A:J"), 9, 0)
If IsError(varA) Or IsError(varB) Then
MsgBox "Fehler", , ""
Else
Target.Offset(, 1) = varA
Target.Offset(, 2) = varB
End If
End If
ERRHDL:
Application.EnableEvents = True
End Sub
Gruß aus’m Pott
Udo

AW: Suchen einsetzten
Tino

Hallo,
teste mal diesen Code
kommt als Code in die Tabelle Auftrag
Option Explicit 
 
Private Sub Worksheet_Change(ByVal Target As Range) 
Dim rngBereich As Range 
Dim varRow 
 
'Zelle anpassen wo Du reinschreiben möchtest, hier A2 
If Target(1).Address = "$A$2" Then 
   varRow = Application.Match(Target(1).Value, Sheets("Input").Columns(1), 0) 
   If IsNumeric(varRow) Then 
        Application.EnableEvents = False 
            Cells(Target.Row, 2) = Sheets("Input").Cells(varRow, 8) 
            Cells(Target.Row, 3) = Sheets("Input").Cells(varRow, 9) 
        Application.EnableEvents = True 
   Else 
        MsgBox Target(1).Value & " wurde nicht gefunden" 
   End If 
End If 
End Sub 
 

Gruß Tino
Mit Bsp xls
Julia

Hi,
habe eine Bsp hochgeladen:
https://www.herber.de/bbs/user/66564.zip
Kann man das Makro auch über einen Button starten?
Im gelben Feld wird händisch eingetragen. Ort und Bearbeiter werden aus Input gezogen.
Wenn es den händisch eingetragenen Schlüssel in Input nicht gibt soll eine MsgBox informieren.
Julia
AW: Mit Bsp xls
Tino

Hallo,
so mit einem Button
https://www.herber.de/bbs/user/66565.xls
Gruß Tino
Danke Danke Danke
Julia

Klappt super ;)