Question Comment puis-je actualiser un document ouvert dans Excel en mode lecture seule?


J'ai un document Excel stocké sur un serveur SharePoint, que j'ai toujours ouvert sur mon ordinateur en mode lecture seule, car je dois y faire référence.

De temps en temps, pour obtenir les dernières modifications, je dois fermer le fichier et le recharger à nouveau. Existe-t-il des options dans Excel 2007 qui me permettent d’actualiser simplement un document ouvert en mode lecture seule sur la dernière version du serveur?

Mieux encore, y a-t-il un moyen de procéder de manière dynamique sans que je doive frapper un rafraîchissement?


8
2017-11-04 00:45


origine


J'essayais juste la même chose - on dirait que la réponse est toujours "NON", il n'y a pas de rafraîchissement de style F5 pour Excel. J'ai aussi trouvé impossible d'ouvrir un fichier à partir de la liste la plus récemment utilisée par Excel en lecture seule (vous devez aller dans le navigateur de fichiers avant de pouvoir le faire) ... et vous ne pouvez pas rendre votre feuille de calcul actuellement ouverte en lecture seule ... Et Excel vous permet d'entrer du texte dans une feuille de calcul en lecture seule ... Tout cela est très ennuyeux. - Bill K


Réponses:


Cela pourrait aider:

un auteur de classeur peut créer un classeur qui actualise automatiquement les données externes lorsque le classeur est ouvert en sélectionnant la case à cocher Actualiser les données à l'ouverture du fichier dans la boîte de dialogue Propriétés de la connexion.

C'est où je l'obtiens C'est un article intéressant. est-ce que cela aide?


0
2017-11-04 02:37





La solution de Yuval pourrait suffire, mais uniquement si les modifications sont limitées au contenu de la cellule. Inquirer n'a pas indiqué si c'est le cas. Néanmoins, que se passe-t-il si le changement que vous souhaitez prendre consiste à ajouter (voire à supprimer) des feuilles de travail dans le classeur?

Sorte de solution fragile et cinglante: stockez une macro dans votre PERSONAL.XLS (B) masqué pour effectuer une fermeture périodique (en reprogrammant elle-même) le classeur et rouvrir. PERSONAL.XLS (B) doit être trouvé à % USERPROFILE% \ AppData \ Roaming \ Microsoft \ Excel \ XLSTART \)

Sub wkbRefresher()
    Dim refreshedWorkbook As Workbook
    Dim WkBks As Workbooks

    'full filepath
    fPath = "c:\tmp\mutatingWorkbook.xls"
    'in HH:MM:SS format:
    refreshInterval = "00:05:00"

    For i = 1 To Application.Workbooks.Count
        Debug.Print (Application.Workbooks.Item(i).FullName)
        If LCase(Application.Workbooks.Item(i).FullName) = LCase(fPath) Then
            Debug.Print ("  Yep thats the one! Lets refresh it.")
            Application.Workbooks.Item(i).Close
            'refreshedWorkbook = WkBks.Open(fPath, True, True)
            Set refreshedWorkbook = Excel.Application.Workbooks.Open(fPath, True, True)
        End If
    Next i

    ' Use at your own risk: this is an "asynchronous", the execution cannot be stopped by merely pressing the stop button in the VBA interface.
    ' You might have to do something like put a break marker on the line OnTime line so that next time around, it doesn't respawn itself.
    Application.OnTime Now + TimeValue(refreshInterval), "wkbRefresher"
End Sub

Bien sûr, le sous-chapitre ci-dessus peut être paramétré et / ou vous pouvez l’attacher à un bouton de barre d’outils personnalisé. Comme l'enregistrement de classeur enregistre les informations d'état de la feuille active, de la cellule active, etc., vous pouvez également inclure quelques lignes pour enregistrer votre nom de feuille active préféré et le réactiver chaque fois que vous le rouvrez.

Les références:

http://office.microsoft.com/en-us/excel-help/run-a-macro-HP010342865.aspx http://msdn.microsoft.com/en-us/library/office/ff196165(v=office.14).aspx

Bien que je n’aie pas tout vérifié, cela semble être une introduction très utile si vous n’avez pas entendu parler de PERSONAL.XLS (B): http://www.rondebruin.nl/win/personal.htm


0
2018-05-09 23:45