Apparition d'une alerte lors de l'ouverture Excel

alj

XLDnaute Nouveau
Bonsoir,

je souhaite faire apparaître un message récapitulant une liste de marchés à reconduire lors de l'ouverture du fichier Excel.

J'ai réussi à faire quelque chose avec une MsgBox, mais cela ne me convient pas car lorsque j'ai 20 marchés à reconduire, il faut que je valide 20 fois de suite ma MsgBox. c'est long et fastidieux.

Dans l'exemple envoyé, j'ai une liste de 11 marchés. mais en réalité, j'en ai plus d'une centaine.
 

Pièces jointes

  • Tableau Marchés.xlsm
    19.5 KB · Affichages: 68

laurent950

XLDnaute Accro
Re : Apparition d'une alerte lors de l'ouverture Excel

Bonsoir alj,

Il est un peut tard ce soir mais une idée peut être :

Code :

Private Sub Workbook_Open()
Dim m As Integer
Dim n As Integer
For m = 1 To Sheets.Count
For n = 1 To Sheets(m).Range("O65536").End(xlUp).Row
If Sheets(m).Range("O" & n).Value = "reconduire" Then
Text = Text & "Vous devez reconduire le marché n° " & Sheets(m).Range("A" & n) & " " & Chr(10)
End If
Next n
Next m
MsgBox Text
ActiveWorkbook.Save

l'idéale serait une liste sur excel tous simplement mieux qu'un msgbox

Au plaisir de vous aider si vous avez des questions

Laurent
 

alj

XLDnaute Nouveau
Re : Apparition d'une alerte lors de l'ouverture Excel

Bonjour,

Je souhaite rendre mon tableau plus performant.

Lors de l'ouverture d'Excel, actuellement la MsgBox s'affiche en fonction du résultat de la colonne M. C'est une très bonne chose.
Maintenant, je voudrais que le message qui apparaît soit différent suivant le texte indiqué dans cette même colonne.
Ex : Texte "consultation" message "ATTENTION, le marché n° 106010 prend fin dans 6 mois. Contacter le service concerné."
Text "reconduction" message "Veuillez reconduire le marché n° 106010."

En vous remerciant pour votre aide.
 

Pièces jointes

  • Tableau Marchés TEST.xlsm
    20.6 KB · Affichages: 54

TempusFugit

XLDnaute Impliqué
Re : Apparition d'une alerte lors de l'ouverture Excel

Bonjour


Ajoute un Select Case
Code:
Private Sub Workbook_Open()
Dim m As Integer
Dim n As Integer
    For m = 1 To Sheets.Count
     For n = 1 To Sheets(m).Range("M65536").End(xlUp).Row
     Select Case Sheets(m).Range("M" & n).Value
      Case Is = "consultation"
        Text = Text & "ATTENTION, le marché n° " & Sheets(m).Range("A" & n) & " prend fin dans 6 mois. Contacter le service concerné. " & " " & Chr(10)
      Case Is = "reconduire"
      Text = Text & "Veuillez reconduire le marché n° " & Sheets(m).Range("A" & n) & Chr(10)
      End Select
     Next n
    Next m
    MsgBox Text
    ActiveWorkbook.Save
End Sub
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 503
Messages
2 089 062
Membres
104 015
dernier inscrit
kkgk