Workbooks(WBOOK1).activate sur WBOOK1 généré, ouvert et non sauvegardé

Hello forum,

Je cherche un moyen d'appeler un classeur généré et ouvert directement depuis une page internet pour en exploiter le contenu.

Problème, la méthode Workbooks(NomdeClasseurs).activate ne donne rien, pas plus que la méthode Workbooks(NomdeClasseurs).select.

J'ai tenté un for each wb in Workbooks. Le code boucle sur les classeurs ouvert sauf celui-ci que je veux (qui n'est pas enregistré).

Comment faire pour se mettre dessus sans avoir à l'enregistrer ? (Je veux gagner le temps d'enregistrement puisque je n'ai pas besoin d'un historique de ce fichie)..

Merci d'avance.

Y.

Bonsoir,

Problème, la méthode Workbooks(NomdeClasseurs).activate ne donne rien, pas plus que la méthode Workbooks(NomdeClasseurs).select.

Forcément car le classeur ouvert via internet se trouve dans une autre instance de l'Application Excel. Il est possible de récupérer l'instance de l'application Excel où se trouve le classeur Internet via son nom avec l'instruction suivante :

Dim xlApp as Application

Set xlApp = GetObject("nom_classeur_Internet").Application
xlApp.Workbooks("nom_classeur_Internet").Activate

Hello Thev, Forum,

Merci du retour. Je comprends mieux. C'est la première fois que je me trouve dans ce "use case". Comme quoi, on en apprend tous les jours.

Je teste et te reviens au plutôt à propos

capture capture

Re,

J'ai une erreur d'automation. Ce que j'obtiens

Peut être un problème dans la syntaxe? J'ai essayé avec Nom_Du_Classeur + extension mais rien ne fait.

J'ai une erreur d'automation. Ce que j'obtiens.

En fait, après vérification, il faut le chemin complet du fichier avec son extension.

Re,

Oui. Le problème est qu'il n'y a pas vraiment de chemin puisque le fichier n'est pas enregistré. C'est une extraction d'internet.

N'y a t il pas une mémoire "vive" excel ou quelque chose du genre auquel on pourrait faire appel pour pal

capture

lier le problème du chemin ?

Oui. Le problème est qu'il n'y a pas vraiment de chemin puisque le fichier n'est pas enregistré. C'est une extraction d'internet.

Si. Il y a un chemin temporaire. Pour une extraction avec le navigateur Edge, le chemin chez moi est :

Environ("LOCALAPPDATA") & "\Packages\Microsoft.MicrosoftEdge_8wekyb3d8bbwe\TempState\Downloads"

Cela dit, pour récupérer l'instance Excel Internet, tu peux également essayer l'instruction ci-dessous, sous réserve que c'est bien la première instance ouverte.

Autrement dit, il faut d'abord ouvrir le fichier Internet et ensuite le classeur qui le récupère.

set xlApp = GetObject(, "Excel.Application")

J'ai lu cette page. Je dois dire que je n'ai pas compris ce que l'on entend par instance.

J'ai lu cette page. Je dois dire que je n'ai pas compris ce que l'on entend par instance.

Pour une application, instance =processus en cours d'exécution. S'il existe 2 instances d'Excel, cela signifie qu'Excel est exécuté 2 fois et qu'il existe 2 applications Excel au niveau des processus (voir gestionnaire des tâches).

certaines suggestions que j'ai pu trouver ça et là sur le net préconise WINDOWS("NomDuClasseur").activate pour appeler le classeur ouvert non sauvegardé.

Je ne sais pas comment l'utiliser du coup puisqu' appelé directement comme tel, mon code plante.

Finalement, j'ai pu improviser un truc qui fonctionne mais uniquement sur les classeurs "normaux".

Celui qui vient d'internet est en plus protégé. On ne peut que le lire, pas le sauvegarder, ni le modifier.

Je propose tout de même mon éclair de génie qui au final, aura été vain ^^

        Dim wb1 As Workbook
        For i = 1 To Application.Windows.Count
                If Application.Windows(i).Caption = wbname Then
                    Application.Windows(i).Activate
                        Set wb1 = ActiveWorkbook
                    Exit For
                End If
           Next i

La commande WINDOWS() qui normalement est censée avoir accès aux workbooks ouverts peine à saisir le classeur.xlsx provenant d'internet. Serait ce parce que celui-ci est protégé? Car un simple FOR EACH... NEXT fonctionnait bien pour d'autres classeurs internet protégé du même site internet.

Je continue de creuser.

Hello Forum, Thev,

J'ai finalement tenté de nouveau. La proposition utilisant le WINDOWS(NomDeClasseur) fonctionne bien finalement. Je n'ai pas changé la suggestion utilisant la boucle for ... sur les windows.

J'ai juste téléchargé de nouveau mon extraction exel du site internet. Il est cette fois, le fichier n'était pas locké en lecture sans possibilité de modification ou sauvegarde.

Merci encore pour vos contributions.

Yeshua.

Bonjour,

Merci de ce retour car l'alternative est intéressante.

Rechercher des sujets similaires à "workbooks wbook1 activate genere ouvert sauvegarde"