У меня есть основная база данных Access 2016, которую я использую для контроля версий и исправления ошибок. После завершения исправления иногда я создаю базу данных для копирования необходимых исправлений в базу данных пользователей. Недавно у нас возникла проблема, когда формат отчета в моей базе данных отличается от базы данных пользователей после исправления. Как и почему формат отчета изменяется при экспорте из одной базы данных в другую? Проблема заключается в ширине текстового поля в отчете об изменениях, которая затем выходит за рамки. Любая помощь по этому вопросу? Мой код ниже для передачи отчетов.
Public Function FixDB()
Dim sDBName As String
Dim fF As Object
Dim tdf As TableDef
Dim qdf As QueryDef
sDBName = SelectFile
For Each tdf In CurrentDb.TableDefs
If tdf.Attributes = 0 Then
DoCmd.TransferDatabase acExport, "Microsoft Access", sDBName, acTable, tdf.Name, tdf.Name, False
End If
Next
For Each qdf In CurrentDb.QueryDefs
If Left(qdf.Name, 1) <> "~" Then
DoCmd.TransferDatabase acExport, "Microsoft Access", sDBName, acQuery, qdf.Name, qdf.Name, False
End If
Next
For Each fF In CurrentProject.AllReports
DoCmd.TransferDatabase acExport, "Microsoft Access", sDBName, acReport, fF.Name, fF.Name, False
Next
MsgBox "UPDATES COMPLETE!", vbOKOnly, "UPDATES"
DoCmd.Quit
End Function
Public Function SelectFile()
Dim sEXT As String
Dim fd As FileDialog
Set fd = Application.FileDialog(msoFileDialogFilePicker)
sEXT = "*.accdb"
With fd
.AllowMultiSelect = False
.InitialFileName = sEXT
.title = "Select the Database to Repair"
If .Show Then
SelectFile = .SelectedItems(1)
Else
'stop execution if nothing selected
End If
End With
Set fd = Nothing
End Function
Таблицы и запросы передаются просто отлично, меняются только отчеты.
Спасибо, Пэт