Независимо от того, скрыт ли Sub в списке макросов, зависит от его области действия (например, public, private).Если вы сделаете Sub частным, он не будет указан в списке макросов.
'This sub is public
Public Sub myPublicSub()
MsgBox "hello world"
End Sub
'This sub is also public
Sub mySub()
MsgBox "hello world"
End Sub
'This sub is private
Private Sub myPrivateSub()
MsgBox "hello world"
End Sub
Модули классов используются для создания классов, которые, вероятно, бесполезны или необходимы для вашего решения (если код работает скак вы хотите сейчас).
Если это для клиента, я бы настоятельно рекомендовал упаковывать его как .xlam (надстройка Excel 2007+) и узнавать, как настроить ленту для включения кнопки для вашегомакросы.Список макросов не особенно пригоден для использования.(см. http://openxmldeveloper.org/archive/2006/05/25/CustomUIeditor.aspx для бесплатного XML-редактора ленты «Вложения» внизу статьи. См. http://www.rondebruin.nl/ribbon.htm для некоторых руководств)
Для защиты вашего кода от просмотра /украденный проект VBA может быть защищен паролем, но это не следует считать надежной защитой.