Microsoft 365 Afficher Google et fermer l'onglet nouveau sans fermer le navigateur

Usine à gaz

XLDnaute Barbatruc
Bonjour à toutes et à tous,

J'ai une nouvelle p'tite demande ... de confort .
Malgré essais et recherches : je n'ai pas trouvé !

Quand je travaille, sont ouverts :
- mon classeur excel,
- mon navigateur Google et mon onglet "agenda",

J'ai fait un p'tit code pour afficher Google direct sans sortir de mon classeur (ça ... c'est pas très difficile)
Mais ça ouvre toujours un nouvel onglet dans le navigateur :mad:
Est-il possible d'afficher Google et de sélectionner directement mon agenda sans qu'un nouvel onglet soit ouvert ?
mon p'tit code :
VB:
Option Explicit
Dim CmdBar As CommandBar
Public Declare PtrSafe Function ShellExecute Lib "shell32.dll" _
    Alias "ShellExecuteA" (ByVal hWnd As Long, ByVal lpOperation As String, _
    ByVal lpFile As String, ByVal lpParameters As String, _
    ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long

Sub agenda1()
    Dim fichier As String
        fichier = "https://accounts.google.com/ServiceLogin/"
    ShellExecute 0, "", fichier, "", "", 0
End Sub
le lien : est tronqué pour la confidentialité :)

Auriez-vous la solution ?
Je joins un petit classeur test,
Avec mes remerciements,
lionel,
 

Pièces jointes

  • Agenda.xlsm
    15.9 KB · Affichages: 99
Dernière édition:

Usine à gaz

XLDnaute Barbatruc
T'es un grand chef !
Merci ça me rend un vraiment gros service c'est top top top chef :)

Champagne8.gif
 

Dudu2

XLDnaute Barbatruc
J'ai modifié un détail dans le Module_APIWindows dans ma fonction ActivateWindow() en mettant le SetForegroundWindow hWnd pour tous les cas. Je ne sais pas pourquoi je ne l'ai pas fait avant !
Mais bon, ce genre de truc je ne maitrise à 100% car pour moi les codes du ShowWindow devraient suffire. Après ce sont les tests qui font la vérité !
VB:
'---------------
'Activate Window (Activates & Maximizes a minimized Window)
'Equivalent of: If IsIconic(hWnd) Then ShowWindow hWnd, SW_SHOWMAXIMIZED: AppActivate GetWindowName(hWnd)
'---------------
Function ActivateWindow(hWnd As LongPtr)
    SetForegroundWindow hWnd
   
    'Window is minimized, 2 options:
    'SW_RESTORE (9):  Restores the window to its original size and position, i.e. its default size and position at launch time (e.g. Google Chrome is not maximized at launch time)
    'SW_MAXIMIZE (3):  Maximizes the specified window
    If IsIconic(hWnd) Then
        ShowWindow hWnd, SW_SHOWMAXIMIZED

    'Window is NOT minimized, best option is:
    'SW_SHOW (5): Displays the window in its current size and position
    Else
        ShowWindow hWnd, SW_SHOW
    End If
End Function
 

Dudu2

XLDnaute Barbatruc
En fait, je dois exprimer mon auto-satisfaction claironnante
1598797811777.gif
au regard du Module_APIWindows qui me libère des déclarations pénibles des fonctions de l'API Windows et dans lequel j'ai inclu quelques routines perso pour simplifier / compléter l'accès à certaines fonctionnalités, dont celles concernées ici, ActivateWindow(), que j'ai donc pu améliorer
1598798083377.gif
et l'indispensable GetWindowByPartialName() qui permet de faire fonctionner pas mal de bouzins.
Bonne fin de journée.
 

Discussions similaires

Réponses
4
Affichages
588
Réponses
1
Affichages
1 K
Compte Supprimé 979
C