Привет, Я работаю над проектом, где я должен позволить пользователям открывать excel, пока пользовательская форма открыта. Я могу перемещаться по другим файлам excel, но не по одному из Explorer.Please Это было бы очень полезно для меня.Невозможно открыть Excel из проводника при открытии пользовательской формы
Option Explicit
Private Sub Workbook_Open()
Application.OnTime Now, "ThisWorkbook.OnlyOneOfMe"
Dim wks As Worksheet
For Each wks In ActiveWorkbook.Worksheets
wks.Protect Password:="Nothing", _
UserInterfaceOnly:=True
Next wks
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
'important to reset this
Application.IgnoreRemoteRequests = False
End Sub
Private Sub OnlyOneOfMe()
Dim XlApp As Excel.Application
On Error Goto BAD
With Application
If Me.ReadOnly Or .Workbooks.Count > 1 Then
Me.ChangeFileAccess Mode:=xlReadOnly
Set XlApp = New Excel.Application
XlApp.Visible = True
XlApp.Workbooks.Open (Me.FullName)
Goto BAD
Else
'stop opening from explorer (but not from excel)
.Visible = False
.IgnoreRemoteRequests = True
UserForm1.Show
.Visible = True
.Quit
End If
Exit Sub
End With
BAD: If Err Then MsgBox Err.Description, vbCritical, "ERROR"
Set XlApp = Nothing
Me.Close False
End Sub
Вы можете описать немного больше о том, что вы пытаетесь сделать? И что вы пытаетесь разрешить? (Это будет слишком много для * комментария *, пожалуйста, обновите/пересмотрите оригинал Q). Я вижу, что вы меняете «Me.ChangeFileAccess» только для чтения, а затем открываете книгу в новом экземпляре Excel. Проблема в том, что этот новый экземпляр тогда не отвечает? Почему вы открываете тот же файл в двух экземплярах Excel? –
Hi David Я новичок в кодировании VB. Мой вопрос заключается в том, что у меня есть этот файл excel, в котором пользовательский формат открывается на событие workbook_open. Мне не удалось просмотреть листы Excel раньше, поскольку пользовательская форма использовалась для покрытия всего Excel. После добавления вышеприведенного кода я могу просмотреть все excel, кроме одного из Explorer, который имеет формат Xls. Пожалуйста, помогите мне в этом. Если это неверно, обновите приведенный выше код. – user2842252
Требуется ли пользователю возможность управлять книгами, которые уже открыты? –