PNG32 PNG32 PNG32 PNG32
PNG32
Forum Excel, VBA, VSTO, Exceltips, Excelhj�lp PNG32 drivs av Excelspecialisten    Logga in     English
PNG32
PNG32 PNG32
PNG32

Logga in

PNG32

Du är inte inloggad. Logga in eller registrera dig för att skriva inlägg eller svara på inlägg.

För frågor om forumet, kontakta oss på webmaster@excelforum.se

PNG32 PNG32
PNG32 PNG32
PNG32

Excelforum

PNG32

 
ForumForumDiskussionerDiskussionerVBAVBAVariabel till rangeVariabel till range
Föregående Föregående
 
Nästa Nästa
Nytt inlägg
 2022-01-12 21:23
 

 Jag brukare använda variabler i olika sammanhang men när det gäller att använda variabler i kod enligt nedan för att loopa igenom ett antal celler får jag inte rätt på det. Tacksam för alla tips. 

        If Sheet4.Range("F12").Value = "100%" Then
            Sheet4.Range("I12").Value = "Grön"
            Else
            Sheet4.Range("I12").Value = "Röd"
        End If        

          If Sheet4.Range("F13").Value = "100%" Then
            Sheet4.Range("I13").Value = "Grön
            Else
            Sheet4.Range("I13").Value = "Röd"
        End If

osv .......

  

        

   

Nytt inlägg
 2022-01-13 07:59
 

 Hej hej

Finns lite olika metoder för detta och mängder med tips för att få till en snygg och flexibel kod. Men försöker hålla svaret på en enkel nivå, så du får en metod. 

1. Namnge dina relevanta rader i kolumnen i ute i excels gränssnitt med hjälp av namnrutan. I exemplet är namnet rngColors. Om du lägger en tabell på ditt grunddata, och namnger en tabellkolumn på samma sätt, så blir det namngivna området dynamiskt, då kan du även när du vågar hoppa upp till mer avancerad nivå, jobba med tabellen direkt istället.

kod:

'Sheet4 kan och bör ersättas med något du döpt om till, detta gör man i projektrutans egenskapsfält. Då får du en bättre struktur att jobba med(enklare att komma ihåg vilket blad som avses, samt att bladet då inte kan ändras av excel eller användare. 

Dim rngColors as range: set rngColors = sheet4.range("rngcolors")

Dim mCell as range

For each mCell in rngColors

    '100% om formatet är korrekt, motsvaras av 1, dvs mcell.offset(0,-1) = 1, i exemplet så är din data textformaterad

    If mcell.offset(0,-1) = "100%" then

              mcell = "grön"

     Else

             mcell = "röd"

     end if

Next mcell

Sedan så undrar jag varför du vill lägga till färger i text, verkar skumt :), är det villkorstyrdformatering du tänker använda det till så fungerar denna lika bra på texten "100%", alternativt talet 1. 

/c

Nytt inlägg
 2022-01-13 11:01
 

 Hej och tack för ditt svar :)
Jag ska prova det du säger. Att jag lägger till färger i text är för att det i sin tur styr färgen på liggande staplar i en projektplan. Jag utgick från ett Gannt-Schema som var fritt att tanka ner så grunden med färger mm var redan gjord. 

 

Nytt inlägg
 2022-01-28 09:50
 

 Ok, då förstår jag. Fick du det att fungera?

Föregående Föregående
 
Nästa Nästa
ForumForumDiskussionerDiskussionerVBAVBAVariabel till rangeVariabel till range

PNG32 PNG32
Excelforum drivs av Excelspecialisten som bedriver utbildning i Excel och VBA, tillhandahåller support och hjälp med Excel, utvecklar program i Excel. Är ni i behov av en konsult inom Excel, VBA eller VSTO, eller söker en excelkurs, kontakta oss.
Copyright 2013 ExcelSpecialisten XLS AB   Användarvillkor  Personliga uppgifter