Jörg: VBA, Excel, dynamisch Funktionen zuweisen

Beitrag lesen

Moin,

Und das "Cancel" hilft wobei?

setze es mal auf true: ;-)

cancel = true

Damit wird die eigentliche Funktion des Doppelklicks (Editiermodus der Zelle) nicht ausgeführt.

Ja, "aber" dann habe ich Deinen Codeschnippsel vielleicht missverstanden. Ich möchte nicht testen ob string "bla" im Range B1:B10 vorkommt, sondern ob "Name1" als Tabellenblatt in Workbook "Abc" vorkommt. So dass ich Workbooks.open("Abc.xls") mach kann um dann mit Workbooks("Abc.xls").Worksheets("Name1") darauf zugreifen kann, ohne einen Fehler zu bekommen Worksheet "Name1" does not exist oder was dann kommen würde.

Dann haben wir aneinander vorbeigeredet - ich war wohl irritiert, weil Du von Blattnamen in der Tabelle schriebst.

Dann gibt es zwei Möglichkeiten:

1. Du gehst mit einer Schleife über die Blätter

dim bolVorhanden as boolean, objBlatt as object
bolvorhanden = false
for each objblatt in workbooks("XYZ").sheets
if objblatt.name = "XXX" then bolvorhanden = true: exit for
next

2. Du provozierst einen Fehler und behandelst den:

dim varA

on error goto nichtvorhanden
vara = workbooks("XXX").sheets("YYY").range("A1")
goto vorhanden

NICHTVORHANDEN:
Dein Code, wenn das Blatt fehlt

VORHANDEN:
Hier geht es weiter

err.clear
on error goto 0

Viele Grüße

Jörg