Stack-folks,Indice hors limites lors de la définition d'un classeur déjà ouvert, VBA
J'ai un problème troublant. J'écris une macro qui permet à un utilisateur de sélectionner et de travailler avec un classeur déjà ouvert. Après avoir obtenu le nom de l'utilisateur à l'aide d'un formulaire utilisateur, lorsque j'essaie de définir le classeur ou d'interagir avec celui-ci, j'obtiens un indice hors erreur. J'ai confirmé que le classeur est ouvert et que l'objet ExcelAp se connecte à la bonne instance d'Excel. Voici le code correspondant:
Option Explicit
....
Public Sub TerminalOpen()
Dim WorkbookOpen As VbMsgBoxResult
Dim ExcelAp As Excel.Application
Dim FedExWkbk As Excel.Workbook
....
Else
Set ExcelAp = Excel.Application
WorkbookSelection.Show
WkbkFedExTracking = Trim(VBA.Left(WkbkFedExTracking, InStr(1, WkbkFedExTracking, ".", vbTextCompare) - 1))
Set FedExWkbk = ExcelAp.Workbooks(WkbkFedExTracking) <<<<< This is where the error occurs
FedExWkbk.Activate
End If
Pour mémoire, j'ai aussi essayé liaison tardive du ExcelAp sans joie. Cette approche semble avoir fonctionné dans d'autres cas, mais n'est pas tout à fait si amicale dans celui-ci. Comme toujours, si vous pouvez donner des conseils, je suis tout ouïe!
EDIT: Je voulais juste ajouter que le nom du classeur est stocké dans la chaîne WkbkFedExTracking. Il est nettoyé uniquement au nom du classeur sans la partie .xlsx. Je voulais que cela soit clair. En outre, sur le débogage, j'ai vérifié cela par rapport au nom du classeur ouvert, et c'est correct.
Vérifiez à nouveau si WkbkFedExTrack le nom de l'un des classeurs ouverts. – Bathsheba
Il est, désolé de ne pas être clair à ce sujet dès le départ. Je l'ai ajouté dans les modifications il y a un instant. Je suis certain à 100% que c'est le nom du classeur approprié. – MattB
Quel est le nom réel du classeur? J'ai remarqué que vous utilisez 'InStr' qui trouvera le premier. au lieu de 'InStrRev' qui trouvera le dernier. Donc, si le nom du classeur est 'This.is.a.workbook.xls' alors votre code aurait' This' au lieu de 'This.is.a.workbook' – tigeravatar