How to read destination path after the SaveAs UI is used











up vote
0
down vote

favorite












I have a macro running in the Workbook BeforeSave event



Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
If SaveAsUI = True Then
'read destination path somehow
'perform business logic using the destination folder
End If
End Sub


Certain validation on the workbook content need to take place only if the file is saved to a certain destination, this may result in the save action being cancelled.



I have been unable to find a way to read what the user specified as the destination path. I need some help please as I am not a VBA specialist.










share|improve this question


























    up vote
    0
    down vote

    favorite












    I have a macro running in the Workbook BeforeSave event



    Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
    If SaveAsUI = True Then
    'read destination path somehow
    'perform business logic using the destination folder
    End If
    End Sub


    Certain validation on the workbook content need to take place only if the file is saved to a certain destination, this may result in the save action being cancelled.



    I have been unable to find a way to read what the user specified as the destination path. I need some help please as I am not a VBA specialist.










    share|improve this question
























      up vote
      0
      down vote

      favorite









      up vote
      0
      down vote

      favorite











      I have a macro running in the Workbook BeforeSave event



      Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
      If SaveAsUI = True Then
      'read destination path somehow
      'perform business logic using the destination folder
      End If
      End Sub


      Certain validation on the workbook content need to take place only if the file is saved to a certain destination, this may result in the save action being cancelled.



      I have been unable to find a way to read what the user specified as the destination path. I need some help please as I am not a VBA specialist.










      share|improve this question













      I have a macro running in the Workbook BeforeSave event



      Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
      If SaveAsUI = True Then
      'read destination path somehow
      'perform business logic using the destination folder
      End If
      End Sub


      Certain validation on the workbook content need to take place only if the file is saved to a certain destination, this may result in the save action being cancelled.



      I have been unable to find a way to read what the user specified as the destination path. I need some help please as I am not a VBA specialist.







      excel vba






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Nov 8 at 22:31









      Paul van Dinther

      107111




      107111
























          1 Answer
          1






          active

          oldest

          votes

















          up vote
          1
          down vote













          It appears to me the event fires before a destination path is chosen. You probably have to use the WorkbookAfterSave event and then perform the validation afterwards.



          https://docs.microsoft.com/en-us/office/vba/api/excel.application.workbookaftersave






          share|improve this answer





















          • No Sir, I don't believe you are correct. I am running the latest Office 365. When I click Save As under the File menu I get the rather specific Excel version of the "save as" dialog. The before save event is called only after I click on the Save button on the Save As dialog window. Therefore, I think the software knows the destination path and name already.
            – Paul van Dinther
            Nov 9 at 5:30










          • If the user clicks Browse on the Save As dialog, the BeforeSave event fires immediately before a folder can be chosen. However if the user clicks a "pinned" folder from the list of previously used folders, the event does not fire until the user subsequently clicks the Save button on the Save As dialog. Nevertheless, I don't believe Excel provides any means of determining which folder was chosen in the dialog. Of course if the save is not canceled, the path can be obtained from ActiveWorkbook.Path.
            – Dale Thompson
            Nov 11 at 20:43










          • You may disable the ability to use Save and Save As. Changes to an existing workbook may still be saved on close per the scenario in the following link. To provide an alternative means of Saving As in which the path is validated would probably require a custom procedure that displays the folder or file browser control and then saves if appropriate. extendoffice.com/documents/excel/…
            – Dale Thompson
            Nov 11 at 21:15













          Your Answer






          StackExchange.ifUsing("editor", function () {
          StackExchange.using("externalEditor", function () {
          StackExchange.using("snippets", function () {
          StackExchange.snippets.init();
          });
          });
          }, "code-snippets");

          StackExchange.ready(function() {
          var channelOptions = {
          tags: "".split(" "),
          id: "1"
          };
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function() {
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled) {
          StackExchange.using("snippets", function() {
          createEditor();
          });
          }
          else {
          createEditor();
          }
          });

          function createEditor() {
          StackExchange.prepareEditor({
          heartbeatType: 'answer',
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader: {
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          },
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          });


          }
          });














           

          draft saved


          draft discarded


















          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53217146%2fhow-to-read-destination-path-after-the-saveas-ui-is-used%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown

























          1 Answer
          1






          active

          oldest

          votes








          1 Answer
          1






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes








          up vote
          1
          down vote













          It appears to me the event fires before a destination path is chosen. You probably have to use the WorkbookAfterSave event and then perform the validation afterwards.



          https://docs.microsoft.com/en-us/office/vba/api/excel.application.workbookaftersave






          share|improve this answer





















          • No Sir, I don't believe you are correct. I am running the latest Office 365. When I click Save As under the File menu I get the rather specific Excel version of the "save as" dialog. The before save event is called only after I click on the Save button on the Save As dialog window. Therefore, I think the software knows the destination path and name already.
            – Paul van Dinther
            Nov 9 at 5:30










          • If the user clicks Browse on the Save As dialog, the BeforeSave event fires immediately before a folder can be chosen. However if the user clicks a "pinned" folder from the list of previously used folders, the event does not fire until the user subsequently clicks the Save button on the Save As dialog. Nevertheless, I don't believe Excel provides any means of determining which folder was chosen in the dialog. Of course if the save is not canceled, the path can be obtained from ActiveWorkbook.Path.
            – Dale Thompson
            Nov 11 at 20:43










          • You may disable the ability to use Save and Save As. Changes to an existing workbook may still be saved on close per the scenario in the following link. To provide an alternative means of Saving As in which the path is validated would probably require a custom procedure that displays the folder or file browser control and then saves if appropriate. extendoffice.com/documents/excel/…
            – Dale Thompson
            Nov 11 at 21:15

















          up vote
          1
          down vote













          It appears to me the event fires before a destination path is chosen. You probably have to use the WorkbookAfterSave event and then perform the validation afterwards.



          https://docs.microsoft.com/en-us/office/vba/api/excel.application.workbookaftersave






          share|improve this answer





















          • No Sir, I don't believe you are correct. I am running the latest Office 365. When I click Save As under the File menu I get the rather specific Excel version of the "save as" dialog. The before save event is called only after I click on the Save button on the Save As dialog window. Therefore, I think the software knows the destination path and name already.
            – Paul van Dinther
            Nov 9 at 5:30










          • If the user clicks Browse on the Save As dialog, the BeforeSave event fires immediately before a folder can be chosen. However if the user clicks a "pinned" folder from the list of previously used folders, the event does not fire until the user subsequently clicks the Save button on the Save As dialog. Nevertheless, I don't believe Excel provides any means of determining which folder was chosen in the dialog. Of course if the save is not canceled, the path can be obtained from ActiveWorkbook.Path.
            – Dale Thompson
            Nov 11 at 20:43










          • You may disable the ability to use Save and Save As. Changes to an existing workbook may still be saved on close per the scenario in the following link. To provide an alternative means of Saving As in which the path is validated would probably require a custom procedure that displays the folder or file browser control and then saves if appropriate. extendoffice.com/documents/excel/…
            – Dale Thompson
            Nov 11 at 21:15















          up vote
          1
          down vote










          up vote
          1
          down vote









          It appears to me the event fires before a destination path is chosen. You probably have to use the WorkbookAfterSave event and then perform the validation afterwards.



          https://docs.microsoft.com/en-us/office/vba/api/excel.application.workbookaftersave






          share|improve this answer












          It appears to me the event fires before a destination path is chosen. You probably have to use the WorkbookAfterSave event and then perform the validation afterwards.



          https://docs.microsoft.com/en-us/office/vba/api/excel.application.workbookaftersave







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Nov 8 at 22:51









          Dale Thompson

          436




          436












          • No Sir, I don't believe you are correct. I am running the latest Office 365. When I click Save As under the File menu I get the rather specific Excel version of the "save as" dialog. The before save event is called only after I click on the Save button on the Save As dialog window. Therefore, I think the software knows the destination path and name already.
            – Paul van Dinther
            Nov 9 at 5:30










          • If the user clicks Browse on the Save As dialog, the BeforeSave event fires immediately before a folder can be chosen. However if the user clicks a "pinned" folder from the list of previously used folders, the event does not fire until the user subsequently clicks the Save button on the Save As dialog. Nevertheless, I don't believe Excel provides any means of determining which folder was chosen in the dialog. Of course if the save is not canceled, the path can be obtained from ActiveWorkbook.Path.
            – Dale Thompson
            Nov 11 at 20:43










          • You may disable the ability to use Save and Save As. Changes to an existing workbook may still be saved on close per the scenario in the following link. To provide an alternative means of Saving As in which the path is validated would probably require a custom procedure that displays the folder or file browser control and then saves if appropriate. extendoffice.com/documents/excel/…
            – Dale Thompson
            Nov 11 at 21:15




















          • No Sir, I don't believe you are correct. I am running the latest Office 365. When I click Save As under the File menu I get the rather specific Excel version of the "save as" dialog. The before save event is called only after I click on the Save button on the Save As dialog window. Therefore, I think the software knows the destination path and name already.
            – Paul van Dinther
            Nov 9 at 5:30










          • If the user clicks Browse on the Save As dialog, the BeforeSave event fires immediately before a folder can be chosen. However if the user clicks a "pinned" folder from the list of previously used folders, the event does not fire until the user subsequently clicks the Save button on the Save As dialog. Nevertheless, I don't believe Excel provides any means of determining which folder was chosen in the dialog. Of course if the save is not canceled, the path can be obtained from ActiveWorkbook.Path.
            – Dale Thompson
            Nov 11 at 20:43










          • You may disable the ability to use Save and Save As. Changes to an existing workbook may still be saved on close per the scenario in the following link. To provide an alternative means of Saving As in which the path is validated would probably require a custom procedure that displays the folder or file browser control and then saves if appropriate. extendoffice.com/documents/excel/…
            – Dale Thompson
            Nov 11 at 21:15


















          No Sir, I don't believe you are correct. I am running the latest Office 365. When I click Save As under the File menu I get the rather specific Excel version of the "save as" dialog. The before save event is called only after I click on the Save button on the Save As dialog window. Therefore, I think the software knows the destination path and name already.
          – Paul van Dinther
          Nov 9 at 5:30




          No Sir, I don't believe you are correct. I am running the latest Office 365. When I click Save As under the File menu I get the rather specific Excel version of the "save as" dialog. The before save event is called only after I click on the Save button on the Save As dialog window. Therefore, I think the software knows the destination path and name already.
          – Paul van Dinther
          Nov 9 at 5:30












          If the user clicks Browse on the Save As dialog, the BeforeSave event fires immediately before a folder can be chosen. However if the user clicks a "pinned" folder from the list of previously used folders, the event does not fire until the user subsequently clicks the Save button on the Save As dialog. Nevertheless, I don't believe Excel provides any means of determining which folder was chosen in the dialog. Of course if the save is not canceled, the path can be obtained from ActiveWorkbook.Path.
          – Dale Thompson
          Nov 11 at 20:43




          If the user clicks Browse on the Save As dialog, the BeforeSave event fires immediately before a folder can be chosen. However if the user clicks a "pinned" folder from the list of previously used folders, the event does not fire until the user subsequently clicks the Save button on the Save As dialog. Nevertheless, I don't believe Excel provides any means of determining which folder was chosen in the dialog. Of course if the save is not canceled, the path can be obtained from ActiveWorkbook.Path.
          – Dale Thompson
          Nov 11 at 20:43












          You may disable the ability to use Save and Save As. Changes to an existing workbook may still be saved on close per the scenario in the following link. To provide an alternative means of Saving As in which the path is validated would probably require a custom procedure that displays the folder or file browser control and then saves if appropriate. extendoffice.com/documents/excel/…
          – Dale Thompson
          Nov 11 at 21:15






          You may disable the ability to use Save and Save As. Changes to an existing workbook may still be saved on close per the scenario in the following link. To provide an alternative means of Saving As in which the path is validated would probably require a custom procedure that displays the folder or file browser control and then saves if appropriate. extendoffice.com/documents/excel/…
          – Dale Thompson
          Nov 11 at 21:15




















           

          draft saved


          draft discarded



















































           


          draft saved


          draft discarded














          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53217146%2fhow-to-read-destination-path-after-the-saveas-ui-is-used%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          Guess what letter conforming each word

          Port of Spain

          Run scheduled task as local user group (not BUILTIN)