Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Membre éclairé Avatar de Souriane
    Femme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    septembre 2009
    Messages
    470
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Canada

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Service public

    Informations forums :
    Inscription : septembre 2009
    Messages : 470
    Points : 665
    Points
    665

    Par défaut Ouvrir en écriture un fichier "Lecture seule recommandée"

    Bonjour,

    Je veux savoir comment ouvrir en VBA un fichier en mode **écriture** lorsqu’il y a l’option « Lecture seule recommandée » dessus.

    Je ne parle pas ici de l'attribut que l'on peut changer à partir d'Explorer mais de l'attribut ActiveDocument.ReadOnly (combiné avec ActiveDocument.ReadOnlyRecommended).

    Avec un batch, j'ai besoin de faire un "search & replace" régulièrement dans une centaine de fichiers dont la moitié est en mode « Lecture seule recommandée » et je ne veux pas avoir à renommer chaque fichier lors de sa sauvegarde.

    Merci pour vos suggestions.

    Souriane
    __________________________________
    Une question bien posée est à moitié résolue!

    Merci de ne pas oublier de mettre RÉSOLU quand le sujet l'est. Cela aide tous les DVPnautes dans leur recherche

  2. #2
    Expert éminent

    Homme Profil pro
    Développeur Vba Excel
    Inscrit en
    avril 2013
    Messages
    3 574
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur Vba Excel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : avril 2013
    Messages : 3 574
    Points : 9 124
    Points
    9 124
    Billets dans le blog
    26

    Par défaut

    Citation Envoyé par Souriane Voir le message
    Bonjour Souriane,

    Tu as un exemple ? En privé si problème.
    Eric KERGRESSE
    https://sites.google.com/site/erickergresseeirl/
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter

  3. #3
    Membre éclairé Avatar de Souriane
    Femme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    septembre 2009
    Messages
    470
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Canada

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Service public

    Informations forums :
    Inscription : septembre 2009
    Messages : 470
    Points : 665
    Points
    665

    Par défaut

    Citation Envoyé par Eric KERGRESSE Voir le message
    Tu as un exemple ?

    Ci-joint un document "en lecture seule recommandée"
    Fichiers attachés Fichiers attachés
    __________________________________
    Une question bien posée est à moitié résolue!

    Merci de ne pas oublier de mettre RÉSOLU quand le sujet l'est. Cela aide tous les DVPnautes dans leur recherche

  4. #4
    Expert éminent

    Homme Profil pro
    Développeur Vba Excel
    Inscrit en
    avril 2013
    Messages
    3 574
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur Vba Excel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : avril 2013
    Messages : 3 574
    Points : 9 124
    Points
    9 124
    Billets dans le blog
    26

    Par défaut

    Citation Envoyé par Souriane Voir le message
    Ma solution consiste à ouvrir le fichier et à le sauvegarder en tant que fichier provisoire en enlevant l'option Lecture seule recommandée. Ce fichier reste ouvert pour permettre sa modification. A la fermeture, le fichier retrouve son nom d'origine et reprend l'option Lecture seule recommandée.

    Ouverture
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
     
    Option Explicit
     
    Public Repertoire As String, FichierNouveauNom As String, FichierProvisoire As String
     
    Sub OuvrirFichierLectureSeuleRecommandee()
     
    Dim Fd As FileDialog
    Dim VrtSelectedItem As Variant
     
        Repertoire = "C:\Users\Eric\Downloads\"
        FichierNouveauNom = ""
        ChDir Repertoire
        Set Fd = Application.FileDialog(msoFileDialogFilePicker)
     
        With Fd
            If .Show = -1 Then
               For Each VrtSelectedItem In .SelectedItems
                   FichierNouveauNom = VrtSelectedItem
               Next VrtSelectedItem
            End If
        End With
     
        If FichierNouveauNom <> "" Then
     
           Select Case LCase(Split(FichierNouveauNom, ".")(1))
                  Case "docx"
                       FichierProvisoire = "Fichier provisoire.docx"
                  Case "docm"
                        FichierProvisoire = "Fichier provisoire.docm"
           End Select
     
            Documents.Open FileName:=FichierNouveauNom, _
                           ConfirmConversions:=False, ReadOnly:=True, AddToRecentFiles:=False, _
                           PasswordDocument:="", PasswordTemplate:="", Revert:=False, _
                           WritePasswordDocument:="", WritePasswordTemplate:="", Format:= _
                           wdOpenFormatAuto, XMLTransform:=""
            With ActiveDocument
                .ReadOnlyRecommended = False
            End With
            ActiveDocument.SaveAs2 FileName:= _
                                   Repertoire & FichierProvisoire, FileFormat:= _
                                   wdFormatXMLDocument, LockComments:=False, Password:="", AddToRecentFiles _
                                   :=True, WritePassword:="", ReadOnlyRecommended:=False, EmbedTrueTypeFonts _
                                   :=False, SaveNativePictureFormat:=False, SaveFormsData:=False, _
                                   SaveAsAOCELetter:=False, CompatibilityMode:=14
     
        End If
     
        Set Fd = Nothing
     
     
    End Sub

    Fermeture
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
     
    Sub FermetureFichierLectureSeuleRecommandee()
     
    Dim I As Integer
    Dim Continuer As Boolean
     
        Continuer = False
     
        For I = 1 To Documents.Count
            If Documents(I).Name = FichierProvisoire Then Continuer = True
        Next I
     
        If Continuer = True And FichierNouveauNom <> "" Then
     
            Select Case LCase(Split(FichierProvisoire, ".")(1))
                  Case "docx"
                       Documents(FichierProvisoire).SaveAs2 FileName:= _
                                 FichierNouveauNom, FileFormat:= _
                                 wdFormatXMLDocument, LockComments:=False, Password:="", AddToRecentFiles _
                                 :=True, WritePassword:="", ReadOnlyRecommended:=False, EmbedTrueTypeFonts _
                                 :=False, SaveNativePictureFormat:=False, SaveFormsData:=False, _
                                 SaveAsAOCELetter:=False, CompatibilityMode:=14
                  Case "docm"
                       Documents(FichierProvisoire).SaveAs2 FileName:= _
                                 FichierNouveauNom, FileFormat:= _
                                 wdFormatXMLDocumentMacroEnabled, LockComments:=False, Password:="", AddToRecentFiles _
                                 :=True, WritePassword:="", ReadOnlyRecommended:=False, EmbedTrueTypeFonts _
                                 :=False, SaveNativePictureFormat:=False, SaveFormsData:=False, _
                                 SaveAsAOCELetter:=False, CompatibilityMode:=14
           End Select
     
           With Documents(FichierNouveauNom)
                .ReadOnlyRecommended = True
                .Close savechanges:=True
           End With
     
        End If
     
     End Sub
    Eric KERGRESSE
    https://sites.google.com/site/erickergresseeirl/
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter

Discussions similaires

  1. [AC-2010] Access VBA : Ouvrir un explorateur de fichiers en lecture seule
    Par lio33 dans le forum VBA Access
    Réponses: 4
    Dernier message: 15/02/2018, 19h47
  2. ouvrir le fichier en lecture seule
    Par p'tite Sandrine dans le forum Access
    Réponses: 3
    Dernier message: 22/09/2006, 15h13
  3. Réponses: 8
    Dernier message: 09/08/2005, 12h44
  4. Réponses: 7
    Dernier message: 05/08/2005, 17h32
  5. [PDE] Editeur de fichiers en lecture seule
    Par simsky dans le forum Eclipse Java
    Réponses: 7
    Dernier message: 13/07/2005, 13h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo