Может ли объявление события иметь необязательный аргумент?Например:
public event MyEvent (Optional MyArgument as string)
Я попытался безуспешно, и я хотел убедиться, что это действительно так.
Нет, они не могут. Посмотрите на https://docs.microsoft.com/en-us/office/vba/language/reference/user-interface-help/event-statement:
Вы можете объявлять аргументы событий так же, как вы делаете аргументы процедур, со следующими исключениями: события не могут иметьименованные аргументы, необязательные аргументы или ParamArray аргументы.События не имеют возвращаемых значений.