Флажки, установленные в VBA для PDF, не остаются проверенными - PullRequest
0 голосов
/ 20 апреля 2020

Привет. Весь этот код прекрасно работает при заполнении формы VA 28-1905 с листа в Excel. Однако флажки не остаются отмеченными. Они проверяются при первоначальном сохранении формы, но при повторном ее открытии флажки не устанавливаются. Я не знаю, как решить это. Любая помощь будет оценена. Я не программирую все время, так что если у вас есть предложения по улучшению, которые также были бы замечательными.

Я пробовал objJSO.flattenpages, но я получаю NotAllowedError: настройки безопасности запрещают доступ к этому свойству или методу. Если я остановлю код перед сохранением, все заполнится правильно, но после сохранения флажки будут сброшены на 0.

Этот код был адаптирован из кода Христоса Самараса.

            'Enable screen flickering.
            Application.ScreenUpdating = True

'            'All checkboxes to checked
                objAcroApp.Show

                objJSO.GetField(strFieldNames(22)).Value = 1
                objJSO.GetField(strFieldNames(23)).Value = 1
                objJSO.GetField(strFieldNames(24)).Value = 1
                objJSO.GetField(strFieldNames(25)).Value = 1
                objJSO.GetField(strFieldNames(26)).Value = 1
                objJSO.GetField(strFieldNames(27)).Value = 1
                objJSO.GetField(strFieldNames(28)).Value = 1
                objJSO.GetField(strFieldNames(52)).Value = 1



                'Veteran's Vocation Choice set focus
                objAcroApp.Show
                objJSO.GetField(strFieldNames(5)).SetFocus

                Application.Wait Now + 0.00001
                'Application.SendKeys "{Tab}", True
                Application.SendKeys "{right}", True



            'Create the output path with the term and class .pdf
            Dim w
            If x = 4 Then
                w = LastRow
            Else
                w = x - 1
             End If

            refFile = "\" & oSheet & "." & w & ".pdf"

            strPDFOutPath = strPDFOutPath & refFile



            'Save the form as new PDF file.
            objAcroPDDoc.Save 2, strPDFOutPath


            'Close the form without saving the changes.
            objAcroAVDoc.Close True


            'Close the Acrobat application.
            objAcroApp.Exit

            'Release the objects.
            Set objJSO = Nothing
            Set objAcroPDDoc = Nothing
            Set objAcroAVDoc = Nothing
            Set objAcroApp = Nothing


        Else

            MsgBox "Could not open the file!", vbCritical, "File error"

            'Close the Acrobat application.
            objAcroApp.Exit

            'Release the objects and exit.
            Set objAcroAVDoc = Nothing
            Set objAcroApp = Nothing
            Exit Sub

        End If

    i = w
    Next i

End With

Next p

    'Inform the user that forms were filled.
    MsgBox "All forms were created successfully!", vbInformation, "Finished"



End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...