Мы недавно переключились с Windows 7 на Windows 10, и один из макросов в нашем файле не работает. Я получаю сообщение об ошибке компиляции: Sub или Function не определены для строки «Call doRep».
Я пытался пересобрать файл на ПК с Windows 10, но все еще получаю ту же ошибку. Ниже приведен скрипт, который я использую.
Dim cvsApp As New ACSUP.cvsApplication
'Dim cvsConn As New ACSCN.cvsConnection
Dim cvsSrv As New ACSUPSRV.cvsServer
Dim Rep As New ACSREP.cvsReport
Dim Info As Object, Log As Object, B As Object
Dim logged As Boolean
Dim sk As String
Public Sub CMSUPDATE()
If ThisWorkbook.Sheets("CMS").Range("L1").Value = "" Then
MsgBox ("Please Type Skills to update Tool =/")
Else
On Error GoTo e:
Application.ScreenUpdating = True
Application.ScreenUpdating = False
If (ActiveSheet.Name = "Handoff Log 4" Or ActiveSheet.Name = "Handoff Log 3") Then
sk = ThisWorkbook.Sheets(ActiveSheet.Name).Range("F1").Value
Else
sk = ThisWorkbook.Sheets("CMS").Range("M1").Value
End If
ThisWorkbook.Sheets("CMS").Range("E2:Q21").ClearContents
Set cvsSrv = cvsApp.Servers(1)
Call doRep("Real-Time\Designer\Rock: Split/Skill Report w/ Backup&OCC{}", sk)
ThisWorkbook.Sheets("CMS").Range("E2").PasteSpecial
ThisWorkbook.Sheets("CMS").Range("A2:C21").ClearContents
Set cvsSrv = cvsApp.Servers(1)
Call doRep("Real-Time\Designer\RTA-GUA-AVTIME", sk)
ThisWorkbook.Sheets("CMS").Range("A2").PasteSpecial
logout
Application.ScreenUpdating = True
If UCase(Environ("UserName")) = "RMelecia" Then
Range("$A$22").FormulaR1C1 = "RM"
Else
Range("$A$22").FormulaR1C1 = Mid(UCase(Environ("UserName")), 1, 2)
End If
e:
If Err.Number <> 91 Then
MsgBox "Make sure you are logged in CMS. Relaunch CMS and this file if you are still getting this error."
End If
End If
End Sub
Предполагается, что в отчете будет запущен отчет "Real-Time \ Designer \ Rock: Split / Skill Report w / Backup & OCC {}" в CMS и вставленизвлеченное значение в файле Excel.