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

 
ForumForumDiskussionerDiskussionerExcelExcelFärgat vid markeringFärgat vid markering
Föregående Föregående
 
Nästa Nästa
Nytt inlägg
 2018-01-30 09:11
 

 Vid markering av en cell vill jag få denna funktion.

Markerar jag en cell vill jag att den kolumnen blir färgad,
helst bara så mycket som är ifyllt,
går inte det så går det bra med hela kolumnen.

Om det går vill jag ha funktionen att bara föra över musmarkören utan att klicka i cellen.
 

Nytt inlägg
 2018-01-30 14:07
 

hej

detta görs med villkorsstyrd formatering.

1. markera det område du vill att det ska gälla.
2. gå till villkorstyrdformattering och välj "Ny Regel"
3. välj "markera endast celler som innehåller"
4. I rutan " formatera endast celler med " så väljer du "Inga tomma" och välj sedan Format och den bakgrundsfärg du önskar

och sedan OK

då gör den som du vill . så fort du fyller i ett värde eller text så fylls bakgrunden med den färg du valt.. radera du texten så förvinner färgen
Nytt inlägg
 2018-02-03 15:18
 

 Förklarade lite otydligt.

Jag vill att hela kolumnen skall bli grå när jag klickar i cellen oavsett om den är tom eller inte.

tar gärna emot ev kod för grå rad också.

Nytt inlägg
 2018-02-05 09:09
 

Hej

här får du två kodsnuttar att lägga in i ditt dokument.

gå ner till din bladflik och högerklicka och välj visa kod. kopiera in den VBA kod du vill ha och tryck sedan samtidigt på Alt+Q för att komma in i bladet.

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Cancel = True
Target.Interior.Color = vbRed

End Sub

Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
Cancel = True
Target.Interior.Color = vbYellow
End Sub


detta gör dock inte denna kod.

1. den markerar inte hela kolumnen
2. den gör den inte grå, då grå inte är en standardfärg men det går nog ändå att lösa.
3. VBA excel har inte LeftClick med utan du får nöja dig med antingen att högerklicka eller dubbelklicka för att få din färg.

du kan välja andra färger än de som står i koden.

nu har du ialla fall något att börja med


Lasse
Nytt inlägg
 2018-02-05 11:54
 

Jag skulle spontant säga nej. Vill du köra Lasses variant måste du hålla reda på föregående markeringar i någons beständig slskvariabel och resna bort den färgmarkeringen också. Inte värt besväret och de potetiella felen (händelsehantering i VBA/excel är att be om problem).

 

Public rSlask As Range

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

    If Not rSlask Is Nothing Then rSlask.Interior.Color = xlNone

    Target.EntireColumn.Interior.Color = vbRed

    Set rSlask = Target.EntireColumn

End Sub

 

Å andra sidan. När du markerar en cell (inte hovrar) så ändrar ju excel färgen på både Kolumn- och Radrubriken. Se det finns ju ett frö till det du vill ha. OM det går att göra så ligger det förmodligen i något färgschema eller liknande. Ingenting jag känner till

Nytt inlägg
 2018-02-05 14:03
 

 

Anonymous din kod fungerar på kolumn, men prio ett är kod för markering av rad,
vad ska jag ändra i koden för att få rad i stället ?
Nytt inlägg
 2018-02-05 14:06
 
 Ändrad av Peter  på 2018-02-05 23:45:25

 OJ. Jag har färgade celler från början i bladet, när jag sedan använder denna funktion med att markera rad så fungerar det bra,
men sedan när jag klickar för att markera en ny rad så försvinner mina färgade celler jag hade från början.
Går detta att undvika ?.

Nytt inlägg
 2018-02-07 13:06
 

 Tror inte det. I teorin kan du köra kopiera och klistra in special-format'

Men då måste du få excel att minnas utklippet och där lägger jag ner...

Kör en linje istället? Eller något annat du inte använder. Eller lägg ner idén....

 

Public rSlask As Range

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

   If (Not (rSlask Is Nothing)) Then

        rSlask.EntireRow.Borders(xlEdgeBottom).LineStyle = xlNone

   End If

    

    Target.EntireRow.Borders(xlEdgeBottom).Color = RGB(255, 0, 0)

    Set rSlask = Target.EntireRow

End Sub

Nytt inlägg
 2018-02-07 14:03
 

Läste igenom igen och när jag såg Lasses frösta post Kom jag ihåg något jag sett en gång. har tyvärr ingen länk

1. Låt VBA-koden skapa/uppdatera ett namngivet område som bara returnerar och uppdaterar aktuellt radnummer: 

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
ActiveWorkbook.Names.Add Name:="Radnummer", RefersToR1C1:="=CELL(""Rad"")"
End Sub

Du skulle kunna köra så här också:

 

 

Hursomhelst. Sen sköter du färgandet med hjälp av villkorsstyrd formatering. Då behöver du inte återställa cellformat osv.

Markera hela bladet (ställ dig i cell A1 och tryck Ctrl +A)

Start -> vilkorrstyrd formatering -> Ny regel -> bestämma ... formel ->

=OCH(RAD(A1)=Radnummer;A1<>"")

Knappen Format och ange Fyllning

Du kan Naturligtvis variera formeln. Den här tar även celler som inte är ifyllda:

=RAD(A1)=Radnummer

Nytt inlägg
 2018-02-07 14:16
 

Går attt göra ännu enklare:

https://stackoverflow.com/questions/22349424/hightlight-active-row-column-in-excel-without-using-vba

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Range("A1").Calculate
End Sub

Och villkorsstyrd formatering (Kolumn och Rad även o-ifyllda)

 =ELLER(RAD()=CELL("Rad");KOLUMN()=CELL("Kol"))

 

Föregående Föregående
 
Nästa Nästa
ForumForumDiskussionerDiskussionerExcelExcelFärgat vid markeringFärgat vid markering

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