У меня есть база данных Access, которая создает файлы и сохраняет их в Sharepoint во внутренней сети. В двух случаях файлы являются документами Word, и сохранение их в Sharepoint работает нормально. Два файла представляют собой электронные таблицы Excel, и сохранение их с помощью команды save или savecopy не работает. Последний файл - PowerPoint, и сохранить его тоже не удается.
Сохранение Word, которое работает, выглядит следующим образом:
Set objWord = New Word.Application
Set objDoc = objWord.Documents.Add
objWord.Visible = True
Set objSelection = objWord.Selection
Set objRange = objDoc.Range
Creation of document
Dim SPAddress As String
SPAddress = GetSPAddress(iProjectId) & "ProjectFactSheet_" & sSiteName & "_" & Format(Now(), "yyyymmddhhnnss") & ".docx"
objDoc.SaveAs SPAddress
Ошибка сохранения в Excel выглядит следующим образом:
Set oExcelApp = CreateObject("Excel.Application")
oExcelApp.Visible = True
oExcelApp.AskToUpdateLinks = False
oExcelApp.DisplayAlerts = False
oExcelApp.Workbooks.Open ("c:\apps\" & strReportName)
SPAddress = GetSPAddress()
oExcelApp.ActiveWorkbook.SaveAs SPAddress & strReportName
- savecopyas также получает ошибку.
Сбой из-за невозможности доступа к имени файла. Возможно, файл поврежден и находится на сервере, который не отвечает или не только для чтения.
Public Function GetSPAddress(Optional lngQuaID As Long) As String
GetSPAddress = ""
If IsNull(lngQuaID) Or lngQuaID = 0 Then
GetSPAddress = DLookup("SPBasePath", "AppData")
Else
If IsNull(DLookup("[SPPath]", "QualificationLog", "[QuaID] = " & lngQuaID)) Then
GetSPAddress = DLookup("SPBasePath", "AppData")
Else
GetSPAddress = DLookup("[SPPath]", "QualificationLog", "[QuaID] = " & lngQuaID)
End If
End If
End Function