habe mir vor vielen Jahren eine umfangreiche Excel-Matrix programmieren lassen, deren Autor leider nicht mehr verfügbar ist :(
Nun haben sich Daten/Datensätze verändert und eine Funktion läuft nicht mehr - wie gewünscht. Vielleicht kann jemand helfen?
Funktionshintergrund:
Eine bestehende Tabelle wird mittels einer Importroutine aktualisiert. Hierbei gibt es pro Datensatz versch. Abfragen und Vergleiche. Sollten Datensätze nicht zu 100% übereinstimmen, wird eine Userform angezeigt. Hier kann der User den passenden DS anziehen oder andere Funktionen anreizen.
Problem:
Eines der zu importierenden Felder bestand bislang immer nur aus Zahlen (1234).
Das hat sich geändert, denn dieser Zahlenwert ist nun durch Buchstaben ergänzt worden. Diese Buchstaben können an unbestimmter Stelle stehen (B879, 55A1).
Die Importroutine erkennt diese Werte nicht mehr; wahrscheinlich weil in der Funktion (s.u.) eine Val() stattfindet?
Kann man diese Funktion umschreiben oder ändern, ohne Einfluss auf die gesamte restliche Prozedur zu nehmen und doch auch Zahlen-Buchstaben Kombinationen erkennen?
Der orig. Code:
Public Function ProjektBestimmen(strKuerzel) As String
Dim wks As Worksheet
Dim rngSuchbereich As Range
Dim rngZelle As Range
Set wks = ActiveWorkbook.Worksheets(cstrWksRefProj)
Set rngSuchbereich = wks.Range(cstrRangeRefProj)
For Each rngZelle In rngSuchbereich
'Problemzeile(?):
If rngZelle.Value = Val(strKuerzel) Then
ProjektBestimmen = wks.Cells(rngZelle.Row, 1).Value
End If
Next rngZelle
End Function
Die beiden nachfolgenden Versuche kehrten das Problem nur um (1) oder erzielten keine Lösung (2):
1. Verzicht auf Val():
2. Ergänzung durch "or", um beides abzufangen:
Danke für Eure Hilfe!
Gruß