AW: Tabelle durchsuchen und dann msgbox
01.03.2018 09:21:43
Rainer
Hallo Markus,
so könnte es gehen:
Dazu musst aber in G1, H1, J1 usw. der gleiche Name eingetragen sein wie in Spalte A.
Also Hose und Hose1. Aber nicht Turnhose und Hose1.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim MyValue As String
If Target.Column 1 Then Exit Sub
On Error Resume Next
MyValue = Target
If Err.Number 0 Then Exit Sub
MyCloth = StringOhneZiffern(MyValue)
MyNumber = StringNurZiffern(MyValue)
MyCol = 6 + WorksheetFunction.Match(MyCloth, Range("G1:Z1"), 0)
MyRow = MyNumber + 1
If MyCol = "" Then Exit Sub
If MyRow = 1 Then Exit Sub
If Cells(MyRow, MyCol) Mod 5 = 0 Then
m1 = True
MsgBox "Kleidungstück Imprägnieren", vbOKOnly + vbExclamation, "Hinweis"
End If
End Sub
Public Function StringOhneZiffern(ByVal Text As Variant) As Variant
'Quelle: www.dbwiki.net oder www.dbwiki.de
Dim strText As String
Dim Zeichen As String
Dim i As Long
If IsNull(Text) Then
StringOhneZiffern = Null
Else
For i = 1 To Len(Text)
Zeichen = Mid(Text, i, 1)
If Not IsNumeric(Zeichen) Then
strText = strText & Zeichen
End If
Next i
End If
StringOhneZiffern = Trim(strText)
End Function
Public Function StringNurZiffern(ByVal Text As Variant) As Variant
'Quelle: www.dbwiki.net oder www.dbwiki.de
Dim strText As String
Dim Zeichen As String
Dim i As Long
If IsNull(Text) Then
StringNurZiffern = Null
Else
For i = 1 To Len(Text)
Zeichen = Mid(Text, i, 1)
If IsNumeric(Zeichen) Then
strText = strText & Zeichen
End If
Next i
End If
StringNurZiffern = Trim(strText) * 1
End Function