Gå til innhold

[Løst] Makro Betinget formatering


Bigelk

Anbefalte innlegg

Hei,

 

2 Ark.

Ark "Import"

Ark "Tegning"

 

Ark Import - Inneholder en rapport, denne rapporten inneholder salg, lokasjonsnummer og en celle adresse som referer til cellen som inneholder lokasjonsnummeret i Ark "Tegning".

 

Jeg vil formatere cellen i Ark "Tegning" med en datastolpe, basert på salget i Ark "Import" ved bruk av makro.

 

Jælp!

 

Mvh

Torbjørn

Lenke til kommentar
Videoannonse
Annonse

Hei på deg.

Det er ikke helt klart for meg hva du vil ha, men morsomt å lage makro til morgenkaffen.

 

Se vedlegg

 

Vennlig hilsen Ketil

 

'Makro for stolper ut fra adresse og salgssum

Sub Stolper()
    
    Dim rAdresser As Range
    Dim rSalg As Range
    Dim sAdr As String
    Dim Tom As Long
    Dim Faktor As Long
    Dim Kolonner As Long
    Dim StartKol As Long
    Dim Salg As Double
    Dim Rad As Long
    
    'Forutsetter salg i kolonne A og adresser i Kolonne C
    Set rSalg = Ark1.Range("A1:A1000")
    Set rAdresser = Ark1.Range("C1:C1000")
    
    'Rens opp i arket
    With Ark2.Cells
     .ClearFormats
     .ClearContents
    End With
    
    'Hvor mange kolonner søylen skal strekke seg over = Salg / Faktor
    Faktor = 1000
    
    'Looper gjennom radene og finner verdier
    x = 2: While Tom < 10
                   
         sAdr = rAdresser.Cells(x, 1)
                   
         If sAdr = "" Then
          Tom = Tom + 1
          Else
          Tom = 0
         End If
         
         If Tom = 0 Then
          
          Salg = rSalg.Cells(x, 1) / Faktor
          
          'Finner rad og kolonne ut fra adressen
          Rad = Ark2.Range(sAdr).Row
          StartKol = Ark2.Range(sAdr).Column
          
          'Hvor mange kolonner vi skal sette bakgrunnsfarge på
          Kolonner = Salg
          
          With Ark2.Range(Ark2.Cells(Rad, StartKol), Ark2.Cells(Rad, Kolonner + StartKol)).Interior
           .Pattern = xlSolid
           .PatternColorIndex = xlAutomatic
           .ThemeColor = xlThemeColorAccent6
           .TintAndShade = 0.799981688894314
           .PatternTintAndShade = 0
          End With
  
         End If
        
    x = x + 1: Wend
 
End Sub
 

 

 

Makro-Soyler-Ut-Fra-Salg-og-Cellereferanse.zip

Lenke til kommentar

Hei ExelGuru,

 

Veldig fin makro, men ser at jeg har forklart litt for dårlig,

Jeg trenger ikke en fullverdig makro, trenger bare et sted å starte. det er rett og slett fordi det blir for vanskelig for meg å veve makroen din inn resten av makroen min.

 

La oss si i ark1

Celle A1 = Lokasjonsnummer (1010)

Celle B1 = Salg (1000)

Celle C1 = Adressen til Lokasjnummeret i Ark2 (F.eks at det lokasjonsnummeret ligger i celle $M$174 i ark 2)

 

Så da vil jeg at celle $M$174 i ark2 skal vise en stolpe som tilsvarer salget som er i celle B1 i ark1

 

La oss si at skalaen på stolpen her skal være fra 700 - 1400

 

Tusen takk for hjelpen så langt, og håper ikke du tolker "avvisningen" av makroen din som negativt :) 

Og bare si i fra hvis forklaringen ikke duger

 

Mvh

Torbjørn

Lenke til kommentar

Hei,

 

Det er et "Celleområde".

 

Ark Tegning -  Arket inneholder en tegning over et lager, hvor en celle er en lokasjon.

Denne lokasjonen har et "salg" tilknyttet seg. Jeg vil vise hvor stort salget fra denne lokasjonen er ved bruk av en stolpe.

 

Cellen i ark tegning skal da inneholde datastolpen, men datastolpen skal defineres ut i fra verdien i ark data

 

Slenger ved et par bilder :)

 

Hvis forklaringen min fortsatt ikke er forståelig (Noe jeg har stor forståelse for :) )

Celle A1 kan inneholde en verdi fra 1 til 10

Celle B1 skal inneholde en datastolpe som øker / minker ut i fra verdien i celle A1

post-262165-0-91265900-1517292391_thumb.png

post-262165-0-77025700-1517292402_thumb.png

Endret av Bigelk
Lenke til kommentar

Hei,

 

Etter å ha Googlet meg ihjel, tror jeg ikke det jeg ber om er mulig.

En databar må bruke celleverdien den er i som grunnlag.

 

Her er heldigvis Lokasjonen et tall (celleverdien) Så da kan jeg bare lage et regnestykke ut i fra salget som sier at verdien av cellen er f.eks 70% av salget.

 

Takk for hjelpen :)

 

Mvh

Torbjørn

Endret av Bigelk
Lenke til kommentar

Hei,

 

Da er den løst, siden cellen inneholder et tall (lokasjonsnummeret) så bruker jeg salget til å beregne maksverdien til stolpen.

        minVal = lokasjon / 2
        maxVal = lokasjon + (lokasjon * (1 - (calcVal / calcMaxVal)))

Da ser resultatet ut som dette

 

Mvh

Torbjørn

 

 

post-262165-0-96796700-1517571068_thumb.png

Endret av Bigelk
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...