ich habe viele Dateien mit jeweils mehreren Gültigkeitslisten der Form =INDIREKT("[Datei1.xls]Tabelle1!Bereich1").
Die Daten für die Gültigkeitslisten sind jetzt aber in der Datei Datei2.xlsm abgespeichert. Deshalb wollte ich die Gültigkeitslisten per VBA-Code in allen Dateien anpassen.
Wenn ich die Gültigkeitslsite von Hand ändern will, kommt die Fehlermeldung "Die Quelle untersucht gerade einen möglichen Fehler. Soll fortgefahren werden? " WEnn ich "ja" anklicke, wird die Gültigkeitsliste korrekt angepasst.
Für VBA habe ich folgenden Code zusammengebastelt:
For Each Blatt In wkb.Worksheets
For Each Zelle In Blatt.Range("A1:F100")
On Error Resume Next
TargetType = Zelle.Validation.Type
On Error GoTo 0
If TargetType = xlValidateList Then
If InStr(1, Zelle.Validation.Formula1, "Datei1.xls") Then
strGültigkeit = Zelle.Validation.Formula1
strGültigkeit = Replace(strGültigkeit, "Datei1.xls", "Datei2.xlsm")
Zelle.Validation.Modify Formula1:=strGültigkeit
End If
End If
TargetType = 0
Next Zelle
Next Blatt
Leider funktioniert das nicht. Fehlermeldung bei Validation.Modify ist "Anwendungs- oder objektdefinierter Fehler".
Wo liegt das Problem?
Danke für eure Hilfe!
Gruß Uppe