Popup excel en premier plan windows

Résolu/Fermé
PYGOS69 Messages postés 452 Date d'inscription jeudi 23 août 2012 Statut Membre Dernière intervention 10 octobre 2023 - 16 avril 2015 à 16:10
PYGOS69 Messages postés 452 Date d'inscription jeudi 23 août 2012 Statut Membre Dernière intervention 10 octobre 2023 - 20 avril 2015 à 12:30
Bonjour,

J'ai un popup sur excel que je souhaite afficher en premier plan sur windows devant toutes les autres fenêtres (autres applicatifs...).

Vba du popup :

Sub Mamacro()
Range("a11").Select

Selection.ClearContents
ActiveSheet.Paste
Range("b11").Select
Range("c11").Select
Range("d11").Select
Range("e11").Select
Range("A11").Select
variable1 = Range("a11")
variable2 = Range("b11")
variable3 = Range("c11")
variable4 = Range("d11")
variable5 = Range("e11")
ActiveWindow.WindowState = xlMaximized
MsgBox "Le client " & variable1 & " " & Chr(10) & Chr(10) & "a contacté la société " & variable2 & " " & " fois" & Chr(10) & Chr(10) & " dont " & variable3 & " " & " fois" & " dans une agence " & Chr(10) & Chr(10) & " dont " & variable4 & " " & " fois" & " par courrier " & Chr(10) & Chr(10) & " dont " & variable5 & " " & " fois" & " au téléphone ", vbMsgBoxSetForeground

End Sub


Merci d'avance,
A voir également:

1 réponse

Thorak83 Messages postés 1051 Date d'inscription jeudi 20 juin 2013 Statut Membre Dernière intervention 22 décembre 2017 156
16 avril 2015 à 16:37
Bonjour,

Mettre le msgbox en modal pour être sûre.

MsgBox "texte", vbApplicationModal

Cordialement
0
PYGOS69 Messages postés 452 Date d'inscription jeudi 23 août 2012 Statut Membre Dernière intervention 10 octobre 2023 21
16 avril 2015 à 16:46
Merci Thorak83,

Cela avance, excel clignote....et quand je clique sur l'îcone le popup apparait sans afficher la feuil excel....mais il faut que je clique encore sur l'icone !

Je suis obligé de laisser....ActiveWindow.WindowState = xlMaximizedavant la ligne :

MsgBox "Le client " & variable1 & " " & Chr(10) & Chr(10) & "a contacté la société " & variable2 & " " & " fois" & Chr(10) & Chr(10) & " dont " & variable3 & " " & " fois" & " dans une agence " & Chr(10) & Chr(10) & " dont " & variable4 & " " & " fois" & " par courrier " & Chr(10) & Chr(10) & " dont " & variable5 & " " & " fois" & " au téléphone ", vbApplicationModal
0
Thorak83 Messages postés 1051 Date d'inscription jeudi 20 juin 2013 Statut Membre Dernière intervention 22 décembre 2017 156
16 avril 2015 à 16:52
mais comment ou pas quoi est lancé la macro ?
0
PYGOS69 Messages postés 452 Date d'inscription jeudi 23 août 2012 Statut Membre Dernière intervention 10 octobre 2023 21
16 avril 2015 à 17:22
Voila ma macro qui se lance toutes les 30 secondes :

Sub auto_open()
Actualiser
End Sub

Sub Actualiser()
' Définit l'intervalle avec l'heure actuelle
Uneheure = TimeSerial(Hour(Time), Minute(Time), Second(Time) + 30)
' Appel récursif
Application.OnTime Uneheure, "Actualiser"
Call Mamacro
End Sub

Sub auto_close()
On Error Resume Next
Application.OnTime Uneheure, Procedure:="Actualiser", Schedule:=False
End Sub

Sub Mamacro()
Range("a11").Select

Selection.ClearContents
ActiveSheet.Paste
Range("b11").Select
Range("c11").Select
Range("d11").Select
Range("e11").Select
Range("A11").Select
variable1 = Range("a11")
variable2 = Range("b11")
variable3 = Range("c11")
variable4 = Range("d11")
variable5 = Range("e11")
ActiveWindow.WindowState = xlMaximized

MsgBox "Le client " & variable1 & " " & Chr(10) & Chr(10) & "a contacté la société" & variable2 & " " & " fois" & Chr(10) & Chr(10) & " dont " & variable3 & " " & " fois" & " dans une agence " & Chr(10) & Chr(10) & " dont " & variable4 & " " & " fois" & " par courrier " & Chr(10) & Chr(10) & " dont " & variable5 & " " & " fois" & " au téléphone ", vbApplicationModal

End Sub

Je souhaite que MsgBox s'affiche devant toutes les autres fenêtres....
0
Thorak83 Messages postés 1051 Date d'inscription jeudi 20 juin 2013 Statut Membre Dernière intervention 22 décembre 2017 156
16 avril 2015 à 17:32
Je n'ai pas tout compris l'histoire du copier/coller ainsi que tous les Range("b11").Select qui ne servent à rien mais bon concernant le popup, je ne pense pas que ça peut se faire car c'est du code vba lancer par excel, donc la popup peut se mettre devant Excel mais devant toutes les applications Windows NON. Sauf peut être en utilisant une api windows. Je regarde ca
0
Thorak83 Messages postés 1051 Date d'inscription jeudi 20 juin 2013 Statut Membre Dernière intervention 22 décembre 2017 156
16 avril 2015 à 17:46
Alors ca fonctionne avec l'Api Windows
Coller ceci en haut
Const MB_DEFBUTTON1 = &H0&
Const MB_DEFBUTTON2 = &H100&
Const MB_DEFBUTTON3 = &H200&
Const MB_ICONASTERISK = &H40&
Const MB_ICONEXCLAMATION = &H30&
Const MB_ICONHAND = &H10&
Const MB_ICONINFORMATION = MB_ICONASTERISK
Const MB_ICONQUESTION = &H20&
Const MB_ICONSTOP = MB_ICONHAND
Const MB_OK = &H0&
Const MB_OKCANCEL = &H1&
Const MB_YESNO = &H4&
Const MB_YESNOCANCEL = &H3&
Const MB_ABORTRETRYIGNORE = &H2&
Const MB_RETRYCANCEL = &H5&
Public Declare Function MessageBox Lib "user32" Alias "MessageBoxA" _
(ByVal hwnd As Long, ByVal lpText As String, ByVal lpCaption As String, _
ByVal wType As Long) As Long

et faire
Dim reponse As Integer
reponse = MessageBox(0, "Votre Message", "Titre de la fenêtre", MB_ICONQUESTION)

lien ici pour voir un peu plus
https://access.developpez.com/sources/?page=commondlg#Messagebox
0