2015-08-07 16 views
0

Так что я получаю сообщение об ошибке в начале моего кода, ошибку, которую я не использовал, чтобы получить последний раз, когда я открыл и отредактировал код VBA. Есть идеи? Вот часть этого. Когда я пытаюсь выполнить код, я получаю сообщение об ошибке: «Требуется объект», а моя подстрока (первая строка) выделена. Любые идеи, как я могу это исправить?Excel vba - Требуемая ошибка объекта на подстроке

Sub ManagerCashflow() 
    '---------------------------Declare all the variables--------------------------- 
    '------Define object names------ 
    'Dim i As Integer 
    'Dim c As Integer 
    Dim AUM_Cash_Projections_folder_pathname As String 
    Dim AUM_Cash_Projections_FOLDER_YEARMONTH_pathname As String 
    Dim AUM_Cash_Projections_filename_DATE As String 
    Dim AUMCshf_wb As Workbook 
    Dim MngrCshF_wb As Workbook 
    'Dim CshF_lr As Integer 
    'Dim PE_r As Integer 
    'Dim lstmanager_r As Integer 


    '------Set/call the objects to a destination------ 
    'Worksheets 
    'Manager Cashflow 
    Set MngrCshF_wb = ThisWorkbook 
    Set MCF_Current_ws = MngrCshF_wb.Sheets("Sheet1") 

    'AUM Cash Projections 
    Set AUM_Cash_Projections_folder_pathname = "https://iportal.casey.org/Risk Management/CFP Reporting/AUM Cash Projection" 
    Set AUM_Cash_Projections_FOLDER_YEARMONTH_pathname = Right(MCF_Current_ws.Cells(2, 1).Value, 7) 
    Set AUM_Cash_Projections_filenamedate = MCF_Current_ws.Cells(2, 1).Value 
    Set AUMCshf_wb = Workbooks.Open(AUM_Cash_Projections_folder_pathname + "/" + AUM_Cash_Projections_FOLDER_YEARMONTH_pathname + "/" + AUM_Cash_Projections_filenamedate) 

    Set CshF_ws = AUMCshf_wb.Sheets("CashFlow + Projections") 
     'Master Data with all of the current managers 
    Set CurrAssets_ws = AUMCshf_wb.Sheets("Master Data") 
    '... a bunch of other code that works.... 
End Sub 
+0

Вам не нужно устанавливать строку. AUM_Cash_Projections_folder_pathname = "https: без установленного значения. – MatthewD

ответ

0

Не знаете, почему этого не произошло раньше. Вам не нужно использовать set для назначения значения строке.

AUM_Cash_Projections_folder_pathname = "https://iportal.casey.org/Risk Management/CFP Reporting/AUM Cash Projection" 
AUM_Cash_Projections_FOLDER_YEARMONTH_pathname = Right(MCF_Current_ws.Cells(2, 1).Value, 7) 
AUM_Cash_Projections_filenamedate = MCF_Current_ws.Cells(2, 1).Value 

Вам также необходимо объявить MCF_Current_ws и другие рабочие листы. Это не скажет вам, если у вас нет «Option Explicit» в верхней части вашего кода, но это хорошо сделать.

Dim MCF_Current_ws as Excel.Worksheet 
+0

Одним из последствий отсутствия опции" Option Explicit "является создание новой переменной, называемой' AUM_Cash_Projections_filenamedate', а не 'AUM_Cash_Projections_filename_DATE' –

Смежные вопросы