Forfatter |
Emne Søg Emne funktioner
|
finn.lauridsen
Bronze bruger
Medlem: 18.Mar.2012
Land: Danmark
Status: Offline
Point: 29
|
Emne: Påmindelser Sendt: 20.Mar.2012 kl. 10:16 |
Jeg har lavet regneark over hvornår noget værktøj skal calibreres, men jeg har lavet det med betinget formatering Det er besværligt at taste alt nyt værktøj ind kan man ikke lave en macro der virker sådan:? G 1= grøn hvis tiden er over 60 dage fra Idag G 1= Gul hvis tiden er under 45 dage fra Idag G 1= Rød hvis tiden er Idag eller over G1 = kolonne J 1=kolonne med calibrerings dato På forhånd tak
|
|
|
|
|
rassten
Guld bruger
Medlem: 26.Okt.2010
Status: Offline
Point: 694
|
Sendt: 20.Mar.2012 kl. 21:13 |
Jeg ved ikke om jeg helt har forstået dit problem. Men alligevel har jeg lavet et eksempel. uploads/107/Påmindelse_makro_v1.xlsmHver gang du åbner filen, kører en makro, den kikker i kolonne J, hvis den finder en dato/tal farver makroen den tilsvarende celle i kolonne G.
Private Sub Workbook_Open()
Worksheets("Værktøj").Activate ' bør ændres til dit arks navn lr = Cells(Rows.Count, 10).End(xlUp).Row
For i = 2 To lr If WorksheetFunction.IsNumber(Range("j" & i)) = True Then If Range("j" & i).Value > Now + 60 Then Range("g" & i).Interior.Color = 5287936 If Range("j" & i).Value < Now + 45 Then Range("g" & i).Interior.Color = 65535 If Range("j" & i).Value <= Now Then Range("g" & i).Interior.Color = 255 End If Next End Sub
|
|
VH rassten
Arbejde excel 2010 Privat excel 2010
|
|
finn.lauridsen
Bronze bruger
Medlem: 18.Mar.2012
Land: Danmark
Status: Offline
Point: 29
|
Sendt: 21.Mar.2012 kl. 10:26 |
Det er præsis det jeg ønskede Mange tak, dog ændre den ikke farve når jeg ændre dato på computer og trykker F9
|
|
Kurt Kubik
Sølv bruger
Medlem: 18.Feb.2012
Status: Offline
Point: 209
|
Sendt: 21.Mar.2012 kl. 20:31 |
Hvorfor ændrer du også dato på din PC?
|
|
rassten
Guld bruger
Medlem: 26.Okt.2010
Status: Offline
Point: 694
|
Sendt: 21.Mar.2012 kl. 21:53 |
Kurt, jeg tror ikke at han lave om på computerens interne dato. Men lave om på en dato i kolonne J. Finn, det oprindelige eksempel gjorde som jeg skrev, makroen kører kun hver gang filen åbnes. Men da du gerne vil kunne have arket aktiv og se en umiddelbar reaktion. Vil jeg anbefale en anden makro. Eks: uploads/107/Påmindelse_makro_v2.xlsmBemærk at denne makro er placeret under selve arket. Højre klik på arkets navn, vælg "Vis programkode"
Private Sub Worksheet_Change(ByVal Target As Range) On Error Resume Next
Columns("G:G").Interior.Color = xlNone
lr = Cells(Rows.Count, 10).End(xlUp).Row
For i = 2 To lr If WorksheetFunction.IsNumber(Range("j" & i)) = True Then If Range("j" & i).Value > Now + 60 Then Range("g" & i).Interior.Color = 5287936 If Range("j" & i).Value < Now + 45 Then Range("g" & i).Interior.Color = 65535 If Range("j" & i).Value <= Now Then Range("g" & i).Interior.Color = 255 End If If WorksheetFunction.IsNumber(Range("j" & i)) = False Then Range("g" & i).Interior.Color = xlNone Next End Sub
|
|
VH rassten
Arbejde excel 2010 Privat excel 2010
|
|
finn.lauridsen
Bronze bruger
Medlem: 18.Mar.2012
Land: Danmark
Status: Offline
Point: 29
|
Sendt: 22.Mar.2012 kl. 08:42 |
Jeg ændre kun datoen for at kontrollere at farverne også skifter som de skal Jeg prøver lige at forklare det på en anden måde: Datoerne i J kollonne ændres aldrig, det er den dag certifikatet skal fornys Farverne i kolonne g skal ændre sig i forhold til dags dato.altså: hvis datoen er over 60 dage fra dags dato i forhold til kolonne J skal farven være grøn hvis datoen er under 45 dage fra dags dato i fohold til kolonne J skal farven skifte til Gul osv. Jeg takker for den tolmodighed du udviser, rassten
|
|
rassten
Guld bruger
Medlem: 26.Okt.2010
Status: Offline
Point: 694
|
Sendt: 22.Mar.2012 kl. 23:40 |
For det tilfælde vil begge makroer virke, men jeg vil anbefale den sidste. Men jeg undre mig nu alligevel over du ikke ønske cellerne farve markeret under 60 dage og over 45 dage
|
VH rassten
Arbejde excel 2010 Privat excel 2010
|
|
finn.lauridsen
Bronze bruger
Medlem: 18.Mar.2012
Land: Danmark
Status: Offline
Point: 29
|
Sendt: 23.Mar.2012 kl. 14:50 |
Det kan du have ret i det giver et mærkeligt hul , det kan jeg vel bare rette i makroen fra 45 til 60 jeg tror jeg har fundet ud af hvorfor jeg ikke kan få det til at virke . Når jeg for at prøve det ændrer datoen på pc , skal jeg over på arket og dobbeltklikke flere gange inden farverne ændre sig , det ser ikke ud til at arket opdaterer sig selv
|
|
rassten
Guld bruger
Medlem: 26.Okt.2010
Status: Offline
Point: 694
|
Sendt: 23.Mar.2012 kl. 14:57 |
Ja, du kan bare ændre i makroen. Det er en makro som kører hver gang som der sker en ændring i arket. Som hvis du skriver noget i en celle så trykker enter, så kører makroen. Klik i en celle, klik ind i en anden celle vil også få makroen til at kører.
|
VH rassten
Arbejde excel 2010 Privat excel 2010
|
|
finn.lauridsen
Bronze bruger
Medlem: 18.Mar.2012
Land: Danmark
Status: Offline
Point: 29
|
Sendt: 23.Mar.2012 kl. 18:55 |
Kan man lave en knap der får makroen til at køre med det samme , ala Opdater ark ?
|
|
finn.lauridsen
Bronze bruger
Medlem: 18.Mar.2012
Land: Danmark
Status: Offline
Point: 29
|
Sendt: 23.Mar.2012 kl. 19:00 |
Jeg har lavet en optælling af hvor mange der snart skal til eftersyn Gul farve sådan: =ColorCount(G9:G318;F4) men den vil heller ikke opdatere, så derfor en knap der opdaterer hele arket
|
|
rassten
Guld bruger
Medlem: 26.Okt.2010
Status: Offline
Point: 694
|
Sendt: 23.Mar.2012 kl. 19:31 |
Selvfølgelig kan man det. Men for at kode 2 skulle virke ordentlig skal den ikke placeres i et modul, men under selve arket. Og det vil typisk være problemet. Men hvis du gerne vil have en knap i stedet, start med at slette den oprindelige kode, og så: gå til fanen "udvikler" under "indsæt" vælg "kommandoknap" under ActiveX-objekt, tegn nu din knap hvor du vil have knappen. højreklik på den nye knap, vælg egneskaber, i det vindue som nu kommen op, ved siden af "caption" skriv hvad du vil kalde knappen. Luk vinduet, højre klik igen på knappen, vælg "vis programkode" i vba editoren som nu skulle åbne indsæt koden
Private Sub CommandButton1_Click() On Error Resume Next
Columns("G:G").Interior.Color = xlNone
lr = Cells(Rows.Count, 10).End(xlUp).Row
For i = 2 To lr If WorksheetFunction.IsNumber(Range("j" & i)) = True Then If Range("j" & i).Value > Now + 60 Then Range("g" & i).Interior.Color = 5287936 If Range("j" & i).Value < Now + 45 Then Range("g" & i).Interior.Color = 65535 If Range("j" & i).Value <= Now Then Range("g" & i).Interior.Color = 255 End If If WorksheetFunction.IsNumber(Range("j" & i)) = False Then Range("g" & i).Interior.Color = xlNone Next End Sub
|
Luk vba editor vinduet. Tilbage i excel skulle under fanen "udvikler" skulle "Designtilstand" være markeret, klik på den, så den ikke er aktiv. Men jeg forstå ikke helt hvorfor det skulle være nemmere at klikke på en knap, end at vælge en celle, tryk F2 knappen på tastaturet og så trykke enter knappen. Skriv endeligt igen hvis det ikke virker.
|
VH rassten
Arbejde excel 2010 Privat excel 2010
|
|
finn.lauridsen
Bronze bruger
Medlem: 18.Mar.2012
Land: Danmark
Status: Offline
Point: 29
|
Sendt: 24.Mar.2012 kl. 12:58 |
Din nye makro er ok, virker efter hensigten , nu er det bare min egen ColorCount der ikke opdaterer før jeg trykker F9 , kan man bygge det ind i den samme knap?
|
|
rassten
Guld bruger
Medlem: 26.Okt.2010
Status: Offline
Point: 694
|
Sendt: 24.Mar.2012 kl. 14:56 |
|
VH rassten
Arbejde excel 2010 Privat excel 2010
|
|
finn.lauridsen
Bronze bruger
Medlem: 18.Mar.2012
Land: Danmark
Status: Offline
Point: 29
|
Sendt: 24.Mar.2012 kl. 17:08 |
Nu er den 100% takker rigtigt meget for din tålmodighed
|
|
rassten
Guld bruger
Medlem: 26.Okt.2010
Status: Offline
Point: 694
|
Sendt: 25.Mar.2012 kl. 00:37 |
Du er velkommen Tak for tilbagemeldingen
|
VH rassten
Arbejde excel 2010 Privat excel 2010
|
|