Я могу вспомнить о трех проблемах
- Сначала может возникнуть проблема инициализации, я инициализировал n = 0
Sub UserForm_Initialize()
Dim n As Long
n = 0
Do
n = n + 1
Me.ListBox1.AddItem Workbooks(n).Name
Loop Until n = Workbooks.Count
End Sub
Во-вторых, форма принимает список книг, когда вы его открываете, поэтому логически он не будет искать книгу, открытую после ее инициализации
третья проблемаможет быть в окне Excel.Ваша форма возьмет рабочие книги в одном окне Excel, если вы откроете два экземпляра, он не будет принимать книги Excel из этого.В качестве примера рассмотрим следующие случаи.
a.Если дважды щелкнуть файл Excel, он откроется в том же окне.
b.Когда вы нажимаете кнопку Открыть в уже существующем окне Excel и открывает файл, он открывается в том же окне
c.Когда вы открываете другой Excel из ярлыка Excel, вы открываете другой Excel, и любой файл в этом Excel не будет включен в вашу форму.
Мои знания ограничены несколькими версиями Excel, возможно, в других версиях.разные, но в тех, что я видел, это могут быть случаи.