Live-Forum - Die aktuellen Beiträge
Datum
Titel
25.10.2025 08:21:40
24.10.2025 18:10:41
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Formel, die Werte in anderem Tabellenblatt sucht

Formel, die Werte in anderem Tabellenblatt sucht
06.03.2018 08:31:32
Alba
Hallo zusammen
ich habe ein Problem.
Ich brauche eine Formel die folgendes macht:
Im Tabellenblatt „Werkstoffaufstellung“ ab Spalte I6 die eingegebenen Werte im Tabellenblatt „Bleche“ suchen.
Und die gefundenen Werte im Tabellenblatt „Werkstoffaufstellung“ wie folgend ergänzen:
„Blech“ Spalte E = Spalte H „Werkstoffaufstellung“
„Blech“ Spalte D = Spalte G „Werkstoffaufstellung“
„Blech“ Spalte C = Spalte F „Werkstoffaufstellung“
„Blech“ Spalte B = Spalte E „Werkstoffaufstellung“
„Blech“ Spalte A = Spalte D „Werkstoffaufstellung“
Wenn kein passender Wert gefunden wird sollte die UserForm2 Automatisch aufgehen wo man die fehlenden Werte ergänzen kann.
Im Anhang eine Beispieldatei.
https://www.herber.de/bbs/user/120223.zip
Danke im Voraus für jede Hilfe!!!!
Anzeige

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Formel, die Werte in anderem Tabellenblatt sucht
06.03.2018 09:39:22
Schießer
Hallo
Ich habe mir den bereits existierenden Code NICHT angesehen...


Dieser muss in den Codebereich von Blatt Werkstoffaufstellung
Er wird ausgeführt, wenn in Spalte I ab Zeile 6 eine Änderung erfolgt
Option Explicit 
Private Sub Worksheet_Change(ByVal Target As Range) 
    On Error GoTo Fehler 
    If Not Intersect(Range("I:I"), Target) Is Nothing Then 
        If Target.Row < 6 Then Exit Sub 
        If Target.Count > 1 Then 
            MsgBox "Bitte einzeln bearbeiten" 
            With Application 
                .EnableEvents = False 
                .Undo 
                .EnableEvents = True 
            End With 
            Exit Sub 
        End If 
         
        Dim TbB As Worksheet 
        Dim Zeile As Double, FFind As Integer, SP As Integer 
         
        Set TbB = Sheets("Bleche") 
        FFind = 6 ' Finde in Spalte F 
         
        'prüfen ob vorhanden 
        If WorksheetFunction.CountIf(TbB.Columns(FFind), Target.Value) > 0 Then 
            Zeile = WorksheetFunction.Match(Target.Value, TbB.Columns(FFind), 0) 
            For SP = 1 To 5 
                If TbB.Cells(Zeile, SP) = "" Then 
                    UserForm2.TextBox89 = Target.Value 
                    UserForm2.Show 
                Else 
                    Application.EnableEvents = False 
                    Target.Offset(0, -6 + SP) = TbB.Cells(Zeile, SP) 
                    Application.EnableEvents = True 
                End If 
            Next 
        Else 
            Application.EnableEvents = False 
            Target.Offset(0, -5).Resize(1, 5).ClearContents 
            Application.EnableEvents = True 
            UserForm2.TextBox89 = Target.Value 
            UserForm2.Show 
        End If 
         
    End If 
    '*** Fehlerbehandlung 
    Err.Clear 
Fehler: 
    Application.EnableEvents = True 
    If Err.Number <> 0 Then MsgBox "Fehler: " & _
        Err.Number & vbLf & Err.Description: Err.Clear 
End Sub 

LG UweD
Anzeige
AW: Formel, die Werte in anderem Tabellenblatt sucht
06.03.2018 12:19:44
Alba
Hallo Uwe
Dankeschön dein Code funktioniert soweit super!!!!
Nur müsste ich immer wieder mehrere Zeilen einfügen (Leider immer Unterschiedlich viele) und das kann ich nicht mehr da kommt immer eine MsgBox "Bitte einzeln bearbeiten" kann man das noch ändern?
Gruß
Alba82
AW: Formel, die Werte in anderem Tabellenblatt sucht
06.03.2018 14:42:44
UweD
Hallo nochmal
dann so?
Private Sub Worksheet_Change(ByVal Target As Range)
    On Error GoTo Fehler
    If Not Intersect(Range("I:I"), Target) Is Nothing Then
        If Target.Row < 6 Then Exit Sub
         
        Dim TbB As Worksheet
        Dim Zeile As Double, FFind As Integer, SP As Integer, Z
         
        Set TbB = Sheets("Bleche")
        FFind = 6 ' Finde in Spalte F 
         
        For Each Z In Target
            'prüfen ob vorhanden 
            If WorksheetFunction.CountIf(TbB.Columns(FFind), Z.Value) > 0 Then
                Zeile = WorksheetFunction.Match(Z.Value, TbB.Columns(FFind), 0)
                For SP = 1 To 5
                    If TbB.Cells(Zeile, SP) = "" Then
                        UserForm2.TextBox89 = Z.Value
                        UserForm2.Show
                    Else
                        Application.EnableEvents = False
                        Z.Offset(0, -6 + SP) = TbB.Cells(Zeile, SP)
                        Application.EnableEvents = True
                    End If
                Next
            Else
                Application.EnableEvents = False
                Z.Offset(0, -5).Resize(1, 5).ClearContents
                Application.EnableEvents = True
                UserForm2.TextBox89 = Z.Value
                UserForm2.Show
            End If
        Next
         
    End If
    '*** Fehlerbehandlung 
    Err.Clear
Fehler:
    Application.EnableEvents = True
    If Err.Number <> 0 Then MsgBox "Fehler: " & _
        Err.Number & vbLf & Err.Description: Err.Clear
End Sub

LG UweD
Anzeige
AW: Formel, die Werte in anderem Tabellenblatt sucht
07.03.2018 09:19:09
Alba
Hallo UweD,
jetzt kommt leider immer beim Einfügen "Fehler: 1004 Anwendungs- oder objektdefinierter Fehler :-(
Gruß
Alba
AW: Formel, die Werte in anderem Tabellenblatt sucht
07.03.2018 09:19:12
Alba
Hallo UweD,
jetzt kommt leider immer beim Einfügen "Fehler: 1004 Anwendungs- oder objektdefinierter Fehler :-(
Gruß
Alba
AW: Formel, die Werte in anderem Tabellenblatt sucht
07.03.2018 09:35:22
UweD
Wie werden denn die Werte dort eingetragen?
Über die Tabelleneingabe selbst? Dann funktioniert das so;
oder über die Userform? Den Code lese ich mir nicht komplett durch? Da bin ich dann raus.
LG UweD
Anzeige
AW: Formel, die Werte in anderem Tabellenblatt sucht
07.03.2018 10:57:20
Alba
Die Werte werden über die UserForm und direkt über das Tabellenblatt.
Der Fehler kommt aber wenn ich direkt im Tabellenblatt Zeilen einfüge nicht wenn ich Daten eingebe.
Kann es daran liegen das ich verbundene Zeilen unten drunter habe?
Gruß
Alba
AW: Formel, die Werte in anderem Tabellenblatt sucht
07.03.2018 11:03:31
UweD
gib mir nochmal eine aktuelle Datei, wo das aktuelle Makro drin ist.
Ja. kann an verbundenen Zellen liegen (die man immer vermeiden sollte)
Anzeige
AW: Formel, die Werte in anderem Tabellenblatt sucht
07.03.2018 11:36:50
Alba
Hier nochmal die Datei.
https://www.herber.de/bbs/user/120255.zip
Leider lässt sich die Verbundene Zeile nicht vermeiden.
Ich Kopiere immer die Zeile 6 und füge sie unten drunter wieder ein (mit Rahmen) manchmal habe ich 1 Pos. mal über 100 deswegen immer das Kopieren.
LG
Alba
Anzeige
AW: Formel, die Werte in anderem Tabellenblatt sucht
07.03.2018 11:50:59
UweD
Hi
hilft das?
Es wird geprüft, ob eine ganze Zeile markiert ist..
Private Sub Worksheet_Change(ByVal Target As Range)
    On Error GoTo Fehler
    If Target.Address = Target.EntireRow.Address Then Exit Sub ' wenn ganze Zeile markiert ist
    If Not Intersect(Range("I:I"), Target) Is Nothing Then
        If Target.Row < 6 Then Exit Sub
         ...
LG UweD
Anzeige
AW: Formel, die Werte in anderem Tabellenblatt sucht
07.03.2018 12:35:32
Alba
Hi UweD
Super aller besten Dank Klappt perfekt!
Lg
Alba
Prima! Danke für die Rückmeldung. owT
07.03.2018 12:39:09
UweD
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige