01. oktober 2010 - 18:56Der er
11 kommentarer og 1 løsning
VBA workbook
Jeg kan simpelthen ikke finde ud af det! Hvordan får jeg kombineret en velkomst afhængigt af tidspunkt med brugers navn?
Msg skulle gerne komme som Good Morning Sjomka Good Afternoon Sjomka...
Private Sub Workbook_open() Dim Msg As String If Time < 0.5 Then Msg = "Morning" If Time >= 0.5 And Time < 0.75 Then Msg = "Afternoon" If Time >= 0.75 Then Msg = "Evening" MsgBox "Good " & Msg Msg = "Is your name " & Application.UserName & "?" Ans = MsgBox(Msg, vbYesNo) If Ans = vbNo Then MsgBox "OK - give a shit anyway :-)" If Ans = vbYes Then MsgBox "I wish you a happy day at work." End Sub
Du kan evt. også vælge at undlade den ene MsgBox ved følgende:
Private Sub Workbook_Open() Dim Msg As String Dim EndMsg As String If Time < 0.5 Then Msg = "morning!" If Time >= 0.5 And Time < 0.75 Then Msg = "afternoon!" If Time >= 0.75 Then Msg = "evening!" EndMsg = "Good " & Msg & Chr(10) & Chr(10) & "Is your name " & Application.UserName & "?" Ans = MsgBox(EndMsg, vbYesNo) If Ans = vbNo Then MsgBox "OK - give a shit anyway :-)" If Ans = vbYes Then MsgBox "I wish you a happy day at work." End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
If MsgBox("Hej igen " & Application.UserName & ". Jeg kan se at du vil afslutte." & _ vbCrLf & "Er du sikker på at du har lavet det rigtigt?", vbYesNo) = vbNo Then MsgBox ("Check det igen.") Cancel = True End If
End Sub
Excel vil selv spørge om der skal gemmes, hvis der er lavet nogen ændringer.
Tusind tak for hjælpen. Og så (selvfølgelig!) lige et ekstra spm.
Kan man ændre denne til;
1) Hvis bruger har ændret et eller andet sted i workbook, skal bruger bekræfte, at ændringen er korrekt jf. nedenstående.
2) Hvis bruger alene åbner workbook og derefter lukker workbook, skal der komme en meddelse a la "Dejligt at se dig. Jeg kan se, at du ikke har ændret noget! Jeg lukker uden at gemme"
Dette er den nedenstående :-) Private Sub Workbook_BeforeClose(Cancel As Boolean)
If MsgBox("Hej igen " & Application.UserName & ". Jeg kan se at du vil afslutte." & _ vbCrLf & "Er du sikker på at du har lavet det rigtigt?", vbYesNo) = vbNo Then MsgBox ("Check det igen.") Cancel = True End If
End Sub
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.