Avatar billede Hmmm…. Mester
20. januar 2016 - 14:32 Der er 9 kommentarer og
1 løsning

Køre en makro "hvis"

Hej Eksperter.

Kan man få en =HVIS til at køre en makro?
F.eks =HVIS(A159<>0;IDAG();"") Så i stedet for IDAG, så køre en makro der hedder DATO.
Makroen DATO sætter nemlig en fastdato i cellen frem for en dynamisk d.d.

~Steffen
20. januar 2016 - 14:42 #1
Du kan IKKE afvikle en makro fra en formel.

Du kan indsætte dags dato, som fast dato, ved at taste Ctrl-semikolon.
Avatar billede ebea Ekspert
20. januar 2016 - 14:53 #2
Kan du ikke sætte den fiksede dato som f.eks. her:

=HVIS(A159<>0;"01-01-2016";"")

Ellers med VBA
Avatar billede Hmmm…. Mester
20. januar 2016 - 15:24 #3
ebea
Jo, det kunne jeg god, men da det skal være den dato hvor der bliver skrevet i Celle A159, og den ikke skal ændre sig næste dag jeg åbner arket duer det ikke.
Jeg kan desværre ikke VBA
Avatar billede Hmmm…. Mester
20. januar 2016 - 15:25 #4
ebea
Jo, det kunne jeg godt, men da det skal være den dato hvor der bliver skrevet i Celle A159, og den ikke skal ændre sig næste dag jeg åbner arket duer det ikke.
Jeg kan desværre ikke VBA
Avatar billede Hmmm…. Mester
20. januar 2016 - 15:33 #5
erikJuul

Ok tak, så fik jeg da det på plads og behøver ikke at gå videre af den vej.
men....?
Avatar billede jens48 Ekspert
20. januar 2016 - 16:12 #6
Men måske kunne du køre en makro, som aktiveres, når du taster noget ind i A159. Det er jo den celle formelen tester på.
Avatar billede svla Mester
20. januar 2016 - 17:39 #7
Hej
- Er det ikke lige denne makro du mangler:

Private Sub Worksheet_Change(ByVal Target As Range)
  Dim dDato As Date
  dDato = Date 
  If Not Intersect(Target, Range("A1")) Is Nothing Then
    Range("A5") = dDato
  End If
End Sub

Prøv og sæt den ind i dit ark og tilret den.
Avatar billede Hmmm…. Mester
22. januar 2016 - 07:22 #8
svia

mange tak, ikke helt det jeg søger, men bestemt brugbart.
Avatar billede Hmmm…. Mester
22. januar 2016 - 07:24 #9
svia
skriv et svar så jeg kan give dig dine point :-)
Avatar billede svla Mester
22. januar 2016 - 09:32 #10
Jeg forstod dit spørgsmål således at du skriver i celle A159, og din HVIS-kode står i en anden celle, - er det korrekt forstået.

Jeg går ud fra at du fik kopieret min kode ind på dit ark og tilrettet den?

Jeg lægger lige et nyt forslag til kode som jeg synes burde fungere bedre:

Private Sub Worksheet_Change(ByVal Target As Range)
  Dim dDato As Date
  dDato = Date
  dDato = Format(dDato, dd - mm - åååå)
  If Not Intersect(Target, Range("A1")) Is Nothing Then
    If Range("A1").Value = "" Then
      Range("A5").Value = ""
    Else
      Range("A5") = dDato
    End If
  End If
End Sub
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester