Choix dossier enregistrement word depuis excel

Debutant vba -  
 Jojo -
Bonjour,

Je voudrais savoir s'il est possible par une macro d'enregistrer un fichier word depuis excel.

Je m'explique. Je lance une macro qui ouvre un fichier word le modifie et j'aimerais voir ensuite apparaître la boite de dialogue "Enregistrer sous" afin que l'utilisateur puisse éventuellement renommer le fichier et choisir le dossier d'enregistrement.

Merci d'avance pour vos réponses

4 réponses

  1. Draydi Messages postés 13 Date d'inscription   Statut Membre Dernière intervention  
     
    Bonjour,

    Un début de chemin qui permet d'enregistrer un fichier word avec des données dans un emplacement prédéfini, bonne suite :

    Sub test1()
    'definition
    Dim FichierWord As Object

    Set FichierWord = CreateObject("Word.Application")
    ' Création document
    FichierWord.Documents.Add
    ' Ecriture dans document
    FichierWord.Selection.TypeText "hello world !"
    ' Sauvegarde
    FichierWord.ActiveDocument.SaveAs "D:\QUALIFLEX\test.doc"
    ' Fermeture
    Set FichierWord = Nothing
    End Sub
    0
    1. Jojo
       
      Je t'aime, c'est exactement ce que je cherche depuis 3 heures !
      0
    2. Jojo
       
      Sinon pour faire choisir le répertoire de sauvegarde à l'utilisateur j'avais ça (copie le sur ton compilateur, tu y veras plus clair :) ) :
      Dim WordApp As Word.Application
      Dim WordDoc As Word.Document

      Set WordApp = CreateObject("word.application") 'ouvre session word et le fichier voulu
      'J'ouvre un document sur internet directement sinon mettre quelque chose comme : "D:\Jonathan\Mes documents\Application Traitement Work Package\test.docx"
      Set WordDoc = WordApp.Documents.Open("https://subversion.sqli.com/svndev/TO4658/trunk/doc/020_Qualite_Normes/Modeles_Documents/AMS-EIIBTF_MOD_ChangeProposal_V1.0_modele.docx")

      WordApp.Visible = True
      WordApp.Dialogs(wdDialogFileSaveAs).Show
      0
  2. Debutant vba
     
    Merci Draydi pour tes réponses. Je suis parvenu à ouvrir mon fichier word depuis excel et le modifier.

    J'aimerais désormais avoir la boite de dialogue "enregistrer sous" qui permettra à l'utilisateur de choisir le dossier d'enregistrement du fichier WORD.

    Merci d'avance.
    0
  3. Draydi Messages postés 13 Date d'inscription   Statut Membre Dernière intervention  
     
    Code pour ouvrir un nouveau document word :
    Sub ouvrirdoc()
    Dim objWord As Object
    Set objWord = CreateObject("Word.application")
    With objWord
    .Visible = True
    .Documents.Add
    End With
    End Sub

    code pour afficher l'enregistrer sous :

    Application.Dialogs(wdDialogFileSaveAs).Show

    A vous de jouer :)
    0
  4. cs_Le Pivert Messages postés 8437 Statut Contributeur 730
     
    Bonjour,

    Comme ceci:

    Option Explicit
    Dim chemin, nom As String
    Private Sub CommandButton1_Click()
        Dim wordapp As Object
        Set wordapp = CreateObject("word.Application")
        wordapp.Visible = True
        wordapp.Documents.Open "C:\chemin document.docx"
        SelectionDossier_source
        If chemin <> "" Then 'Si la valeur est différente de "" on affiche le résultat
       nom = InputBox("Entrez le nom", "Enregistrer") 'La variable reçoit la valeur entrée dans l'InputBox
       If nom <> "" Then 'Si la valeur est différente de "" on affiche le résultat
          wordapp.ActiveDocument.SaveAs chemin & "\" & nom & ".docx"
      ' Fermeture de ce document :
      wordapp.ActiveDocument.Close
      Set wordapp = Nothing
           Else
           MsgBox "Vous devez saisir un nom de fichier valide!"
          Unload UserForm1
           ' Fermeture de ce document :
      wordapp.ActiveDocument.Close
    Set wordapp = Nothing
        End If
        Else
           MsgBox "Vous devez choisir un répertoire d'enregistrement!"
          Unload UserForm1
           ' Fermeture de ce document :
      wordapp.ActiveDocument.Close
    Set wordapp = Nothing
        End If
    End Sub
    Sub SelectionDossier_source()
    With Application.FileDialog(msoFileDialogFolderPicker)
            'Définit un titre pour la boîte de dialogue
            .Title = "Choisissez le dossier pour l'enregistrement du document"
            'Affiche la boîte de dialogue
            .Show
     'Affiche le nom du dossier sélectionné
            If .SelectedItems.Count > 0 Then
                chemin = .SelectedItems(1)
              End If
       End With
    End Sub
    


    @+ Le Pivert
    0