Just nu i M3-nätverket
Gå till innehåll

Problem med If-satser och Makro generellt!


Aymo

Rekommendera Poster

Hej jag skulle vilja göra ett makro som jämför två kolumner med siffror. Om värdet i den högra kolumnen är större än värdet i den vänstra skall den högra cellen färgas röd. Om värdet är mindre skall cellen färgas blå _och_ texten skall bli vit.

 

Att spela in makron som gör celler med olika färger är ju bara att spela in i Excel. Däremot kan jag inte kombinera detta makro med koden som räknar fram skillnaden i värde och sedan testar värdena med en If-sats.

 

Jag gjorde ett halvhjärtat försök som inte blev så värst bra. VBA klagar på det mesta :) har ni något tips på hur jag ska göra? Det inom [...] har Excel skapat så det är borttaget eftersom det måste fungera!

 

I variabeln test2 är det tänkt att värden på skillnaden mellan cellvärdena skall lagras.

 

 
Sub Makro5()
' Makro5 Makro
   ActiveCell.FormulaR1C1 = "=R[3]C[-3]-R5C2"
   test2 = (ActiveCell.FormulaR1C1 = "=R[3]C[-3]-R5C2")
   If test2 > 0 Then
   ...
   ElseIf test2 < 0 Then
   ...
   End If
End Sub 

 

 

Länk till kommentar
Dela på andra webbplatser

regel 1

Använde INTE adressering med hjälp av ActiveCell!

Adressera alltid specifikt det du vill arbeta med, arbeta relativt till kända referenser!

 

exempel

Blad1.Range("E8").FormulaR1C1 = "=R[3]C[-3]-R5C2"

 

fast om du vill ha värdet i VBA varför inte räkna ut det där?

 

 

 

 

/T

 

Even when we know we´ll never find the answers, we have to keep on asking questions.

 

Länk till kommentar
Dela på andra webbplatser

Dessutom är ett problem av denna sort lättare och effektivare löst med Villkorsstyrd formatering...

 

/Pär B

 

Länk till kommentar
Dela på andra webbplatser

sant sant, jag såg inte vad det var han försökte göra, såg rött när jag såg ActiveCell...

 

 

/T

 

Even when we know we´ll never find the answers, we have to keep on asking questions.

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...