Можно ли в окне Экселя изменить иконку и убрать в заголовке окна надпись Microsoft Excel?

Здравствуйте,

Большое спасибо за столь подробный ответ !!! Даже не ожидал, что кто-то будет готов потратить столько времени для решения моей задачи.

Я тут нашел в настройках Экселя такую вещь: меню сервис, потом параметры, вкладка общие, там есть опция 'Игнорировать DDE запросы от других приложений'. Я поставил галочку напротив, но в итоге вообще все файлы .xls при двойном щелчке по ним перестали открываться. Копия Экселя создается, но при этом файл там не открывается. Может, здесь можно что-нибудь сделать?

На самом деле я нашел другой способ решения моей задачи. В файле Экселя создаем такие модули с такими кодами:

(1) В модуле класса такой код:

Visual BasicВыделить код

1
2
3
4
5

Public WithEvents Appl As Application
 
Private Sub Appl_WorkbookOpen(ByVal Wb As Workbook)
    Wb.Close
End Sub

(2) В обычном модуле:

Visual BasicВыделить код

1
2
3
4
5
6
7
8
9

Dim X As New EventClassModule
 
Sub InitializeApp()
Set X.Appl = Application
End Sub
 
Sub Auto_Open()
InitializeApp
End Sub

В итоге у нас получается, что как только мы пытаемся открыть файл в том же окне, он открывается, потом возникает событие WorkbookOpen объекта Application (это совсем не то, что событие Workbook_Open !!! :-) и выполняется закрытие файла. Можно сделать так, чтобы после этого этот же файл открылся в новом окне.

Мне здесь не нравится только то, что возникает мельтешение, связанное с тем, что на экране мелькает открываемый файл, который сначала открывается, потом возникает событие, и затем он быстро закрывается. Буду пытаться использовать Application.ScreenUpdating и, думаю, все должно получиться.

Я тут еще подумал о том, что если создавать программу на VB, и использовать Эксель для вычислений, то последний должен быть скрытым. Но при этом если у нас он скрыт, и пользователь открывает другой файл Эксель, невидимый Эксель появляется. Короче, опять та же проблема: открываемые файлы должны появляться в новом Экселе.

Наконец, хотел спросить, если делать все вычисления в VB, то будет ли это работать так же быстро, как в Экселе? У меня в Экселе рассчитываются около 10 000 ячеек (наверное, даже больше), причем в каждой из них используются сложные формулы с функцией нормального распределения. Эксель пересчитывает все ячейки за доли секунды. Как у него это получается, я не знаю. Будет ли все работать так же быстро, если делать вычисления в VB?

Еще раз большое спасибо за оказанное внимание !