13. februar 2002 - 09:27Der er
8 kommentarer og 1 løsning
Blinkende felter i excel 97
Er der nogen der ved om det kan lade sig gøre at få et felt/resultat til at blinke ?
Eksempel: Hvis differencen i felt 5 (nedenstående eksempel) er negativ, skal feltet (eller resultatet) blinke for at gøre brugeren opmærksom på det negative slutresultat...
Felt 1. - beløb nr 1..................200,00 Felt 2. - beløb nr 2..................300,00 Felt 3. - sum af ovenstående ........500,00 Felt 4. - +/- beløb 3.................600,00 Felt 5. - diff. mellem felt 3 og 4...-100,00
Da resultatet er negativt vil jeg gerne have feltet eller resultatet til at blinke... Kan det lade sig gøre????
Jeg tror ikke det kan lade sig gøre, at få feltet til at blinke, men med betinget formatering kan du få lagt en bestemt baggrundsfarve, få sat en ramme om o.s.v. Kan det mon ikke bruges?
Indsæt følgende kode i kodemodulet til ark1: Sub Worksheet_Calculate() Application.OnTime Now + TimeValue("00.00.01"), "Rød" Application.OnTime Now + TimeValue("00.00.02"), "Blå" Application.OnTime Now + TimeValue("00.00.03"), "Rød" Application.OnTime Now + TimeValue("00.00.04"), "Blå" Application.OnTime Now + TimeValue("00.00.05"), "Rød" Application.OnTime Now + TimeValue("00.00.06"), "Blå" Application.OnTime Now + TimeValue("00.00.07"), "Rød" Application.OnTime Now + TimeValue("00.00.08"), "Blå" End Sub
og indsæt så følgende kode i et almindeligt modul:
Sub Rød() Range("C6").Select Selection.FormatConditions.Delete Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlLess, _ Formula1:="0" Selection.FormatConditions(1).Font.ColorIndex = 3 End Sub
Sub Blå() Range("C6").Select Selection.FormatConditions.Delete Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlLess, _ Formula1:="0" Selection.FormatConditions(1).Font.ColorIndex = 5 End Sub
Nu blinker den 8 gange, hver gang den rener summen ud. Det er måske i den smarteste løsning, men den virker *S*
Denne kode kommer op med en beskedboks, hvis celle B5 (resultatcellen) bliver negativ. Så skal brugeren ihvertfald bekræfte at han M/K er klar over det.
Der beregnes på resultatcellen hver gang celle B1 eller B2 ændres.
Private Sub Worksheet_Change(ByVal Target As Range) Dim rCell As Range Set rCell = Range("B1:B2") If Not Intersect(Target, rCell) Is Nothing Then If Range("B5").Value < 0 Then MsgBox "OBS: Celle B5 er negativ" End If End If Set rCell = Nothing End Sub
Koden lægges ind ved at højreklikke på fanebladet til det ark, hvor beregningerne ligger og så vælge "Vis kode" og derefter klippe/klistre koden dertil.
Når du højreklikker på arket og vælger vis kode, skal du bare kopiere koden ind oven i, hvor der i forvejen står noget med Private Sub Worksheet_Change ..... og derefter kan du bare lukke Visual Basic vinduet ned.
Koden kan bruges direkte som den står, hvis: B1 = celle til indtastning af beløb B2 = celle til indtastning af beløb B3 = B1 + B2 B4 = fast beløb, som skal trækkes fra B5 = B3 - B4
Hvis B5 så bliver negativ ved ændring af B1 og B2, vil der komme en beskedboks op på skærmen.
Hvis du stadig ikke kan få det til at virke, kan jeg sende dig et eksempel.
janvogt@esenet.dk
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.