webForumDet fria alternativet

Macro/VB för att färga celler vid klick (Excel)

Kontorsprogram

3 svar · 723 visningar · startad av Koplik

Medlem sedan juli 20011 129 inlägg
Frågan#1

Hej hej.

Jag sitter på jobbet i vanlig ordning och får en idé som jag senare märker att jag har problem att utföra.

Det är nämligen så att jag vill göra en funktion i excel där man clickar på en cell så färgsätts den med en förutbestämd för

Jag provade att spela in ett macro för att få reda på lite syntax i Excels VB, men fortfarande så är den svåra delen att få funktionen att initieras vid click på valfri cell, eller iaf de celler inom en viss range (Alla celler utom rubrikerna)

Så här ser koden ut som jag fick när jag markerade en cell och satte en färg.

  Range("B2").Select
  With Selection.Interior
    .ColorIndex = 6
    .Pattern = xlSolid
  End With

Det jag vill ha får jag förklara i Javascript som jag kan, alltså ett påhittat exempel, men kanske kan sprida lite ljus i frågan.

<Body OnClick="colorize([b]element[/b]);">

<Script Language="Javascript">
function colorize(element)
{
  if(element.backgroundColor='#ffffff')
    element.backgroundColor='#ffffcc';
  else
    element.backgroundColor='#ffffff';
}
</Script>

element motsvarar då alltså cellen jag klickar på.
Och jag vill ha en liknande "Body Onclick" aktivering i arbetsbladet jag jobbar i.

Någon som förstår vad jag menar och möjligtvis har en lösning?
Om ni inte riktigt förstår, säg då till så försöker jag förklara lite mer vad jag är ute efter.

Tacksam för svar
/Koplik

Medlem sedan nov. 20033 inlägg
#2

Den här koden skall läggas in i "This Workbook" och ger gul färg när du dubbelklickar i en cell:


Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As _
Object, ByVal Target As Range, Cancel As Boolean)
With Selection.Interior
    .ColorIndex = 6
    .Pattern = xlSolid
  End With
End Sub
Medlem sedan juli 20011 129 inlägg
#3

Tack tack, fungerade fint.
Antar att det inte går att köra en enkelklick för att aktivera färgändringen, sökte på google, men fanns bara rightclick och double.

Tack så hemskt mycket! :)

Medlem sedan aug. 2003118 inlägg
#4

Följande kod för att få färg vid enkelklick...

Skriv följande för att få vid "Klick" istället..

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
With Selection.Interior
.ColorIndex = 44
.Pattern = xlSolid
End With
End Sub

Mvh

249 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
115 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
117 ms — ändringar (db)