Hallo mein Excel-VBA Projekt näher sich langsam dem ende,
jedoch stehe ich jetzt noch vor einer größeren Problemstellung. Ich habe folgende Tabellen
Eingabe
Teile
Ergebnisse1
Ergebnisse2
In dem Tabellnblatt "Eingabe" werden ID-Nummern eingegeben, welche dann in der Tabelle "Teile" gesucht werden. Im Anschluss werden die gefundenen Zeilen in das Tabellenblatt "Ergebnisse1" eingetragen. Nun möchte ich das Makro in soweit erweitern dass eine Fallauswahl getroffen wird wo gespeichert werden soll. Wahlweise in Tabelle "ergebnisse1" oder "Ergebnisse2" die Auswahl soll anhand einer Überprüfung des Inahltes einer bestimmten Zelle z.b. A1 im Tabellenblat "Eingabe" erfolgen. Dieses kann zwei Werte annhemen 1 oder 2 Entsprechend soll gespeichert werden. Mein erster Ansatz war nur eine Ergebnisstabelle zu haben jedoch benötige ich die einzelnen Zeilen für berechnungen. Diese sind mit wenn dann funktionen mit anderen Arbeitsblätttern verbunden und erzeugen entsprechnd beim löschen einen leeren Inahlt.
Ich hoffe man kann meine Problemstellung nachvollziehen....
Hier mein bisheriger Code dank mithilfe von Crazy Tom:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim c As Range
Dim lngZiel As Long
Dim varSuche As Variant
If Not Intersect(Target, Range("D7")) Is Nothing Then
With Sheets("Ergebnisse")
lngZiel = .Cells(.Rows.Count, 3).End(xlUp).Row + 1
End With
varSuche = Range("D7").Value
With Sheets("Teile")
Set c = .Columns(32).Find(varSuche, LookIn:=xlValues, lookat:=xlWhole)
If Not c Is Nothing Then
' .Cells(c.Row, 1).Resize(1, 32).Copy Sheets("Ergebnisse").Cells(lngZiel, 1)
' .Rows(c.Row).Copy Sheets("Ergebnisse").Cells(lngZiel, 1)
.Rows(c.Row).Copy Sheets("Ergebnisse").Cells(lngZiel, 1)
Sheets("Ergebnisse").Cells(lngZiel, 33).Value = Range("L7").Value
Sheets("Ergebnisse").Cells(lngZiel, 34).Value = Range("N10").Value
MsgBox "Bauteil wurde in die Stückliste aufgenommen"
Call Limitierung
Call Legogesicht
Else
Call suchen
ActiveWorkbook.Sheets("Eingabe").Unprotect
If LCase(Range("D7")) = "141" Then
MsgBox ("Beginn Entwicklung Cockpit")
End If
End sub
Vielen lieben Dank
|