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

Detaillierte Auswertung einer Zelle

Detaillierte Auswertung einer Zelle
07.07.2023 10:47:02
Jakob

Hallo Zusammen,
ich bin ziemlicher VBA Neuling und bräuchte mal ein Code Review/ eure Hilfe. Ich habe eine Spalte mit sehr viel Information pro Zelle, die ausgewertet werden muss. Ich habe verschiedene Tabellenblätter angelegt und wollte nun mit einem VBA Code die Zellinformation überprüfen, zum entsprechenden Tabellenblatt verweisen, dort einen passenden Wert nehmen und auf dem Ursprungsblatt in eine andere Spalte übertragen.
Mein Code gibt keinerlei Fehler aus, aber führt auch generell keine Aktion durch. Habe ich irgendwo etwas vergessen oder einen dummen Fehler eingebaut? Bin für jede Hilfe Dankbar!
Hier ein Beispielcode von meiner Herangehensweise:

Sub BeispielPrüfung()
Dim rng As Range
Dim cell As Range
Dim sucheA() As Variant
Dim sucheB() As Variant
Dim Inhalt As Variant
Dim ergebnisWert As Variant
Set rng = Worksheets("test").Range("D1:D10")

sucheA = Array("AA", "AB", "AC")
sucheB = Array("BA", "BB", "BC")

For Each cell In rng
    Inhalt = cell.Value
    If IstInA(Inhalt, sucheA) Then
        ergebnisWert = detailSucheA(Inhalt)
        cell.Offset(0, 1).Value = ergebnisWert
    ElseIf IstInB(Inhalt, sucheB) Then
        ergebnisWert = detailSucheB(Inhalt)
        cell.Offset(0, 1).Value = ergebnisWert
    End If
Next cell
End Sub

Function IstInA(Wert As Variant, arr As Variant) As Boolean
Dim element As Variant
For Each element In arr
    If element = Wert Then
        IstInA = True
        Exit Function
    End If
Next element
IstInA = False
End Function

Function detailSucheA(Inhalt As Variant) As Variant
If InStr(1, Inhalt, "AA-0,25") > 0 Then
    FAZ = Worksheets("AA").Range("B2").Value
ElseIf InStr(1, ÜberprüfeInhalt, "AZ-1,5") > 0 Then
    FAZ = Worksheets("AZ").Range("C5").Value
Exit Function
End If

End Function


2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Detaillierte Auswertung einer Zelle
07.07.2023 13:16:48
JoWE
Hallo Jacob,

ich sehe die Function IstInA
aber nicht die Function IstInB.
Das gleiche gilt für die Functions
detailSucheA bzw. detailSucheB
Die B-Versionen werden im Makro
BeispielPrüfung() genutzt.
Gibt's die, aber Du hast die Dir hier nur gespart?
Ebenfalls fehlt für mein Verständnis eine Beispiel-Arbeitsmappe,
(mit anonymisierten Daten).
Ohne würde es heißen: "Auf blauen Dunst hin" raten.

Gruß
Jochen


AW: Detaillierte Auswertung einer Zelle
07.07.2023 21:30:31
Pappawinni
Setze doch mal vor deinen Code
Option explicit
Dann sollte dir Debugger Arbeit geben.

Anzeige

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige